• ftp服务器三种模式


    一、匿名开放模式(最不安全)

    1、[root@localhost ~]# vim  /etc/vsftpd/vsftpd.conf  (主配置)

    anonymous_enable=YES    //允许匿名访问模式
    anon_umask=022                //匿名用户上传文件的的umask值
    anon_upload_enable=YES      //允许匿名用户上传文件
    anon_mkdir_write_enable=YES   //允许匿名用户创建目录
    anon_other_write_enable=YES     //允许匿名用户修改目录名称或删除目录
    local_enable=YES
    write_enable=YES
    local_umask=022
    dirmessage_enable=YES
    xferlog_enable=YES
    connect_from_port_20=YES
    xferlog_std_format=YES
    listen=NO
    listen_ipv6=YES
    pam_service_name=vsftpd
    userlist_enable=YES
    tcp_wrappers=YES
    2、[root@localhost ~]# systemctl restart vsftpd
    3、[root@localhost ~]# systemctl enable vsftpd
    4、[root@localhost ~]# yum install -y ftp  (命令行管理工具)
    注:该模式默认用户为anonymous,密码为空,默认访问目录/var/ftp
    5、[root@localhost ~]# ftp 192.168.40.132
    Connected to 192.168.40.132 (192.168.40.132).
    220 (vsFTPd 3.0.2)
    Name (192.168.40.132:root): anonymous
    331 Please specify the password.
    Password:
    230 Login successful.
    Remote system type is UNIX.
    Using binary mode to transfer files.
    ftp> cd pub
    250 Directory successfully changed.
    ftp> mkdir zjz1  (创建新文件夹)
    257 "/pub/zjz1" created
    ftp> rename zjz1  zjz2  (改名)
    350 Ready for RNTO.
    250 Rename successful.
    ftp> rmdir zjz2  (删除)
    250 Remove directory operation successful.
    ftp> exit  (退出)
    221 Goodbye.
    注:第一次做时权限不够。解决:1、[root@localhost ~]# chown -Rf ftp /var/ftp/pub 

    2、[root@localhost ~]# getsebool -a | grep ftp ;[root@localhost ~]# setsebool -p  ftpd_full_access=on (或直接关闭selinux)
    3、关闭防火墙

    二、本地用户模式

    1、[root@localhost ~]# vim /etc/vsftpd/vsftpd.conf
    anonymous_enable=NO  //禁止匿名访问
    local_enable=YES   //允许本地用户模式
    write_enable=YES   //设置可写权限
    local_umask=022   // //本地用户创建文件的的umask值
    userlist_enable=YES   //启用“禁止用户名单”,名单文件为ftpusers 和 user_list

    userlist_deny=YES  //开启用户作用名单文件功能
    dirmessage_enable=YES
    xferlog_enable=YES
    connect_from_port_20=YES
    xferlog_std_format=YES
    listen=NO
    listen_ipv6=YES
    pam_service_name=vsftpd
    userlist_enable=YES
    tcp_wrappers=YES
    2、[root@localhost ~]# systemctl restart vsftpd         

    3、[root@localhost ~]# systemctl enable vsftpd

    4、[root@localhost ~]# ftp 192.168.40.132
    Connected to 192.168.40.132 (192.168.40.132).
    220 (vsFTPd 3.0.2)
    Name (192.168.40.132:root): root  (被拒绝)
    530 Permission denied.
    Login failed.
    ftp>

    5、[root@localhost ~]# cd /etc/vsftpd/
    [root@localhost vsftpd]# ls
    ftpusers  user_list  vsftpd.conf  vsftpd_conf_migrate.sh 
    注:上面两个文件夹就是禁止名单,root被禁止对系统更安全

    6、[root@localhost ~]# ftp 192.168.40.132
    Connected to 192.168.40.132 (192.168.40.132).
    220 (vsFTPd 3.0.2)
    Name (192.168.40.132:root): cui  (本地用户)    
    331 Please specify the password.
    Password:  (要密码)
    230 Login successful.
    Remote system type is UNIX.
    Using binary mode to transfer files.
    ftp>

    其余同匿名模式

    三、虚拟用户模式(最安全)

    1、[root@localhost ~]# cd /etc/vsftpd/
    [root@localhost vsftpd]# ls
    ftpusers  user_list  vsftpd.conf  vsftpd_conf_migrate.sh 
    [root@localhost vsftpd]# vim vuser.list  (创建用户数据库文件)
    zhagnsan
    123456 (密码)
    lisi
    123##  (密码)
    2、[root@localhost vsftpd]# db_load -T -t hash -f vuser.list vuser.db  (哈希加密)
    3、[root@localhost vsftpd]# file vuser.db
    vuser.db: Berkeley DB (Hash, version 9, native byte-order)
    4、[root@localhost vsftpd]# chmod 600 vuser.db
    5、[root@localhost vsftpd]# rm   -rf   vuser.list

    6、[root@localhost ~]# useradd -d /var/ftproot -s /sbin/nologin  virtual  (创建本地用户,指定家目录,禁止本地用户登录,这个账户映射到虚拟用户)

     7、[root@localhost ~]# ls -ld  /var/ftproot/
    drwx------ 2 virtual virtual 62 Sep 15 08:17 /var/ftproot/
    8、[root@localhost ~]# chmod -Rf 755  /var/ftproot/
    9、[root@localhost ~]# vim /etc/pam.d/vsftpd.vu   (PAM一组安全机制模块)
    auth required pam_userdb.so  db=/etc/vsftpd/vuser
    account required pam_userdb.so  db=/etc/vsftpd/vuser
    10、[root@localhost ~]# vim /etc/vsftpd/vsftpd.conf
    anonymous_enable=NO
    local_enable=YES
    guest_enable=YES     //开启虚拟用户模式
    guest_username=virtual   //指定虚拟用户账户
    allow_writeable_chroot=YES  //允许被禁锢的ftp根目录执行写入操作,而且不拒绝用户的登录请求
    write_enable=YES
    local_umask=022
    dirmessage_enable=YES
    xferlog_enable=YES
    connect_from_port_20=YES
    xferlog_std_format=YES
    listen=NO
    listen_ipv6=YES
    pam_service_name=vsftpd.vu  //指定pam文件
    userlist_enable=YES
    tcp_wrappers=YES
    11、[root@localhost ~]# mkdir /etc/vsftpd/vusers_dir/
    [root@localhost ~]# cd /etc/vsftpd/vusers_dir/
    [root@localhost vusers_dir]# touch lisi
    [root@localhost vusers_dir]# vim zhangsan
    anon_upload_enable=YES
    anon_mkdir_write_enable=YES
    anon_other_write_enable=YES

    12、[root@localhost ~]# vim /etc/vsftpd/vsftpd.conf

    anonymous_enable=NO
    .....同上
    user_config_dir=/etc/vsftpd/vusers_dir
    13、[root@localhost ~]# systemctl restart vsftpd
           [root@localhost ~]# systemctl enable vsftpd

    注:粘贴复制时候会有空格,注意删除空格





            


  • 相关阅读:
    配置eclipse链接hadoop
    hdfs命令总结
    hadoop环境搭建之分布式的建立6
    win10任务视图的时间线历史记录无法删除
    Flask——server.py引入其他python文件
    《架构即未来》阅读笔记3
    msi文件无文件关联,右键打开方式找不到Windows® 安装程序
    bat文件无文件关联,双击无法启动,但可拖进dos窗口运行
    软件无法安装,每次打开安装包都是显示释放安装文件,然后就无反应了
    开始菜单右键打不开,win+x键无反应
  • 原文地址:https://www.cnblogs.com/zjz20/p/11523941.html
Copyright © 2020-2023  润新知