记一次ftp服务器错误 centOS 6.4 vsftpd 500 illegal port command
这个错误是因为是主动模式的,应该改为被动模式
以下是操作过程:
iptables中加
-A INPUT -p tcp -m state --state NEW -m tcp --dport 10221:10231 -j ACCEPT
重启iptables
#/etc/init.d/iptables restart
vsftpd.conf中
最后加上
pasv_enable=YES
pasv_min_port=10221 #随机最小端口,原来是4000
pasv_max_port=10231 #随机最大端口,原来是5000.
#anon_other_write_enable=YES
#port_promiscuous=YES
pasv_promiscuous=YES #这个如果不打开, 在连接时可能会出现bad ip ....可能是网络不稳定..也或者是ip在传输时有改变.....
重启 vsftpd
#service vsftpd restart
记得如果ftp是在虚拟机上面架设的,则一定要在代理服务器的防火墙上面/物理主机上面添加监听端口
netsh interface portproxy add v4tov4 listenport=10221 listenaddress=物理主机ip connectaddress=内网虚拟机ip connectport=10221
netsh interface portproxy add v4tov4 listenport=10222 listenaddress=物理主机ip connectaddress=内网虚拟机ip connectport=10222
netsh interface portproxy add v4tov4 listenport=10223 listenaddress=物理主机ip connectaddress=内网虚拟机ip connectport=10223
netsh interface portproxy add v4tov4 listenport=10224 listenaddress=物理主机ip connectaddress=内网虚拟机ip connectport=10224
netsh interface portproxy add v4tov4 listenport=10225 listenaddress=物理主机ip connectaddress=内网虚拟机ip connectport=10225
netsh interface portproxy add v4tov4 listenport=10226 listenaddress=物理主机ip connectaddress=内网虚拟机ip connectport=10226
netsh interface portproxy add v4tov4 listenport=10227 listenaddress=物理主机ip connectaddress=内网虚拟机ip connectport=10227
netsh interface portproxy add v4tov4 listenport=10228 listenaddress=物理主机ip connectaddress=内网虚拟机ip connectport=10228
netsh interface portproxy add v4tov4 listenport=10229 listenaddress=物理主机ip connectaddress=内网虚拟机ip connectport=10229
netsh interface portproxy add v4tov4 listenport=10230 listenaddress=物理主机ip connectaddress=内网虚拟机ip connectport=10230
netsh interface portproxy add v4tov4 listenport=10231 listenaddress=物理主机ip connectaddress=内网虚拟机ip connectport=10231
如果是被动模式的话,出现如下错误,是因为端口被占用或者端口没有开放的问题
500 Illegal PORT command的问题(主被动模式)
在windows的dos窗口用FTP命令去连时,可以登录,但使用ls等命令时,出现:
500 Illegal PORT command.
425 Use PORT or PASV first.
根据提示是被动模式的问题。
FTP主/被动模式的原理
-----------------------------------------------------------
FTP是File Transfer Protocol(文件传输协议)的缩写,用来在两台计算机之间互相传送文件。相比于HTTP,FTP协议要复杂得多。复杂的原因,是因为FTP协议要用到两个TCP连接,一个是命令链路,用来在FTP客户端与服务器之间传递命令;另一个是数据链路,用来上传或下载数据。
FTP协议有两种工作方式:PORT方式和PASV方式,中文意思为主动式和被动式。
PORT(主动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时,客户端在命令链路上用PORT命令告诉服务器:“我打开了XXXX端口,你过来连接我”。于是服务器从20端口向客户端的XXXX端口发送连接请求,建立一条数据链路来传送数据。
PASV(被动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时,服务器在命令链路上用PASV命令告诉客户端:“我打开了XXXX端口,你过来连接我”。于是客户端向服务器的XXXX端口发送连接请求,建立一条数据链路来传送数据。
概括:
--------------------------------------------
主动模式:服务器向客户端敲门,然后客户端开门
被动模式:客户端向服务器敲门,然后服务器开门
所以,如果你是如果通过代理上网的话,就不能用主动模式,因为服务器敲的是上网代理服务器的门,而不是敲客户端的门
而且有时候,客户端也不是轻易就开门的,因为有防火墙阻挡,除非客户端开放大于1024的高端端口
--------------------------------------------
要用主动模式来下载,请您把下载工具的被动模式(PASV)都不要打勾,用主动模式来下载就OK了,如果在出错,那就被动主动相互转换一下
---------------------------------------------
如何设置vsftpd的主动与被动模式:
Vsftpd的配置文件 /etc/vsftpd/vsftpd.conf
主动模式设置
Port_enable=YES 开启主动模式(default:YES)
Connect_from_port_20=YES 当主动模式开启的时候 是否启用默认的20端口监听
Ftp_date_port=%portnumber% 上一选项使用NO参数是 指定数据传输端口
被动模式
PASV_enable=YES 开启被动模式
PASV_min_port=%number% 被动模式最低端口
PASV_max_port=%number% 被动模式最高端口
----------------------------------------------
大部分FTP客户端默认使用PASV方式,PASV模式的意式是被动模式。在大部分FTP客户端的设置里,常见到的字眼都是“PASV”或“被动模式”。
IE: 工具 -> Internet选项 -> 高级 -> “使用被动FTP”(需要IE6.0以上才支持)。
CuteFTP: Edit -> Setting -> Connection -> Firewall -> “PASV Mode”
或 File -> Site Manager,在左边选中站点 -> Edit -> “Use PASV mode”
FlashGet: 工具 -> 选项 -> 代理服务器 -> 直接连接 -> 编辑 -> “PASV模式”
FlashFXP: 选项 -> 参数选择 -> 代理/防火墙/标识 -> “使用被动模式”
或 站点管理 -> 对应站点 -> 选项 -> “使用被动模式”
或 快速连接 -> 切换 -> “使用被动模式”
LeapFTP: Option ->Preferences -> General->Proxy->Use Pasv Mode
记一次ftp服务器错误 centOS 6.4 vsftpd 500 illegal port command的更多相关文章
- centOS 6.4 vsftpd 500 illegal port command
原先配置好的vsftpd突然不行了,不知为啥,感觉跟网络有关,这个网络总是有dns拦截的现象,..小公司.真烦人,用联通线路就没问题, 但同事就是连不上,我的笔记本却可以连接上..我的ubuntn,同 ...
- ftp:500 Illegal PORT command. 425
局域网用FTP命令访问外网的FTP SERVER,执行任何命令(如dir,ls,put,get)总是报下面的错误ftp:500 Illegal PORT command. 425ftp:Use POR ...
- 记一次ftp服务器搭建走过的坑
记一次ftp服务器搭建走过的坑 1.安装 ①下载 wget https://security.appspot.com/downloads/vsftpd-3.0.3.tar.gz #要FQ ②解压 ta ...
- FTP服务器(SOCKET)返回异常 500 Command not understood
出现着这样的问题,一般是NLST中的参数包含特殊字符,如"\n",所以在发送SOCKET命令时,一定要检查命令参数的合法性.
- Linux CentOS 6.5 下 vsftpd ftp服务器搭建
Linux CentOS 6.5 下 vsftpd ftp服务器搭建 by:授客 QQ:1033553122 操作系统环境:CentOS 6.5-x86_64 下载地址:http://www.ce ...
- centos FTP服务器的架设和配置
yum install vsftpd 2.启动/重启/关闭vsftpd服务器 [root@localhost ftp]# /sbin/service vsftpd restart Shutting d ...
- Ubantu下FTP服务器资源进行控制
在FTP服务器的管理中无论对本地用户还是匿名用户,对于FTP服务器资源的使用都需要进行控控制, 避免由于负担过大造成FTP服务器运行异常, 可以添加以下配置项对FTP客户机使用FTP服务器资源进行控制 ...
- linux搭建FTP服务器并整合Nginx
操作系统:Centos7 1.1.服务器配置 # 关闭SELINUX,把SELINUX=enforcing改为SELINUX=disabled,reboot重启服务器生效 vim /etc/sysco ...
- Linux上的ftp服务器vsftpd之配置满天飞--设置匿名用户访问(不弹出用户名密码框)以及其他用户可正常上传
一.问题背景 没事谁折腾这鬼玩意哦...还不是因为bug. 我们的应用,用户头像是存在ftp上的.之前的ftp服务器是一台windows,我们后台服务器程序收到用户上传头像的请求时,会用一个ROOT/ ...
随机推荐
- NOIP 2015 子串
借鉴大神思路... #include<cstdio> #include<cstring> #include<cstdlib> #include<iostrea ...
- WCF入门介绍
内容介绍 1.WCF是什么? 2.WCF能干什么? 3.WCF与以往的分布式技术有何区别? 一.WCF是什么? 比较贴近官方的说法是:WCF(原代号为Indigo)是一个用于创建和运行分布式系 ...
- globalfifo设备驱动
把globalmem中的全局内存变成一个FIFO,只有当FIFO中有数据的时候(即有进程把数据写到这个FIFO而且没有被读进程读空),读进程才能把数据读出,而且读取后的数据会从globalmem的全局 ...
- Web Services and C# Enums -摘自网络
Web Service Transparency .NET support for web services is excellent in creating illusion of transpar ...
- windows下利用dll生成lib
原来工程编译的一些dll库,这次项目需要静态库,偷懒想直接转化.看到网上一些教程,使用VC工具和建立lib项目来实现.有点麻烦.还有一种方法,仅仅利用工具和几条命令转化.来试试看.文章参考harrie ...
- Scala IDE for Eclipse的下载、安装和WordCount的初步使用(本地模式和集群模式)
包括: Scala IDE for Eclipse的下载 Scala IDE for Eclipse的安装 本地模式或集群模式 我们知道,对于开发而言,IDE是有很多个选择的版本.如我们大部分人经常 ...
- Ubuntu16.04编译安装php
#Ubuntu16.04编译安装php Ubuntu16.04上面搭建基于Nginx的php服务.Nginx使用apt直接安装的. sudo apt install nginx php的安装部署步骤主 ...
- nginx 重装添加http_ssl_module模块
起因: 如果出现“[emerg] 10464#0: unknown directive "ssl" in /usr/local/nginx-0.6.32/conf/nginx.co ...
- 推送通知/传感器/UIDynamic仿真(推送通知已适配iOS10)
推送通知/传感器/UIDynamic 一.推送通知 1.推送通知简介 什么是推送通知 此处的推送通知与NSNotification没有任何关系 可以理解为,向用户推送一条信息来通知用户某件事情 作用: ...
- 如何给Windows添加自动启动的程序
博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:如何给Windows添加自动启动的程序.