• vsftp搭建文档


    vsftpd端口的作用:
    控制连接:tcp21端口用于发送FTP命令
    数据连接:tcp20端口用于上传下载数据


    传输模式:分为主动模式和被动模式
    主动模式是当需要传输数据时,客户端以PORT命令告知服务器,我打开了某个端口,你过来连我呀!服务器会从20端口向客户端的该端口发送请求并建立数据连接,
    被动模式是当需要传输数据时,服务端以PASV命令告知客户端,我打开了某个端口(非20端口),你过来连我呀!于是客户端向服务器的该端口发送请求并建立数据连接,

    用户类型:匿名用户,虚拟用户,本地用户,


    vsftpd默认有两个用户黑名单:在安装目录,分别为:ftpusers user_list,ftpusers用户黑名单优先级大于user_list,可将将user_list黑名单改为白名单,修改配置文件:
    userlist_enable=YES
    userlist_deny=NO #手动添加
    从新加载服务器就可以了,


    匿名用户搭建:
    服务端
    准备匿名用户访问FTP的目录:
    默认是在/var/ftp/pub
    修改pub目录权限,将属主改为ftp
    chown -R ftp pub
    安装vsftp:
    yum -y install vsftpd
    vim /etc/vsftpd/vsftpd.conf
    anonymous_enable=YES
    local_enable=YES
    write_enable=YES
    local_umask=022
    anon_upload_enable=YES #开起匿名用户上传权限
    anon_umask=022 #手动添加匿名用户权限掩码
    anon_mkdir_write_enable=YES #开起匿名用户创建目录的权限
    anon_other_write_enable=YES #手动添加其他用户创建目录的权限
    xferlog_enable=YES
    xferlog_std_format=YES
    xferlog_file=/var/log/xferlog #手动添加日志的输出路径
    启动vsftp
    /etc/init.d/vsftpd start


    客户端:安装一个ftp命令
    yum -y install ftp
    ftp 192.168.1.1 #这就可以测试了,登录的时候用ftp登录,密码随便
    以上匿名用户搭建全部结束


    本地用户搭建
    先在本地创建两个用户用于测试用
    修改默认的配置文件,修改两个地方即可;
    vim /etc/vsftpd/vsftpd.conf
    local_umask=077 #将本地用户的目录权限掩码改为077
    chroot_local_user=YES #开起本地用户的目录权限
    从新加载服务器就可以了
    /etc/init.d/vsftpd reload


    客户端测试登录时输入用户名密码即可


    搭建虚拟用户验证FTP服务
    1、先创建一个虚拟用户账号密码的列表文件
    [root@centos101 vsftpd]# cat vusers.list
    zhangsan
    123
    list
    123
    wangwu
    123
    使用db_load工具生成数据库文件
    [root@centos101 vsftpd]# db_load -T -t hash -f vusers.list vusers.db
    [root@centos101 vsftpd]# ls
    ftpusers user_list vsftpd.conf vsftpd.conf.bak vsftpd_conf_migrate.sh vusers.db vusers.list
    db_load命令注释:-T 允许非Berkeley的程序使用数据库, -t 指定算法, -f 指定源文件, 注意:生成的数据库文件必须以db结尾。
    [root@centos101 vsftpd]# chmod 600 vusers*
    -rw------- 1 root root 12288 5月 11 11:48 vusers.db
    -rw------- 1 root root 33 5月 11 11:46 vusers.list #为了安全,修改有关用户文件的权限


    2、添加虚拟映射账户,并修改其权限
    [root@centos101 vsftpd]# useradd -d /var/ftproot/ -s /sbin/nologin virtual
    [root@centos101 var]# chmod 755 ftproot/
    drwxr-xr-x 4 virtual virtual 4096 5月 11 11:53 ftproot/


    3、增加pam认证
    [root@centos101 vsftpd]# cat /etc/pam.d/vsftpd.new #这个文件手动创建
    auth required pam_userdb.so db=/etc/vsftpd/vusers
    account required pam_userdb.so db=/etc/vsftpd/vusers #这里可以不写文件名后缀


    4、修改配置文件
    [root@centos101 vsftpd]# vim vsftpd.conf
    anon_umask=022 #手动添加
    pam_service_name=vsftpd.new #这里改为pam认证自己创建的那个文件名
    guest_enable=YES #手动添加
    guest_username=virtual #手动添加,这个是创建的账户


    客户端测试就可以了


    为每个用户创建不同的根目录,不同权限管理
    先创建一个统一管理用户权限文件的目录
    [root@centos101 vsftpd]# mkdir vusers.dir
    [root@centos101 vusers.dir]# touch zhangsan lisi wangwu
    lisi wangwu zhangsan
    [root@centos101 vusers.dir]# cat zhangsan #内容全部手写
    anon_upload_enable=YES #开起匿名用户上传权限
    anon_mkdir_write_enable=YES #开起匿名用户创建目录的权限
    anon_other_write_enable=YES #开起其他用户创建目录的权限
    anon_max_rate=5 #传输速率为每秒5字节,0为不限制传输速率
    local_root=/var/zhangsan #根 目录
    [root@centos101 vusers.dir]# cat lisi
    anon_upload_enable=YES
    anon_max_rate=0
    local_root=/var/lisi
    wangwu的权限不做设置,为默认权限,仅可以下载,不可以上传
    然后修改配置文件,在最后加入一行;
    [root@centos101 vsftpd]# vim vsftpd.conf
    [root@centos101 vsftpd]# tail -1 vsftpd.conf
    user_config_dir=/etc/vsftpd/vusers.dir/
    重新加载服务

  • 相关阅读:
    pandas
    CTC Loss原理
    CTC 的工作原理
    Demystifying JavaScript Closures, Callbacks and IIFEs
    Css compatibility
    Flexbox——快速布局神器
    centos wordpress
    Encog
    D3js
    Lucene学习
  • 原文地址:https://www.cnblogs.com/haoge92/p/9024807.html
Copyright © 2020-2023  润新知