Linux中搭建想要的vsftp服务怎么操作,步骤是什么
Admin 2022-06-02 群英技术资讯 520 次浏览
指定端口等
listen_port=21 设置监听的端口
download_enable=YES 允许下载文件
max_clients=100 限制并发客户端连接数
max_per_ip=100 限制统一ip的并发链接数
禁止匿名、实体用户登陆
首先把匿名用户登陆给关了,不给匿名用户浏览权限。
anonymous_enable=NO
那么为什么不允许实体用户登陆呢?因为实体用户本就可以用更安全的sftp登陆,所以,就不用使用ftp协议登陆了。另外,因为ftp是明文传输协议,如果账号密码被截获了,那就不好了。
如何禁止实体用户登陆呢?在文章下面配置虚拟用户的第三步骤会讲到,把/etc/pam.d/vsftpd下的所有内容都注释掉。
主动连接、被动连接设置
我们想要搭建既要支持主动连接模式也支持被动连接,那么设置如下:
主动连接模式的端口设置
connect_from_port_20=YES
设置防火墙,将21端口放行,另外不用开启20端口,直接对于主机主动向外请求的而响应的数据包允许进入本机(establish/related)。
iptables -A INPUT -p tcp --dport 21 -j ACCEPT # FTP服务 iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
开启被动模式,被动连接的端口限定为10001~11000中的任意一个。
pasv_enable=YES pasv_min_port=10001 pasv_max_port=11000
设置防火墙,允许10000~11000之间的端口开放。
iptables -A INPUT -p tcp --dport 10001::11000 -j ACCEPT # ftp被动连接端口
配置虚拟用户
配置虚拟用户的步骤如下:
建立虚拟用户口令文件
生成虚拟用户口令认证文件
编辑vsftpd的PAM认证文件
建立本地映射目录并设置宿主目录权限
修改配置文件。
给每一个虚拟用户弄一个单独的配置文件
1.建立虚拟用户的口令文件,该文件的格式为奇数行为用户名,偶数行为密码。下面建立一个这样的文件/etc/vsftpd/vusers,内容如下:
ftptest1 111111 ftptest2 222222
2.生成虚拟用户口令认证文件,执行如下命令:
db_load -T -t hash -f /etc/vsftpd/vusers /etc/vsftpd/login.db
当命令正确执行后,就会出现 /etc/vsftpd/login.db文件。为了安全起见,我们将该文件的权限设置为600.
chmod 600 login.db
3.编辑虚拟用户所需的PAM配置文件
vim /etc/pam.d/vsftpd
将之前的内容全部给注释掉,并新加入两行
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/login account required /lib64/security/pam_userdb.so db=/etc/vsftpd/login
注意,如果是32位的去掉lib后面64,另外login后面不用加入后缀的。这样操作之后,实体用户就不能登陆ftp服务了。
4.建立本地映射目录并设置宿主目录权限。
建立虚拟用户的宿主用户
# useradd -d /home/vsftp -s /sbin/nologin ftpuser
修改目录权限为755
# chmod 755 /home/vsftp/
5.修改配置文件。
把下面几行配置信息写入到/etc/vsftpd/vsftpd.conf配置文件中。
# 开启虚拟用户登陆功能 guest_enable=YES # 将虚拟用户与宿主用户对应 guest_username=ftpuser # pam认证文件(该配置默认存在) pam_service_name=vsftpd # vsftpd增强了安全检查,如果用户被限定在了其主目录下,则该用户的主目录不能再具有写权限了,所以要加入下面配置 allow_writeable_chroot=YES
6.给每一个虚拟用户建立单独的配置文件。
若想给每一个虚拟用户都建立单独的配置文件,则需要在主配置文件中加入
user_config_dir=/etc/vsftpd/config
指定虚拟用户的配置文件路径。接下来给两个虚拟用户建立各自的配置文件:
# ftptest1虚拟用户的配置文件 # 创建虚拟用户家目录 # mkdir /home/vsftp/ftptest1 # chown ftpuser:ftpuser /home/vsftp/ftptest1/ # 建立配置文件 # mkdir /etc/vsftpd/config # vim /etc/vsftpd/config/ftptest1 <=== 虚拟用户各自配置文件和自己的用户名对应起来 # 指定家目录 local_root=/home/vsftp/ftptest1 # 允许相关权限 download_enable=yes anon_upload_enable=yes anon_other_write_enable=YES anon_mkdir_write_enable=yes anon_world_readable_only=no # 设置最大传输速度,单位b/s anon_max_rate=100000
注意:目前还没给ftptest2虚拟用于建立单独的配置文件,那么对于此用户就使用主配置文件的配置(/etc/vsftpd/vsftpd.conf)
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
linux中不自带yum;yum是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器,是linux系统的安装必备神器,但是新系统一般是不自带yum工具的,需要手动进行安装。
linux可以查看文件的总大小。查看文件的总大小的方法:1、使用stat命令,语法“stat 文件路径”,输出结果的第三行的Size字段就是文件的字节数;2、使用wc命令,语法“wc -c 文件路径”,可将指定文件中的字节数、字数、行数输出;3、使用du命令,语法“du -h 文件路径”,用习惯的单位显示文件大小;4、使用ls命令,语法“ls -lh 文件路径”。
这篇文章我们来了解Linux下查看内存命令的相关内容,Linux下查看内存的命令是free命令,那么具体Linux free命令怎样使用,下文有很详细的介绍,感兴趣的朋友可以参考,接下来就跟随小编来一起了解一下吧!
这篇文章主要介绍了Linux传输超大文件方法介绍,涉及到nc传输的使用,分享了相关代码示例,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下
IP的表示方式我们知道ipv4地址是由32位构成的,我们通常将32位划分为四等分,每一份之间用.隔开,并且每一份用我们熟悉的十进制表示,如下就是一个ip地址8.210.247.5IP...
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008