OpenWRT安装VSFTPD错误vsftpd: refusing to run with writable root inside chroot()解决
1、如何安装就不说了,wan口可以上网的路由器,用opkg命令下载vsftpd安装
再安装一个shadow-useradd
opkg install vsftpd opkg install shadow-useradd
用来添加OpenWRT的用户,添加后可以用来登录ftp
2、创建新用户
命令:
useradd aisoa passwd 123456 #设置密码
3、创建主目录:
mkdir /home mkdir /home/aisoa chown aisoa /home/aisoa
vsftpd的设置主要在/etc/vsftpd.conf中,下面放出两个可用的脚本。
1.允许匿名
ackground=YES
listen=YES
chown_uploads=YES
chown_username=root
ftp_username=nobody
#enable anonymous user
anonymous_enable=YES
anon_upload_enable=YES
anon_root=/mnt/anymous #匿名登陆的目录
anon_mkdir_write_enable=YES
anon_max_rate=512000
local_enable=YES
write_enable=YES
local_umask=022
check_shell=NO
local_root=/mnt/sda1/ftp #账号登陆的目录
chroot_local_user=YES
allow_writeable_chroot=YES
accept_timeout=60
idle_session_timeout=300
max_clients=600
max_per_ip=5
#dirmessage_enable=YES
ftpd_banner=Welcome to vsFTP service.
session_support=NO
syslog_enable=YES
#######################################################
上面的配置中,坑是必须要设置allow_writeable_chroot=YES
不然linux下目录权限是777的话就不能登录
提示:vsftpd: refusing to run with writable root inside chroot()
#######################################################
2.禁用匿名(未测试)
secure_chroot_dir=/mnt/sda1/ftp#创建对应的文件夹
ftp_username=root#允许的用户名root
nopriv_user=root
background=YES
listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
check_shell=NO
dirmessage_enable=YES
ftpd_banner=WelcometovsFTPservice.
syslog_enable=YES
max_clients=600
max_per_ip=5
#######################################################
改完配置文件就要重启服务:
/etc/init.d/vsftpd restart #重启vsftpd服务 /etc/init.d/vsftpd enable #允许开机自启动
#######################################################
关于添加用户账号。在配置文件1中有一句:ftp_username=nobody。nobody就是登录用户名,不过系统默认的密码我不知道,我要修改,用以下命令,输入两次即可。
useradd nobody #有这个用户会提示无法添加
passwd nobody #输入两次密码就可以了
路由器安装vsftpd外网访问失败
最近有人在问我路由器安装了vsftpd无法在外网访问ftp,经过自己折腾和在网上查找资料折腾成功了,今天分享一下具体的设置方法。
ftp是分主动模式(active mode)和被动模式(passive mode)的,ftp是tcp连接,所以要进行三次握手,这里要设置ftp为passive模式
不要使用20端口,一般ftp为21端口
一定要多开一些端口给ftp使用,如果是外网访问,只开一个端口多个用户无法同时使用,命令如下
pasv_min_port=65025 pasv_max_port=65525
在防火墙把65025-65625端口转发给路由器地址,如192.168.1.1,当然,也要给映射一个端口给21,我一般用8021,不直接用21
这样基本就没问题了。
详细设置方法:路由器安装vsftpd外网访问失败vsftpd开启配置主动被动模式ftp设置端口范围
点击链接加入群聊三群:751529538
点击链接加入群聊二群:376877156
点击链接加入群聊【路由器交流群:622891808已满】
本站附件分享,如果附件失效,可以去找找看
饿了么红包