首页 > 其他 > 详细

30 FTP

时间:2018-04-09 22:54:57      阅读:292      评论:0      收藏:0      [点我收藏+]
File Transfer Protocol,用于在Internet上控制文件的双向传输。
FTP的主要作用就是让用户连接一个远程计算机(这些计算机上运行着FTP服务器程序),并查看远程计算机中的文件,然后把文件从远程计算机复制到本地计算机,或把本地计算机的文件传送到远程计算机。

  1. 使用vsftpd搭建ftp
    yum install -y vsftpd
    useradd -s /sbin/nologin virftp //创建用户 -s指定shell
    vim /etc/vsftpd/vsftpd_login //(虚拟文件的密码)内容如下,奇数行为用户名,偶数行为密码,多个用户就写多行
    ftpuser1
    password1
    chmod 600 /etc/vsftpd/vsftpd_login 密码文件的权限只能给root
    db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db //将文本文件转换为二进制文件
    mkdir /etc/vsftpd/vsftpd_user_conf //创建用户配置文件目录
    cd /etc/vsftpd/vsftpd_user_conf
    vim ftpuser1 //(文件名与用户名一致)加入如下内容
    local_root=/home/virftp/ftpuser1 //定义虚拟用户的家目录
    anonymous_enable=NO
    write_enable=YES
    local_umask=022
    anon_upload_enable=NO 匿名用户是否可以上传文件
    anon_mkdir_write_enable=NO 匿名用户是否可创建目录可写
    idle_session_timeout=600 连接ftp后,超过多久不用断开
    data_connection_timeout=120 数据传输的超时时间
    max_clients=10 最大客户端数
    mkdir /home/virftp/ftpuser1
    touch /home/virftp/ftpuser1/slx.txt
    chown -R virftp:virftp /home/virftp
    vim /etc/pam.d/vsftpd //在最前面加上(文件为认证用,定义密码文件位置)
    auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
    account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
    vim /etc/vsftpd/vsftpd.conf
    将anonymous_enable=YES 改为 anonymous_enable=NO
    将#anon_upload_enable=YES 改为 anon_upload_enable=NO
    将#anon_mkdir_write_enable=YES 改为 anon_mkdir_write_enable=NO
    再增加如下内容
    chroot_local_user=YES
    guest_enable=YES
    guest_username=virftp 虚拟用户映射到virftp
    virtual_use_local_privs=YES 使用的是虚拟用户
    user_config_dir=/etc/vsftpd/vsftpd_user_conf
    allow_writeable_chroot=YES
    systemctl start vsftpd //启动vsftpd服务
    netstat -lntp
    tcp6 0 0 :::21 :::* LISTEN 1950/vsftpd

yum install -y lftp
lftp ftpuser1@127.0.0.1
执行命令ls,看是否正常输出
若不正常查看日志/var/log/messages和/var/log/secure
windows下安装filezilla客户端软件,进行测试

  1. 使用pure-ftpd搭建ftp
    yum install -y pure-ftpd
    vim /etc/pure-ftpd/pure-ftpd.conf//找到pureftpd.pdb这行,把行首的#删除
    systemctl stop vsftpd 端口只有一个,要先停vsftp才能用pure-ftp
    systemctl start pure-ftpd
    mkdir /data/ftp
    useradd -u 1010 pure-ftp
    chown -R pure-ftp:pure-ftp /data/ftp
    pure-pw useradd ftp_usera -u pure-ftp -d /data/ftp //-d指定用户家目录,接下来输入密码
    pure-pw mkdb 将密码设置为软件可识别
    此命令可以把所有用户列出来:pure-pw list/userdel/usermod/passwd

30 FTP

原文:http://blog.51cto.com/13582610/2096271

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!