Centos7安装vsftpd (FTP服务器)

时间:2023-03-08 16:42:06

Centos7安装vsftpd (FTP服务器)

Centos7安装vsftpd (FTP服务器)
TyiMan 关注
2016.02.06 21:19* 字数 238 阅读 10400评论 2喜欢 12

一、通过yum安装vsftpd

yum install -y vsftpd

二、修改vsftpd的配置文件

vi /etc/vsftpd/vsftpd.conf

修改配置文件如下:
1.不允许匿名访问

anonymous_enable=NO

2.允许使用本地帐户进行FTP用户登录验证

local_enable=YES

3.使用户不能离开主目录

当chroot_list_enable=YES,chroot_local_user=YES时,在/etc/vsftpd.chroot_list文件中列出的用户,可以切换到其他目录;未在文件中列出的用户,不能切换到其他目录。

chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list

配置文件最后添加(centos6.5忽略)

allow_writeable_chroot=YES

要不然会报错

500 OOPS: vsftpd: refusing to run with writable root inside chroot()

如果/etc/vsftpd/chroot_list不存在,则需要创建该文件

vi /etc/vsftpd/chroot_list

:wq直接保存并退出就行。

4.设定支持ASCII模式的上传和下载功能(此项忽略)

ascii_upload_enable=YES
ascii_download_enable=YES

最后 :wq保存修改,重启vsftpd

systemctl restart vsftpd       ​        centos7+执行这个
service vsftpd restart centos6+执行这个

三、新建FTP用户

useradd -d /var/ftp/public_root -g ftp -s /sbin/nologin ftpuser
修改该FTP用户密码(统一设成******) passwd ftpuser

FTP访问测试

def ftp_test():
host = 'quanfa.wang'
username = '*****'
password = '*****'
f = ftplib.FTP(host)
f.set_pasv(False)
f.login(username, password)
remote_file = f.nlst()[]
local_file = remote_file
buffsize =
fp = open(local_file, 'wb')
f.retrbinary('RETR %s' % remote_file, fp.write, buffsize)
fp.close()
print 'complete!' if __name__ == '__main__':
ftp_test()

常见问题