2020最新vsftpd反向代理配置代理端口解决ftp无目录内网穿透服务器

2020最新vsftpd反向代理配置代理端口解决ftp无目录
内网穿透服务器
使用Frp外网访问内网FTP服务器
使用防火墙端口映射访问内网FTP服务器
![72794-elf3jk6exn5.png](https://www.proyy.com/wp-content/uploads/2020/09/3273471922.png)
安装教程:
1、关闭SELinux
sed -i ‘s/SELINUX=enforcing/SELINUX=disabled/’ /etc/selinux/config
grep SELINUX=disabled /etc/selinux/config
setenforce 0
2、配置dns
echo ‘nameserver 114.114.114.114’ >/etc/resolv.conf
3、centos7配置阿里云yum
cd /etc/yum.repos.d/
rm -rf *.repo
wget -O CentOs-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum clean all
yum makecache
4、判断你服务器上是否安装了vsftpd
有则如图 使用即可无需安装
rpm -q vsftpd
![36884-k84818rkus.png](https://www.proyy.com/wp-content/uploads/2020/09/1444626032.png)
如果没安装,那么安装命令如下:
yum install vsftpd ftp -y
5、这里自已定义好vsftp主动端口为31009,被动端口范围为31010-31020(这里使用几个端口就是同时允许多少个人连接)。
端口使用情况也就是31009-31020,需要注意的是做防火墙nat映射或者frp内网穿透配置时请配置好端口范围如下:
local_port:(内网端口)
31009-31020
反向代理方式:
nat或者frp
remote_port:(外网映射端口)
31009-31020
6、根据上面的配置端口,修改默认配置文件如下所示:
vim /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
local_enable=YES
chroot_local_user=YES
allow_writeable_chroot=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=NO
listen_ipv6=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
;vsftpd修改主动端口为31009
listen_port=31009
;vsftpd开启被动模式
pasv_enable=YES
;vsftpd修改被动端口范围为31010-31020,信任
pasv_min_port=31010
pasv_max_port=31020
pasv_promiscuous=YES
7、centos防火墙配置指定端口放行,不重启生效
firewall-cmd –zone=public –add-port=31009-31020/tcp –permanent
firewall-cmd –reload
systemctl restart firewalld
systemctl status firewalld
8、centos重启vsftpd服务
systemctl status vsftpd
systemctl restart vsftpd
systemctl status vsftpd
9、创建vsftpd用户目录及创建vsftpd用户
创建/data目录
mkdir /data
注意:testftp是用户名 /data/testftp是家目录 -s /sbin/nologin 不允许登录系统
useradd -s /sbin/nologin -d /data/testftp testftp
修改testftp的密码
passwd testftp
这里按照提示输入强密码
然后给testftp目录修改权限,否则无法上传文件
chmod o+w /data/testftp
cd /data/testftp
在/data/testftp下建立test目录
mkdir test
授予用户目录权限
chown test:test test
10、最后再重启vsftpd
systemctl status vsftpd
systemctl restart vsftpd
systemctl status vsftpd
11、centos设置vsftpd开机自启
systemctl enable vsftpd
12、打开ftp工具连接,指定端口为31009,模式为被动模式,用户名为testftp,密码你设置
ftp命令行连接ftp
ftp
open 外网IP地址 31009
vsftpd切换为被动模式命令
passive
输入用户名 testftp
输入密码
或者浏览器:
ftp://testftp:密码@外网IP地址:31009
![07867-6nf6ubjjc66.png](https://www.proyy.com/wp-content/uploads/2020/09/2950513269.png)
13、ftp主动模式被动模式介绍:
ftp介绍:
FTP是基于TCP的服务,使用两个端口,命令端口和数据端口,命令端口是21,数据端口在主动模式下为20,在被动模式随机分配。
FTP协议有两种工作方式:PORT方式和PASV方式,中文意思为主动式和被动式。
![84602-g2m4a4stger.png](https://www.proyy.com/wp-content/uploads/2020/09/4102637862.png)
![95666-c8dwaclufi.png](https://www.proyy.com/wp-content/uploads/2020/09/2628641736.png)
PORT(主动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时,客户端在命令链路上用PORT命令告诉服务器:“我打开了XXXX端口,你过来连接我”。于是服务器从20端口向客户端的XXXX端口发送连接请求,建立一条数据链路来传送数据。
主动模式存在的问题是,在客户端一般都会有防火墙的设置,当服务端与客户端数据进行数据通信时,客户端的防火墙会将服务端的端口挡在外面。此时,通信就会受阻。因此,被动模式就产生了。
![26572-g3kw2bg6x3e.png](https://www.proyy.com/wp-content/uploads/2020/09/1218335304.png)
![23916-gp585mj20r8.png](https://www.proyy.com/wp-content/uploads/2020/09/1525442858.png)
![23095-d6a1h9fw6tn.png](https://www.proyy.com/wp-content/uploads/2020/09/2113162391.png)
PASV(被动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时,服务器在命令链路上用PASV命令告诉客户端:“我打开了XXXX端口,你过来连接我”。于是客户端向服务器的XXXX端口发送连接请求,建立一条数据链路来传送数据。
被动模式也会存在防火墙的问题,客户端与服务端传输数据时,在服务端也会有防火墙,但在服务端的防火墙有连接追踪的功能,解决了防火墙的问题。因此,一般使用被动模式比较多。

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享