阿里云服务器上搭建FTP后,外网访问不了?

阿里云服务器上搭建FTP后,外网访问不了?,第1张

1、解决方案:
ftp默认模式为被动模式,开启一个随机端口建立连接。需要把内网端口限制打开,
如果是通过硬件防火墙,将防火墙开启ftp随机端口就可以了
2、两种方式的工作原理:
主动模式:
Port模式FTP 客户端首先和FTP服务器的TCP
21端口建立连接,通过这个通道发送命令,客户端需要接收数据的时候在这个通道上发送PORT命令。
PORT命令包含了客户端用什么端口接收数据。在传送数据的时候,服务器端通过自己的TCP 20端口连接至客户端的指定端口发送数据。 FTP
server必须和客户端建立一个新的连接用来传送数据。(可以看到在这种方式下是客户端和服务器建立控制连接,服务器向客户端建立数据连接,其中,客户端的控制连接和数据连接的端口号是大于1024的两个端口号(临时端口),而FTP服务器的数据端口为20,控制端口为21)
被动模式: 
Passive模式在建立控制通道的时候和Standard模式类似,但建立连接后发送的不是Port命令,而是Pasv命令。FTP服务器收到Pasv命令后,随机打开一个临时端口(也叫自由端口,端口号大于1023小于65535)并且通知客户端在这个端口上传送数据的请求,客户端连接FTP服务器此端口,然后FTP服务器将通过这个端口进行数据的传送,这个时候FTP

server不再需要建立一个新的和客户端之间的连接。(可以看到这种情况下的连接都是由客户端向服务器发起的,与下面所说的“为了解决服务器发起到客户的连接的问题,人们开发了一种不同的FTP连接方式。这就是所谓的被动方式”相对应,而服务器端的数据端口是临时端口,而不是常规的20)
很多防火墙在设置的时候都是不允许接受外部发起的连接的,所以许多位于防火墙后或内网的FTP服务器不支持PASV模式,因为客户端无法穿过防火墙打开FTP服务器的高端端口;而许多内网的客户端不能用PORT模式登陆FTP服务器,因为从服务器的TCP
20无法和内部网络的客户端建立一个新的连接,造成无法工作。
主动模式要求客户端和服务器端同时打开并且监听一个端口以建立连接。在这种情况下,客户端由于安装了防火墙会产生一些问题。所以,创立了被动模式。被动模式只要求服务器端产生一个监听相应端口的进程,这样就可以绕过客户端安装了防火墙的问题。
在被动方式FTP中,命令连接和数据连接都由客户端发起,这样就可以解决从服务器到客户端的数据端口的入方向连接被防火墙过滤掉的问题。

 首先登陆阿里云账号之后,找到我们控制中心里面,找到服务器管理控制台。
特别提醒
在更换系统盘之前,要做好数据备份。然后停止服务器
当服务器运行停止之后,点击配置信息里面的“更换系统盘”如图
随后会提醒您更换ECS服务器系统盘的影响,如果没有数据。点击确定更换 *** 作系统盘
然后再次选择确认新的 *** 作系统类型,或者 镜像系统
确定好之后,系统会再次提醒您是否更换。点击确定继续

下载xshell

登录centos

安装vsftpd

[root@xxx]# yum install vsftpd //安装vsftpd

[root@xxx]# chkconfig vsftpd on //开机启动

[root@xxx]# useradd -d /web -s /sbin/nologin ftpadmin //创建ftp目录:web文件夹,新增账号ftpadmin

[root@xxx]# passwd ftpadmin //修改ftpadmin密码,接着会出现2次密码确认

[root@xxx]# service vsftpd start //启动ftp服务

4安装svn

[root@xxx]# yun install subversion //安装svn

[root@xxx]# mkdir /svnhome //创建svn目录:svnhome

[root@xxx]# svnadmin create /svnhome/do2015 //创建版本库do2015

[root@xxx]# cd /svnhome/do2015/conf //进入版本库所在文件夹,准备修改配置文件,新增安全、用户和组管理权限等信息

[root@xxx]# vi svnserveconf //1编辑svn配置文件

anon-access = none    #不允许匿名用户访问

auth-access = write   #通过验证的用户可以读和写

password-db = passwd  #用户账号密码配置文件

authz-db = authz      #权限

realm = do2015        #版本仓库

[root@xxx]# vi passwd //2新增用户密码

---------------------

[users]#

user1 = userpasswd1

user2 = userpasswd2

---------------------

[root@xxx]# vi authz //3新增权限

---------------------

[groups]

g_manager = admin,user1,user2

[/]

@g_manager = rw

# = r

[repository:/]

@g_manager = rw

[root@xxx]# svnserve -d -r /svnhome/do2015  //启动svn服务

5利用 和 svn://ip 进行访问测试。

逐步试错,总结如下:

vim保存::wq,退出:q!

配置文件,不要有空格,anon-access = read顶头写。

我用的是小鸟云服务器,这些都是他们告诉我的。

第一步:收集Xshell登陆信息登陆阿里云管理中心,点击“云服务器ECS”,点击“实例”,看到服务器信息页面,点击“管理”在此信息中查看公网IP地址第二步:进入命令界面打开Xshell4,点击“用户身份验证”,输入主机(公网IP),‘确定’后输入用户名和密码连接

需要先安装IIS,并选择FTP模块,然后再去开设FTP站点并配置,总体比较复杂。
推荐个一键完成安装的工具,护卫神主机大师。
FTP也自动配置好,使用web可以在线开设FTP。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/12595616.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存