Linux上搭建VSFTPD服务器的方法
一般情况在各种linux的发行版中,默认带有的ftp软件是vsftp,从各个linux发行版对vsftp的认可可以看出,vsftp应该是一款不错的ftp软件。
1、检查安装vsftpd软件
使用如下命令#
rpm -qa | grep vsftpd
可以检测出是否安装了vsftpd软件,如果没有安装,使用YUM命令进行安装
yum install vsftpd -y
2、启动服务
使用vsftpd软件,主要包括如下几个命令:
service vsftpd start // 启动ftp命令
service vsftpd stop // 停止ftp命令
service vsftpd restart // 重启ftp命
3、创建虚拟宿主用户
useradd virtuser -s /sbin/nologin echo "123456" | passwd virtuser -stdin
4. 备份/etc/vsftpd/vsftpd.conf配置文件并将vsftpd.conf配置文件编辑内容如下
mv /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak
vim /etc/vsftpd/vsftpd.conf
# 是否允许匿名登陆
anonymous_enable=NO
# 是否允许本地用户登陆
local_enable=YES
# 是否具备写入权限
write_enable=NO
# 上传文件的权限掩码
local_umask=022
# 是否进行日志记录
xferlog_enable=YES
xferlog_std_format=YES
xferlog_file=/var/log/vsftpd.log
# FTP开启数据传输端口20
connect_from_port_20=YES
# 会话超时时间/秒
idle_session_timeout=600
# 数据传输连接超时时间
data_connection_timeout=120
# 是否允许进行异步传输
async_abor_enable=YES
# 请求欢迎信息
ftpd_banner=Welcome to blah FTP service.
# linux中FTP默认情况下允许用户从ftp主目录切换到linux系统的其他目录
# 可开启chroot_list_enable功能,通过列表文件,进行用户限制
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_deny
# 是否允许FTP用户使用"ls -R"命令,该命令会对系统造成较大的负担
ls_recurse_enable=NO
# 设定vsftpd服务工作在standalone模式,可理解为拥有自己的守护进程
listen=YES
# 设定pam服务下的vsftpd验证配置文件名,pam验证配置文件位于/etc/pam.d/目录下
pam_service_name=vsftpd
# 是否启用userlist列表限制功能
userlist_enable=YES
# 是否支持TCPwrappers
tcp_wrappers=YES
# 是否进行反向域名解析
reverse_lookup_enable=NO
# 启用虚拟用户功能
guest_enable=YES
# 指定虚拟的宿主用户
guest_username=virtuser
# 虚拟用户权限符合它们的宿主用户
virtual_use_local_privs=YES
# 指定虚拟用户的配置文件目录
user_config_dir=/etc/vsftpd/vconf
5、 创建可供pam服务识别的虚拟账户文件(虚拟用户:test,密码:123456)
mkdir /etc/vsftpd/vconf
cd /etc/vsftpd/vconf/
echo -e "testn123456" > password
db_load -T -t hash -f password{,.db}
6. 配置vsftpd的pam账户认证文件,加入下面两行账户认证配置(一定要加在文件内容的最上面)
vim /etc/pam.d/vsftpd
auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vconf/password
account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vconf/password
7. 创建共享目录并配置虚拟用户的个人配置文件(配置文件位于/etc/vsftpd/vconf/目录下,配置文件名称要和虚拟用户名一致)
mkdir /share
chown -R virtuser /share
vim /etc/vsftpd/vconf/test
#指定虚拟用户仓库的具路径
local_root=/share
#允许写的操作
write_enable=YES
#不允许下载操作
download_enable=NO
#设定并发客户端的访问数量
max_clients=20
#设定客户端的最大线程数
max_per_ip=10
#设定用户的最大传输速率,单位b/s
local_max_rate=102400
8. 创建测试文件,并启动vsftpd
echo "testfile" >>/share/abd.txt
chown -R virtuser /share
service vsftpd restart
9.补充说明
默认情况下,登录linux中ftp的用户拥有切换到linux系统其它目录的权限,可通过配置chroot_list_enable=YES进行限制
1、/etc/vsftpd/vsftpd.conf文件中配置如下内容
# linux中FTP默认情况下允许用户从ftp主目录切换到linux系统的其他目录 # 可开启chroot_list_enable功能,通过列表文件,进行用户限制
chroot_list_enable=YES chroot_list_file=/etc/vsftpd/chroot_deny
2、 创建/etc/vsftpd/chroot_deny文件,把需要限制的用户名加入到文件中
echo "test" >>/etc/vsftpd/chroot_deny
3、把21加入到IPTABLES中,开放21端口
iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 21 -j ACCEPT
4. 报『服务器发回了不可路由的地址。被动模式失败』时,在配置文件中增加以下内容
vim /etc/vsftpd/vsftpd.conf
pasv_enable=YES
pasv_address=47.96.13.145
pasv_min_port=1700
pasv_max_port=1799
>> 可能出现的问题
Q: 500 OOPS: vsftpd: both local and anonymous access disabled!
A: 出现这个错,需要修改配置:local_enable=YES
Q: 500 OOPS: vsftpd: refusing to run with writable root inside chroot()
A: 出现这个错,需要修改配置:allow_writeable_chroot=YES
免责申明:
1.如果服务器暂不能下载请稍后重试!总是不能下载,请联系客服,谢谢合作!
2.本站所有资源(包括写真、模板、素材、软件、字体等)仅供学习与参考,请勿用于商业用途。
3.本站所有素材来源于用户上传和网络,如有侵权请请联系客服处理!
4.本站资源售价只是赞助,收取费用仅维持本站的日常运营所需。
UU素材网 » Linux上搭建VSFTPD服务器的方法
1.如果服务器暂不能下载请稍后重试!总是不能下载,请联系客服,谢谢合作!
2.本站所有资源(包括写真、模板、素材、软件、字体等)仅供学习与参考,请勿用于商业用途。
3.本站所有素材来源于用户上传和网络,如有侵权请请联系客服处理!
4.本站资源售价只是赞助,收取费用仅维持本站的日常运营所需。
UU素材网 » Linux上搭建VSFTPD服务器的方法
常见问题FAQ
- 免费下载或者VIP会员专享资源能否直接商用?
- 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
- 提示下载完但解压或打开不了?
- 最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。 若排除这种情况,可在对应资源底部留言,或 联络我们。