做个人的网站怎么做,腾讯云如何建设网站首页,最新版的wordpress,百度股市行情上证指数在使用FTP时#xff0c;如果客户端机器和FTP服务器双方之间的所有端口都是开放的#xff0c;那连接不存在问题。如果客户端与服务器之间有防火墙#xff0c;如果没配置好防火策略和采用合适的连接模式#xff0c;会导致登录成功#xff0c;但无法List列表的问题。要避免出… 在使用FTP时如果客户端机器和FTP服务器双方之间的所有端口都是开放的那连接不存在问题。如果客户端与服务器之间有防火墙如果没配置好防火策略和采用合适的连接模式会导致登录成功但无法List列表的问题。要避免出现这样的问题首先要了解FTP的工作模式。
1.FTP的PORT主动模式和PASV被动模式
(1) PORT主动模式PORT中文称为主动模式工作的原理 FTP客户端连接到FTP服务器的21端口发送用户名和密码登录登录成功后要list列表或者读取数据时客户端随机开放一个端口1024以上发送 PORT命令到FTP服务器告诉服务器客户端采用主动模式并开放端口FTP服务器收到PORT主动模式命令和端口号后通过服务器的20端口和客户端开放的端口连接发送数据原理如下图(2) PASV被动模式PASV是Passive的缩写中文成为被动模式工作原理FTP客户端连接到FTP服务器的21端口发送用户名和密码登录登录成功后要list列表或者读取数据时发送PASV命令到FTP服务器 服务器在本地随机开放一个端口1024以上然后把开放的端口告诉客户端 客户端再连接到服务器开放的端口进行数据传输原理如下图1.docker拉取ftp镜像
docker pull fauria/vsftpd
2.启动ftp镜像
docker run -d -p 2121:21 -p 2020:20 -p 21100-21110:21100-21110 \
-v /var/ftp:/home/vsftpd \
-e FTP_USERftp \
-e FTP_PASS123456 \
-e PASV_ADDRESSxxx.xxx.xxx.xxx\
-e PASV_MIN_PORT21100 \
-e PASV_MAX_PORT21110 \
--name vsftpd \
--restartalways fauria/vsftpd
如果是主机模式则不用映射端口完全依赖主机端口
docker run -d --nethost \
-v /var/ftp:/home/vsftpd \
-e FTP_USERftp \
-e FTP_PASS123456 \
-e PASV_ADDRESSxxx.xxx.xxx.xxx\
-e PASV_MIN_PORT21100 \
-e PASV_MAX_PORT21110 \
--name vsftpd \
--restartalways fauria/vsftpd
参数解释:
-p 2121:21 -p 2020:20 映射daocker和宿主机的端口号通过ftp客户端连接宿主机的2121端口可以连接ftp服务器。2020端口为docker映射到宿主机的数据传输端口。
PASV_ADDRESS填写服务器的IP地址被动模式会把该地址告知给客户端(其他机器能访问到云服务器则用公网IP,局域网地址则用局域网IP,不能用127.0.0.1,否则只能主动模式能用被动模式无法链接)