linux下ftp服务搭建

1. 配置
/etc/passwd
/etc/group

/etc/vsftpd/vsftpd.conf #配置文件
/usr/sbin/vsftpd #主程序
/etc/vsftpd/ftpusers #黑名单,只要在此名单中即不能登录ftp服务器
/etc/vsfptd/user_list #控制用户登录
/var/ftp #匿名用户主目录

#配置锁定用户只能在家目录活动,两个选项同时启用才能生效
chroot_list_enable=YES
chroot_list_file=PATH #注意在PATH文件中添加要限制的用户名

#关于/etc/vsftpd目录下的user_list和ftpusers
    userlist_enable=NO  user_list不生效
    userlist_enable=YES userlist_deny=YES  文件user_list中用户不能登录
    userlist_enable=YES userlist_deny=NO  白名单

2. 命令
    #vim .netrc
    machine host1 login mislost password 123456
    #ftp host1
        -n 禁止自动登录,需手动输入用户名密码

        使用!执行本地shell

    ftp -s filename #执行filename中的命令

    ftp << EOF
    ...
    EOF

3. 错误信息
    2.. #成功
    3.. #权限问题
    4.. #文件问题
    5.. #服务器问题

4. 虚拟用户
    生成虚拟用户口令库文件
                #创建login.txt 写入login passwd
    配置生成VSFTPD的认证文件
                #db_load -T -t hash -f login.txt /etc/vsftpd/vsftpd_login.db
                #若无db_load 则yum install db4*
                #chmod 600 /etc/vsftpd/vsftpd_login.db
                #vim /etc/pam.d/vsftpd
                #注释所有内容 添加如下两行
                auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
                account required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
    建立虚拟用户的访问权限
                #useradd -d /home/ftp virtual
                #chmod 700 /home/ftp
    建立配置文件
                #vim /etc/vsftpd/vsftpd.conf
                local_enable=YES
                guest_enable=YES #启用虚拟用户
                guest_username=virtual #映射到本地virtual用户
    service vsftpd restart

5. 虚拟ftp服务
    创建虚拟ftp服务器根目录
        mkdir -p /var/newftp/newpub
        chmod 755 /var/newftp -R
    增加虚拟ftp服务器的匿名用户
        useradd -d /var/newftp -M newftp
    创建虚拟ftp服务器的配置文件
        cp /etc/vsftpd/vsftpd.conf /etc/vsfptd/vsftpd2.conf
        listen=YES
        listen_address=192.168.1.114 #绑定ip wtf?????
                    #ifconfig eth0:0 192.168.1.214 up
        ftp_username=newftp
    service vsftpd restart

你可能感兴趣的:(linux,FTP服务器)