vsftpd

匿名用户

anonymous_enable=YESanon_umask=022anon_upload_enable=YESanon_mkdir_write_enable=YESanon_other_write_enable=YESanon_root=/var/ftpanon_max_rate=0

本地用户

local_enable=YESlocal_umask=022local_root=/var/ftpchroot_local_user=YES #开启用户家目录限制chroot_list_enable=YES # 开启白名单chroot_list_file=/etc/vsftpd/chroot_list #允许chroot_list里面的用户可以切换目录local_max_rate=0userlist_enable=YES &userlist_deny=YES#禁止/etc/vsftpd/user_list里面的用户登录ftpuserlist_enable=YES &userlist_deny=NO#仅允许/etc/vsftpd/user_list里面的用户登录ftp#配置文件ftpusers禁止/etc/vsftpd/ftpusers里面的用户登录ftp且权限比user_list还要高,即时生效#被动模式pasv_enable=YESpasv_min_port=30000pasv_max_port=35000

虚拟用户

需要生成数据库文件而且要拿一个本地用户来映射虚拟用户,做虚拟用户配置文件设置时,必须将主配置文件中的  自定义的匿名用户相关设置  注释掉,给映射用户的家目录设置o r让虚拟用户有读权限

vim vsftpd.user #奇数行:用户,偶数行:密码db_load -T -t hash -f vsftpd.user vsftpd.db #对文件加密#修改权限 chmod 600 vsftpd.db#创建虚拟用户的映射用户,并指定其家目录useradd -d /var/ftproot -s /sbin/nologin  virtual#建立PAM文件,添加虚拟用户支持cp -a /etc/pam.d/vsftpd /etc/pam.d/vsftpd.pamcat /etc/pam.d/vsftpd.pamauth    required        pam_userdb.so db=/etc/vsftpd/vsftpdaccount required        pam_userdb.so db=/etc/vsftpd/vsftpd#修改vsftpd.conf 添加支持配置#pam_service_name=vsftpdpam_service_name=vsftpd.pamguest_enable=YESguest_username=virtualuser_config_dir=/etc/vsftpd/dir#做虚拟用独立户配置文件设置时,必须将主配置文件中的  自定义的匿名用户相关设置  注释掉anon_upload_enable=YES  #允许上传文件anon_mkdir_write_enable=YES  #允许创建目录anon_other_write_enable=YES  #允许修改文件#给映射用户的家目录设置o r让虚拟用户有读权限500 OOPS: vsftpd: refusing to run with writable root inside chroot()Login failed.chmod a-w /var/ftproot 或者配置文件(主配置文件或者虚拟用户配置文件都可以)添加allow_writeable_chroot=YES

安全

抓包tcpdump -i ens32 -nn -X -vv tcp port 21 and ip host 源ip-i  #interface-n  #对地址以数字方式显示,否则显示主机名-nn  #除了-n作用外,将端口显示为数值,否则显示市口服务名-X  #输出包的头部数据,以16进制和ascii两种方式同时输出-vv  #显示更详细的输出

openssl

rpm -q openssl查看vsftpd是否支持opensslldd /usr/sbin/vsftpd | grep libssl生成加密信息的秘钥和证书文件位置:/etc/ssl/certs/openssl genrsa -out vsftpd.key 1024openssl req -new -key vsftpd.key -out vsftpd.csropenssl x509 -req -days 365 -sha256 -in vsftpd.csr -signkey vsftpd.key -out vsftpd.crt生成秘钥和证书文件后,将本目录(/etc/ssl/certs/)的权限修改为500chmod 500 /etc/ssl/certs/

修改主配置文件

#启用sslssl_enable=YES#开启TLSV1 SSLV2 SSLV3支持ssl_tlsv1=YESssl_sslv2=YESssl_sslv3=YES#允许匿名用户[虚拟用户]allow_anon_ssl=YES#匿名用户登录和传输时强制使用sslforce_anon_logins_ssl=YESforce_anon_data_ssl=YES#本地登录和传输时强制使用sslforce_local_logins_ssl=YESforce_local_data_ssl=YESrsa_cert_file=/etc/ssl/certs/vsftpd.crtrsa_private_key_file=/etc/ssl/certs/vsftpd.key配置完之后重启服务

使用客户端连接的时候选择 TLS/SSL显示加密可以看到证书信息

配置过程中的报错:

使用匿名用户登录:500 Illegal PORT command.425 Use PORT or PASV first.改成passive227 Entering Passive Mode (10,2,15,13,210,168).150 Here comes the directory listing.226 Transfer done (but failed to open directory).还是显示不出来解决:匿名用户的配置里面添加anon_world_readable_only=NOanon_world_readable_only(文件有三种权限,文件所有人,文件所有组,文件的其他人,anon_world_readable_only的意思是,当他为YES时候,文件的其他人必须有读的权限才允许下载,单单文件所有人为ftp且有读权限是无法下载的,必须其他人也有读权限,才允许下载;若为NO则只要ftp用户对文件有读权限即可下载————————————————版权声明:本文为CSDN博主「ting--」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/wzt888_/article/details/100763045)

来源:https://www.icode9.com/content-4-792101.html

(0)

相关推荐

  • FTP配置文件vsftpd.conf

    第一步:安装Contos7系统 第二步:检查是否安装FTP 命令的方法: [root@umboyserver vsftpd]# ps -aux | grep ftpd [root@umboyserve ...

  • vsftpd安装与配置

    简介 vsftpd(very secure FTP daemon)是 UNIX 操作系统中的一个开源的.免费的 FTP 服务软件.它具有以下特点: 安全性高,轻小易用 支持系统用户.匿名用户和虚拟用户 ...

  • linux下vsftpd的安装及配置使用详细步骤

    安装 yum install vsftpd 新建/home/uftp目录作为用户主目录 mkdir /home/uftp 新建用户uftp: useradd -d /home/uftp -s /bin ...

  • RHEL5中配置vsftpd搭建FTP服务器

    下载地址:http://vsftp.beasts.org 源代码最新版本:vsftpd-2.0.5.tar.gz #rpm –ivh vsftpd-2.0.5-10.el5.i386.rpm  安装r ...