linux 搭建ftp
一、安裝命令
yum -y install vsftpd
二、linux上創建ftp用戶
# useradd -s /sbin/nologin -G ftp -d /你的目錄 -M 用戶名
# passwd 用戶
-s /sbin/nologin 禁止用戶ssh登錄
-g 添加到哪個組
-G 可添加到多個組,組名之間使用逗號隔開
-d 指定用戶目錄
三、鎖定根目錄
1、修改vsftpd.conf
anonymous_enable=NO
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
userlist_enable=NO
2、創建/etc/vsftpd/chroot_list文件,並將用戶名添加到該文件中(每行一個用戶名)。
3、在/etc/vsftpd/user_list文件,將用戶名添加到該文件中,一行一個。
4、比如你的目錄是/data,則需要更改/data的用戶和用戶組,比如你的用戶名為ftpadmin
chown -R ftpadmin:ftp /data
5、重啟ftp服務
service vsftpd restart
三、配置文件中的解釋
1、anonymous_enable=YES 開啟匿名用戶登錄
2、local_enable=YES 開啟本地用戶登錄
3、write_enable=YES 開啟寫權限以便上傳
4、local_umask=022設置上傳後文件為user=rwx, group=, other=
這樣,用戶上傳文件後,是不能刪除和修改了。因為用戶屬於group組。
解決方法是,設置local_umask=002。
最終文件權限是777-文件夾掩碼-local_umask掩碼
5、anon_upload_enable=YES 開啟匿名用戶上傳權限
統一匿名上傳用戶上傳的文件的屬性
6、chown_uploads=YES
chown_username=ftp
設定chroot配置,禁止特定用戶訪問上一級目錄
7、chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
userlist_enable=YES 這個選項如果是YES,那/etc/vsftpd/user_list中的用戶將被禁止訪問ftp。如果是NO,則只有user_list裏面的用戶才能訪問ftp
linux 搭建ftp