2010年1月28日 星期四

Linux安裝vsftpd (CentOS 5.4)

檢查vsftpd套件是否有安裝
[root@mail html]# rpm -qa | grep vsftpd
vsftpd-2.0.5-12.el5_3.1
沒有的話就安裝
[root@mail html]# yum –y install vsftpd
設定vsftpd.conf
[root@linux ~]# vi /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
# 將匿名登入取消
local_enable=YES
# 與實體用戶相關的資訊
write_enable=YES
local_umask=002

# 可寫入,且新增目錄、檔案權限為 775,因為 umask 為 002!
userlist_enable=YES
userlist_deny=YES
userlist_file=/etc/vsftpd.user_list
# 設定抵擋某些使用者登入的項目設定值!

dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
pam_service_name=vsftpd
listen=YES
tcp_wrappers=YES
# 與主機有關的設定
chroot_list_enable=YES
chroot_local_user=YES
chroot_list_file=/etc/vsftpd/chroot_list
# 未來所有新增的用戶都是預設被 chroot 的,除非該user被寫入 /etc/vsftpd.chroot_list 才能夠不會被 chroot

use_localtime=YES
max_clients=20
max_per_ip=2
local_root=/home/ftp
#預設ftp路徑
# 在檔案最尾端加上設定
建立一個chroot_list的檔案
[root@ns1 /]# echo username >> /etc/vsftpd/chroot_list
※沒有這個檔案就會出現錯誤訊息
以下範例建立kelly和marcus使用者,kelly只能進到自己的資料夾新增修改刪除,marcus可以進到自己的資料夾新增修改刪除,還可以進到kelly資料夾,擁有讀取的權限,不允許匿名使用者登入。
建立kelly和marcus使用者
[root@ns1 /home]# useradd kelly
[root@ns1 /home]# useradd marcus
設定密碼
[root@ns1 /home]# passwd kelly
[root@ns1 /home]# passwd marcus
建立群組
[root@ns1 /home]# groupadd ftpuser
將使用者加入、移出群組
[someone@www ~]$ gpasswd [-ad] user groupname
選項與參數:
-a :將某位使用者加入到 groupname 這個群組當中!
-d :將某位使用者移除出 groupname 這個群組當中。
將macus使用者加入ftpuser群組
[root@ns1 /home]# gpasswd –a marcus ftpuser
看所有user的群組
[root@ns1 /home]# vi /etc/group
讓使用者帳號只能做ftp登入,在 /etc/passwd 中,將使用者的 /bin/bash 改成 /sbin/nologin 即可!
marcus:x:500:501::/home/marcus:/sbin/nologin
kelly:x:501:501::/home/ftpuser:/sbin/nologin
在home底下建立一個755的ftp資料夾
[root@linuxftp /]# mkdir -m 755 /home/ftp
建立兩個使用者資料夾
[root@linuxftp /]# mkdir -m 750 /home/ftp/kelly
[root@linuxftp /]# mkdir -m 700 /home/ftp/marcus
修改資料夾權限
[root@linuxftp /]# chown marcus:root /home/ftp/marcus
[root@linuxftp /]# chown kelly:ftpuser /home/ftp/kelly
啟動vsftpd
[root@ns1 /]# /etc/init.d/vsftpd start
設定開機啟動vsftpd
[root@ns1 /]# chkconfig vsftpd on

沒有留言:

張貼留言