Linux學習-CentOS下vsftpd的安裝和配置,-centosvsftpd
壞境: CentOS 7.0
閑話不多少了,直接切入正題吧。
第一步:安裝vsftpd,在終端運行
yum -y install vsftpd
測試是否安裝成功
service vsftpd start
如果提示:
Starting vsftpd for vsftpd: [ok]
表示成功。
第二步:編輯vsftpd的設定檔
vi /etc/vsftpd/vsftpd.conf
清空檔案, 然後添加如下內容:
listen=YES background=YES anonymous_enable=NO local_enable=YES write_enable=YES local_umask=022 anon_upload_enable=NO anon_mkdir_write_enable=NO dirmessage_enable=YES xferlog_enable=YES connect_from_port_20=YES chown_uploads=NO xferlog_file=/var/log/vsftpd.log xferlog_std_format=YES async_abor_enable=YES ascii_upload_enable=YES ascii_download_enable=YES ftpd_banner=Welcome to hao32 FTP servers pam_service_name=vsftpd chroot_local_user=NO chroot_list_enable=YES chroot_list_file=/etc/vsftpd/vsftpd.chroot_list
第三步:終端運行下面命令
touch /etc/vsftpd/vsftpd.chroot_list service vsftpd start
如果出現下面這句話:
Starting vsftpd for vsftpd: [ OK ]
則表示成功,如果不行則用這個語句:
/etc/rc.d/init.d/xinetd restart
第四步:添加ftp使用者
ftp預設我們使用系統使用者, 現在我們來添加使用者csuldw, 指向目錄/home/csuldw
, 許可權是nologin
, 就是沒給shell許可權, 不影響ftp的。
useradd csuldw -d /home/csuldw -s /sbin/nologin
如果顯示:
useradd: warning: the home directory already exists.
Not copying any file from skel directory into it.
不用理會, 只是告訴你, 你指向的目錄已經存在, 這不影響
設定目錄及其檔案的屬組, 你也可以使用別的分組方式,如下:
chown -R csuldw.csuldw /home/csuldw
設定一下使用者csuldw的密碼, 自己設定就可以了,命令如下:
passwd csuldw
把使用者csuldw加到/etc/vsftpd/vsftpd.chroot_list
裡, 這樣使用者就可以正常登陸並且不能跳出自己的目錄
echo 'csuldw' >> /etc/vsftpd/vsftpd.chroot_list service vsftpd restart
第五步:測試
配置完畢! 測試登陸吧
ftp主機: 伺服器IP地址 如輸入:ftp 192.168.0.1
ftp使用者: csuldw
ftp密碼: 你自己剛才設定的
注意:進行FTP操作時,最好把防火牆給關閉了
service iptables stop
預設情況下,是不允許root賬戶上傳的。
實現root 許可權上傳:
vi /etc/vsftpd/user_list #root注釋掉vi /etc/vsftpd/ftpusers #root注釋掉
用戶端軟體上傳時報錯:
553 Could not create file.
原因:無許可權寫導致。
解決:
chmod 777 /var/ftp/pub