OpenWRT安装VSFTPD错误vsftpd: refusing to run with writable root inside chroot()解决

2021-01-13
0评论
/
1078阅读
爱搜啊

OpenWRT安装VSFTPD

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设置端口范围


本站附件分享,如果附件失效,可以去找找看

诚通网盘附件百度网盘附件


标签: OpenWRT vsftpd
于2021-01-13发布