Linux Vsftpd 连接超时解决方法(被动模式)
http://blog.csdn.net/qq_15766181/article/details/46554643
使用 FileZilla FTP Client 连接 Vsftpd FTP,在没有配置传输模式(主动模式、被动模式)时,出现了以下提示信息。我们可以手工设置传输模式为“主动模式”来解决这一问题。但由于客户端防火墙等原因,这种解决方法将不会始终有效。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
状态: 正在连接 192.168 . 182.128 : 21 ... 状态: 连接建立,等待欢迎消息... 响应: 220 (vsFTPd 2.0 . 5 ) 命令: USER bugxm_general 响应: 331 Please specify the password. 命令: PASS ****** 响应: 230 Login successful. 命令: OPTS UTF8 ON 响应: 200 Always in UTF8 mode. 状态: 已连接 状态: 读取目录列表... 命令: PWD 响应: 257 "/" 命令: TYPE I 响应: 200 Switching to Binary mode. 命令: PASV 响应: 227 Entering Passive Mode ( 192 , 168 , 182 , 128 , 172 , 85 ) 命令: LIST 错误: 连接超时 错误: 读取目录列表失败 |
解决方法
在服务端配置被动模式就可以从根源上解决这问题。
1、编辑 Vsftpd 配置文件
1
|
vi /etc/vsftpd/vsftpd.conf |
2、在最下面添加以下信息
1
2
3
|
pasv_enable=YES #开启被动模式 pasv_min_port= 4000 #随机最小端口 pasv_max_port= 5000 #随机最大端口 |
3、加载内核 ip_conntrack_ftp 和 ip_nat_ftp(终端执行)
1
2
|
modprobe ip_conntrack_ftp modprobe ip_nat_ftp |
4、配置 iptables 开放 4000 到 5000 端口
1
|
vi /etc/sysconfig/iptables 在*filter下加入下 |
1
2
|
-A OUTPUT -p tcp --sport 4000 : 5000 -j ACCEPT -A INPUT -p tcp --dport 4000 : 5000 -j ACCEPT |
5、加载 iptables 配置
1
|
iptables-restore < /etc/sysconfig/iptables |
6、重启 Vsftpd
1
|
service vsftpd restart |
测试连接
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
状态: 正在连接 192.168 . 182.128 : 21 ... 状态: 连接建立,等待欢迎消息... 响应: 220 (vsFTPd 2.0 . 5 ) 命令: USER bugxm_general 响应: 331 Please specify the password. 命令: PASS ****** 响应: 230 Login successful. 命令: OPTS UTF8 ON 响应: 200 Always in UTF8 mode. 状态: 已连接 状态: 读取目录列表... 命令: PWD 响应: 257 "/" 命令: TYPE I 响应: 200 Switching to Binary mode. 命令: PASV 响应: 227 Entering Passive Mode ( 192 , 168 , 182 , 128 , 15 , 224 ) 命令: LIST 响应: 150 Here comes the directory listing. 响应: 226 Directory send OK. 状态: 列出目录成功 |
#%PAM-1.0 [/etc/pam.d/vsftpd, 注意是lib还是lib64, 登录失败 可 tail -f /var/log/secure 查看详情]
auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/virtusers
account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/virtusers
session optional pam_keyinit.so force revoke
auth required pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed
auth required pam_shells.so
auth include password-auth
account include password-auth
session required pam_loginuid.so
session include password-auth
Linux Vsftpd 连接超时解决方法(被动模式)的更多相关文章
- Linux Vsftpd 连接超时解决方法
Linux Vsftpd 连接超时解决方法 2013-11-13 10:58:34| 分类: 默认分类|举报|字号 订阅 解决方法(http://www.lingdus.com/thread ...
- 基于ORA-12170 TNS 连接超时解决办法详解
转自原文 基于ORA-12170 TNS 连接超时解决办法详解 1.开始----程序-----Oracle------配置和移植工具-----Net Manager----本地----服务命名---o ...
- ssh 连接缓慢解决方法
ssh 连接缓慢解决方法 摘自:https://blog.csdn.net/qq_14821541/article/details/61915589 2017年03月13日 12:00:38 所以怎样 ...
- file_get_contents无法请求https连接的解决方法 php开启curl
file_get_contents无法请求https连接的解决方法 方法1: PHP.ini默认配置下,用file_get_contents读取https的链接,就会如下错误: Warning: fo ...
- 因修改/etc/ssh权限导致的ssh不能连接异常解决方法
因修改/etc/ssh权限导致的ssh不能连接异常解决方法 现象: $ssh XXX@192.168.5.21 出现以下问题 Read from socket failed: Connection r ...
- ssh能够连接而sftp不能连接的解决方法
ssh能够连接而sftp不能连接的解决方法 昨天开始用FileZilla一直不能登录远程的服务器,ssh的登录就OK,因为是服务器,也不敢乱动.查了好多资料终于解决了. 首先,查看一下系统的安全日 ...
- linux服务器时间同步失败解决方法
linux服务器时间同步失败解决方法 1.为什么会时间不同步: ①计算机的时间是根据电脑晶振以固定频率震荡而产生的,由于晶振的不同或者老化,会导致电脑时间积累误差的产 (什么是电脑晶振:http:// ...
- Linux时间变慢解决方法
情景:系统为CentOS-5.4,硬件时间正确(查看硬件时间的方法见下面),系统时间每隔24小时会慢20分钟左右Linux将时钟分为系统时钟(System Clock)和硬件(Real Time Cl ...
- Spotlight 连接SuSE11 linux报错的解决方法
1. 在客户端安装spotlight: 2.在SuSE11中建立新用户,并且安装了sysstat包: 3.使用spotlight连接服务器,连接时提示 errorcode:3114 reas ...
随机推荐
- 【Objective-C】NSDate详解及获取当前时间等常用操作
NSDate类用于保存时间值,同时提供了一些方法来处理一些基于秒级别时差(Time Interval)运算和日期之间的早晚比较等. 1. 创建或初始化可用以下方法 用于创建NSDate实例的类方法有 ...
- qt 标准对话框
if (QMessageBox::Yes == QMessageBox::question(this, tr("Question"), ...
- SQL查询第m条到第n条的方法
SQL查询第m条到第n条的方法 如表名为GOOD Sselect top (n-m) * from GOODS where (某一列名) not in (select top m (某一列名) fro ...
- kettle系列-3.kettle读取数据库资源库很慢的优化
环境:windows7,jvm内存设置14G,kettle5.1后来升级到5.4,oracle作为资源库. 问题背景:我们通过web页面管理kettle的job运行,这只是一个管理界面,即使web项目 ...
- 【Java EE 学习 24 上】【注解详解】
一.注解 1.所有的注解都是类. 2.所有的注解都是Annotation接口的子类. 接口摘要 Annotation 所有 annotation 类型都要扩展的公共接口. 3.定义方式 public ...
- jquery实现页面交互的几个小例子
翻看了以前留下的笔记,发现自己竟然做过这么多的页面交互效果,没有使用原生js,全是通过jquery实现的,于是把他们整理下来,附上表现效果图及源代码 1 业务应用:授权商品组和删除商品组 本质:复选框 ...
- jrebel实现tomcat热部署
-noverify -javaagent:D:\jrebel.jar 注:频繁切换工程的时候,热部署可能会失效; 解决办法是:先把项目拖到tomcat下发布,然后在没有配置上面这行代码的情况下,让项目 ...
- TTrayIcon用法
TTrayIcon用法 self.trycn1.Icon:=Application.Icon; Self.trycn1.Hint:=self.Caption; self.trycn1.Visible: ...
- 关于Xcode8.1 / iOS10+ 真机测试系统打印或者宏定义打印不显示问题
前言: 最近做项目时遇到了很多莫名其妙的问题,其中就有这个打印(NSLog).也不多废话了,我们先来回顾一下Xcode8发布以来,我们遇到的一些关于打印的问题,当然也有解决方法: 1.Xcode8打印 ...
- Python for Infomatics 第13章 网页服务一(译)
注:文章原文为Dr. Charles Severance 的 <Python for Informatics>.文中代码用3.4版改写,并在本机测试通过. 一旦利用程序通过HTTP协议获得 ...