linux 7 vsftpd,centos7安装Vsftpd

本文详细介绍了在Linux系统中如何检查、安装、配置和管理VSFTPD服务,包括设置开机启动、修改配置文件以增强安全性,如限制用户权限、匿名登录、传输速率等,并解决了在配置过程中可能出现的`writable root inside chroot`错误。此外,还涉及到创建FTP用户、分配权限以及处理相关问题的方法。
摘要由CSDN通过智能技术生成

一、 检查服务器是否已经安装

rpm -qa |grep vsftpd

二、安装

如果输入上面的命令提示没有,那么进行安装

#yum install -y vsftpd

三、检查服务是否正常启动

1、启动 vsftp 服务

#systemctl start vsftpd

2、检查服务是否正常启动

#ps -ef | grep vsftpd

3、把服务添加到开机启动项

#systemctl enable vsftpd

四、修改 配置文件

1、进到安装vsftpd安装目录

#cd /etc/vsftpd

2、编辑 vsftpd.conf 配置文件

vi vsftpd.conf 修改 一下几个地方

anonymous_enable=NO

write_enable=YES

local_enable=YES

chroot_local_user=YES

pam_service_name=vsftpd:

listen=no

添加一下 内容:

userlist_enable=YES

tcp_wrappers=YES

allow_writeable_chroot=YES

保存退出

五、配置文件说明

配置的选项及说明

1、 核心设置

local_enable=YES //允许本地用户登录

write_enable=YES //本地用户的写权限

local_umask=022 //使用FTP的本地文件权限,默认为077,一般设置为022

pam_service_name=vsftpd //验证方式

connect_from_port_20=YES //启用FTP数据端口的数据连接

listen=yes // 以独立的FTP服务运行

listen_port=23 //修改连接端口

2、匿名登录设置

anon_upload_enable=YES // 如果允许匿名登录,是否开启匿名上传权限

anon_mkdir_write_enable=YES //如果允许匿名登录,是否允许匿名建立文件夹并在文件夹内上传文件

anon_other_write_enable=yes // 如果允许匿名登录,匿名帐号可以有删除的权限

anon_world_readable_only=no //如果允许匿名登录,匿名的下载权限,匿名为Other,可设置目录/文

件属性控制

anon_max_rate=30000 // 如果允许匿名登录,限制匿名用户传输速率,单位bite

3、限制登录

userlist_enable=yes //用userlist来限制用户访问

userlist_deny=no //名单中的人不允许访问

userlist_file=/etc/vsftpd/userlist_deny.chroot //限制名单文件放置的路径

4、限制目录

chroot_local_user=yes //限制所有用户都在家目录

chroot_list_enable=YES //调用限制在家目录的用户名单

chroot_list_file=/etc/vsftpd/chroot_list //限制在家目录的用户名单所在路径

5、日志设置

xferlog_file=/var/log/vsftpd.log //日志文件路径设置

xferlog_std_format=YES // 使用标准的日志格式

6、安全设置

idle_session_timeout=600 //用户空闲超时,单位秒

data_connection_timeout=120 //数据连接空闲超时,单位秒

accept_timeout=60 //将客户端空闲1分钟后断开

local_max_rate=10000 //本地用户传输速率,单位bite

max_clients=100 //FTP的最大连接数

max_per_ip= 3 //每IP的最大连接数

7、被动模式设置

pasv_enable=yes //是否开户被动模式

pasv_min_port=3000 // 被动模式最小端口

pasv_max_port=5000 //#被动模式最大端口

六 、如没有创建用户和路径需要创建要和指定用户路径

如:

mkdir /home/ftp

useradd -d /home/ftp -s /sbin/nologin test

给相应的权限

chowm -R test:test /home/ftp

七、问题解决

vsftpd:500 OOPS: vsftpd: refusing to run with writable root inside chroot ()错误

vsftpd:500 OOPS: vsftpd: refusing to run with writable root inside chroot ()错误原因:

是因为从2.3.5之后,vsftpd增强了安全检查,如果用户被限定在了其主目录下,则该用户的主目录不能再具有写权限了!如果检查发现还有写权限,就会报该错误。

解决这个错误的方法,可以用命令chmod a-w /home/test去除用户主目录的写权限,注意把目录替换成你自己的。或者你可以在vsftpd的配置文件中增加下列两项中的一项:allow_writeable_chroot=YES

5e8c3dd0314bf72ef1c0b6f0921955f7.png

问题原因:/etc/vsftpd 目录下没有chroot_list文件

========================================================================================

服务运维

systemctl restart vsftpd.service # 重启服务

systemctl start vsftpd.service # 启动服务

systemctl status vsftpd.service # 服务状态查看

systemctl enabled vsftpd # 把服务添加到开机启动项

下载文件

ftp> get readme.txt # 下载 readme.txt 文件

ftp> mget *.txt # 下载

上传文件

ftp> put /path/readme.txt # 上传 readme.txt 文件

ftp> mput *.txt # 可以上传多个文件

新建一个ftp用户:

useradd -d /home/www/ftp -s /sbin/nologin [ftpuser]

-d /home/www/ftp 指定将来的分享的根目录是:/home/www/ftp

-s /sbin/nologin 使此账户只能登陆ftp不能通过ssh登陆

给相应的权限

chowm -R [ftpuser]:[ftpuser] /home/www/ftp

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值