تو این مطلب قصد دارم نحوه ایجاد سرور افتیپی روی CentOS
رو برای کاربران سرور استار توضیح بدم.
نصب VSftpd
روی سرور
برای راهاندازی ftp
نیاز داریم ابتدا باید VSftpd
رو نصب بکنیم
yum install vsftpd -y
|
برای اطمینان یک نسخه بکآپ از تنظیمات vsftpd
خود بردارید
cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.back
|
فایل تنظیمات vsftpd
رو باز کرده
nano /etc/vsftpd/vsftpd.conf
|
مطمئن بشید که متغییرهای زیر به همین صورت تنظیم شدند.
# Disable anonymous login
anonymous_enable=NO
# Enable local users
local_enable=YES
# Give FTP users permissions to write data
write_enable=YES
# Port 20 need to be turned off. It makes VSftpd run less privileged
connect_from_port_20=NO
# Chroot everyone
chroot_local_user=YES
# Set umask to 022, to make sure that all the files (644) and folders (755) you upload, get the proper permissions
local_umask=022
|
ایجاد کاربر جدید
کاربر جدیدی که میخوایم ایجاد کنیم، تنها برای دسترسی از طریق ftp
ساخته میشه و یه یک دایرکتوری خاص دسترسی داره، پس:
useradd -d '/ftp/username' -s /sbin/nologin serverstar
|
اگر میخواید از کاربری که قبلا ایجاد کردید استفاده کنید میتونید با دستور زیر دایرکتوری اصلی اون رو عوض کنید.
usermod -d '/ftp/username' olduser
|
پسورد مناسبی برای کاربر انتخاب کنید
passwd serverstar
|
مطمئن بشید که کاربری که ساختید به دایرکتوری مورد نطر شما اجازه دسترسی داره
chown -R ftpuser '/ftp/username'
chmod 775 '/ftp/username'
|
تنظیمات فایروال
برای اینکه پورت 21
برای ftp
آزاد بشه، باید iptables
رو ویرایش کنید
nano /etc/sysconfig/iptables
|
سطر زیر رو درون فایل قبل از سطر REJECT
اضافه کنید.
-A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
|
سرویس iptables
رو ریستارت کنید
service iptables restart
|
راهاندازی و تست ftp
در نهایت سرویس رو restart کنید
service vsftpd restart
|