`

vsftpd的refusing to run with writable root inside chroot

阅读更多
写道
Linux下如何进行FTP设置

目录:
一、Redhat/CentOS安装vsftp软件
二、Ubuntu/Debian安装vsftp软件

一、Redhat/CentOS安装vsftp软件
1.更新yum源
首先需要更新系统的yum源,便捷工具下载地址:http://help.aliyun.com/manual?spm=0.0.0.0.zJ3dBU&helpId=1692
2.安装vsftp
使用yum命令安装vsftp
#yum install vsftpd -y
3.添加ftp帐号和目录
先检查一下nologin的位置,通常在/usr/sbin/nologin或者/sbin/nologin下。
使用下面的命令创建帐户,该命令指定了/alidata/www/wwwroot为用户pwftp的家目录,您可以自己定义帐户名和目录:
#useradd -d /alidata/www/wwwroot -s /sbin/nologin pwftp
修改该帐户密码:
#passwd pwftp
修改指定目录的权限
#chown -R pwftp.pwftp /alidata/www/wwwroot
4.配置vsftp
编辑vsftp配置文件,命令如下:
#vi /etc/vsftpd/vsftpd.conf
将配置文件中”anonymous_enable=YES “改为 “anonymous_enable=NO”
取消如下配置前的注释符号:
local_enable=YES
write_enable=YES
chroot_local_user=YES
保存修改,按ESC键,输入:wq
5.修改shell配置
vi编辑/etc/shells,如果该文件里没有/usr/sbin/nologin或者/sbin/nologin(具体看当前系统配置)则追加进去
6.启动vsftp服务并测试登录
使用命令启动vsftp服务:
#service vsftpd start
然后用帐号pwftp测试下是否可以登陆ftp。目录是/alidata/www/wwwroot。

二、Ubuntu/Debian安装vsftp软件
1.更新软件源
首先需要更新系统的软件源,便捷工具下载地址:http://help.aliyun.com/manual?spm=0.0.0.0.zJ3dBU&helpId=1692
2.安装vsftp
使用apt-get命令安装vsftp
#apt-get install vsftpd -y
3.添加ftp帐号和目录
先检查一下nologin的位置,通常在/usr/sbin/nologin或者/sbin/nologin下。
使用下面的命令创建帐户,该命令指定了/alidata/www/wwwroot为用户pwftp的家目录,您可以自己定义帐户名和目录:
#useradd -d /alidata/www/wwwroot -s /sbin/nologin pwftp
修改该帐户密码:
#passwd pwftp
修改指定目录的权限
#chown -R pwftp.pwftp /alidata/www/wwwroot
4.配置vsftp
编辑vsftp配置文件,命令如下:
#vi /etc/vsftpd.conf
将配置文件中”anonymous_enable=YES “改为 “anonymous_enable=NO”
取消如下配置前的注释符号:
local_enable=YES
write_enable=YES
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
保存退出
编辑/etc/vsftpd.chroot_list文件,将ftp的帐户名添加进去,保存退出
5.修改shell配置
vi编辑/etc/shells,如果该文件里没有/usr/sbin/nologin或者/sbin/nologin(具体看当前系统配置)则追加进去
6.重启vsftp服务并测试登录
使用命令启动vsftp服务:
#service vsftpd restart
然后用帐号pwftp测试下是否可以登陆ftp。目录是/alidata/www/wwwroot。

 

操作完之后,登录报  500 OOPS: vsftpd: refusing to run with writable root inside chroot ()

写道
这是由于下面的更新造成的:

- Add stronger checks for the configuration error of running with a writeable
root directory inside a chroot(). This may bite people who carelessly turned
on chroot_local_user but such is life.
问题的是因为用户的根目录可写,并且使用了chroot限制,而这在最近的更新里是不被允许的。要修复这个错误,可以用命令chmod a-w /home/user去除用户根目录的写权限,注意把目录替换成你自己的。

或者你可以在vsftpd的配置文件中增加下列两项中的一项:

对于标准的vsftpd build (vsftpd):

allow_writeable_chroot=YES
对于扩展的vsftpd build (vsftpd-ext):

allow_writable_chroot=YES

 

 

分享到:
评论

相关推荐

    ubuntu下vsftp问题修复

    vsftp出现550 Failed to change directory Ubuntu 获取软件失败 404错误 解决Ubuntu提示500 OOPS: vsftpd: refusing to run with writable root inside chroot()

    vsftpd 出现530 and 500 错误问题解决办法

    VSFTP 530 Login incorrect And 500 OOPS: vsftpd: refusing to run with writable anonymous root 错误的解决方法  530 Login incorrect : 在文件中限制匿名用户,做如下设置: anonymous_enable=NO user...

    vsftpd-3.0.5-1.el6.x86_64.rpm

    centos 6上的vsftpd v3.0.5版本rpm安装包 ...如果要允许root用户ftp,那么需要注释ftpusers、user_list两个文件里的root这一行,即时生效,不需要重启vsftpd 如果需要设置自启动vsftpd:chkconfig vsftpd on

    vsftpd.conf

    chroot_list_file=/etc/vsftpd/chroot_list allow_writeable_chroot=YES listen=NO #config ssl ssl_enable=YES allow_anon_ssl=NO force_local_data_ssl=YES force_local_logins_ssl=YES force_anon_logins_ssl=...

    linux vsftpd搭建步骤 亲测可用

    [root@ftp vuser_conf]# sed -n '/^[^#]/P' /etc/vsftpd/vsftpd.conf anonymous_enable=NO local_enable=YES write_enable=YES local_umask=022 dirmessage_enable=YES xferlog_enable=YES connect_from_port_20=...

    vsftpd-3.0.3-edit.tar.gz.tar

    (3)错误提示:sysdeputil.c:(.text+0xdcc):undefined reference to `crypt' 解决措施:arm-none-linux-gnueabi/libc/lib/下的libcrypt.so.1复制到开发板根文件系统/lib目录下 4、拷贝文件到开发板中 make成功之后有...

    vsftpd-3.0.5.el 7.9.zip

    centos el7上的vsftpd v3.0.5版本的rpm安装包 1)如果运行了vsftpd,则先停止: systemctl stop vsftpd 2)安装或升级vsftpd: rpm -Uvh vsftpd-3.0.5-1.el7.x86_64.rpm rpm -Uvh vsftpd-sysvinit-3.0.5-1.el7.x86_...

    vsftpd下载 rpm包

    vsftpd下载 rpm包

    Linux FTP服务搭建

    [root@localhost ~]#rpm –q vsftpd 安装vsFTPd命令: [root@localhost Server]#rpm –ivh vsftpd-2.0.5-12.el5.i386.rpm 在vsftpd.conf文件中配置匿名访问: anonymous_enable=YES 启动vsFTPd服务 [root@localhost...

    vsftpd-3.0.5-1.el8.x86_64.rpm

    sed -i 's|anonymous_enable=YES|anonymous_enable=NO|g' /etc/vsftpd/vsftpd.conf sed -i 's|listen=NO|listen=YES|g' /etc/vsftpd/vsftpd.conf sed -i 's|listen_ipv6=YES|listen_ipv6=NO|g' /etc/vsftpd/vsftpd....

    vsftpd虚拟用户的配置

    vsftpd虚拟用户的配置

    docker-vsftpd:在Docker中运行vsftpd

    Vsftpd Docker容器 vsftpd: : 码头工人: : 如果需要安全的FTP服务器来支持多种身份验证类型,例如htpasswd,BerkeleyDB或LDAP,则可以使用此存储库来构建满足您需求的容器。 用法: 建立容器 docker build -...

    linux环境vsftpd安装包-vsftpd-3.0.3-32.el8.aarch64.rpm

    linux环境vsftpd安装包-vsftpd-3.0.3-32.el8.aarch64.rpm

    Ubuntu16.04离线安装软件-离线安装包vsftpd-3.0.3

    有时候会遇到客户是内网环境的,无法在线通过apt-get install vsftpd进行安装,本文将提供vsftpd_3.0.3的离线安装包。 安装步骤 1、上传至指定文件夹后,执行命令 tar -zxvf vsftpd_3.0.3.tar.gz 进行解压 2、然后...

    CentOS7服务器环境下vsftpd安装及配置方法

    [root@localhost ~]# yum remove vsftpd [root@localhost ~]# find / -name vsftpd* /etc/vsftpd /etc/vsftpd/vsftpd.conf.bak [root@localhost ~]# rm -fr /etc/vsftpd/ 1x:重新安装 [root@localhost home]#yum ...

    手动添加vsftpd服务

    手动编译安装vsftpd之后,只需要将该文件复制到/etc/init.d文件夹下,即为安装了vsftpd服务,可运行service vsftpd status查看

    vsftpd中文联机文档

    vsftpd中文联机文档 vsftpd中文联机文档 vsftpd中文联机文档

    vsftpd详细配置解读

    vsftpd详细配置解读,vsftpd详细配置解读,vsftpd详细配置解读,vsftpd详细配置解读

    vsftpd安装包

    vsftpd安装包,可直接解压安装,修改配置文件即可使用

    Centos7.9安装配置vsftpd

    Centos7.9安装配置vsftpd

Global site tag (gtag.js) - Google Analytics