Centos7安装vsftpd (FTP服务器)

Centos7安装vsftpd (FTP服务器)

 
TyiMan 
2016.02.06 21:19* 字数 238 阅读 10400评论 2

一、通过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()[0]
    local_file = remote_file
    buffsize = 1024
    fp = open(local_file, 'wb')
    f.retrbinary('RETR %s' % remote_file, fp.write, buffsize)
    fp.close()
    print 'complete!'


if __name__ == '__main__':
    ftp_test()

 

 
 
 

常见问题

posted @ 2019-01-15 10:45  吃饭睡觉打逗逗  阅读(218)  评论(0编辑  收藏  举报