iptables下开放ftp连接端口

转载 2014年04月19日 10:04:27
  • 2275

iptables 就是linux系统的防火墙,很多人安装iptables之后重启服务器发现网站无法访问,ftp无法连接。关闭iptables之后网站和ftp服务器都能正常访问,但是为了服务器的安全,不建议关闭防火墙。

要想配置好iptables让ftp服务器正常访问,我们首先要了解一下ftp服务器的工作机制。

ftp协议是一个简单、保密性差(明码)的tcp协议,它的工作原理是客户端先连服务器端的21端口,然后经过3步的握手以后建立了一条连接。要注意的是,这条连接只可以用来传输ftp的命令,只有这条连接的话是什么文件都传不了的,就算是用“ls”命令来查看文件也不行。

建立了命令的连接以后,服务器端就要建立一条数据的连接。数据的连接又分为主动模式(port)和被动模式(passive)。ftp默认是被动模式,主动和被动之间使用”pass”命令切换。主动模式通过20端口与客户端相连,而被动模式却使用1024以后的端口与客户端相连。由于1024以后的端口是随机分配的,所以在被动模式下我们是不知道服务端是使用什么端口与客户端连接的。也就是说,我们是不知道iptables要开放什么端口。

了解之后我们发现,仅仅在iptables设置开放21端口是不行的。

在/etc/sysconfig/iptables-config里面添加ip_nat_ftp、ip_conntrack、ip_conntrack_ftp模块,如下:

vi /etc/sysconfig/iptables-config
IPTABLES_MODULES="ip_nat_ftp"
IPTABLES_MODULES="ip_conntrack"
IPTABLES_MODULES="ip_conntrack_ftp"

然后重启iptables或者执行如下命令:

modprobe ip_nat_ftp   (加载ftp模块)
lsmod | grepftp    (查看模块是否被加载)

之后只需要添加规则

iptables -I INPUT -s 192.168.1.1 -d 192.168.1.200 -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -s 192.168.1.1 -d 192.168.1.200 -p tcp --sport 21 -j ACCEPT

注意:如果你把OUTPUT 设置成DROP的就要写上

iptables -A OUTPUT -m state --state NEW -p tcp --dport 21 -j ACCEPT

最后要记得保存和重启iptables服务

/etc/rc.d/init.d/iptablessave
service iptables restart

这样ftp命令能传输了,也可以利用ftp服务器上传下载文件了。

转载于:https://www.cnblogs.com/liubi/p/8859081.html

iptables下开放ftp连接端口相关推荐

  1. iptables,haproxy转发ftp(21端口)

    iptables: http://blog.csdn.net/niejicai/article/details/50275367 haproxy: 1 2 3 4 5 6 7 8 9 10 11 12 ...

  2. Linux FTP 21端口始终无法连接的问题

    记录一下出现的问题 环境如下 环境如下 软件 版本 Linux Centos7.5 ftp软件 Pure-ftpd 宝塔Panel 6.9.9 安装完下面这个插件之后吧,进行了一系列常规设置 1.首先 ...

  3. Linux学习笔记010---CentOS7下安装FTP服务

    JAVA技术交流QQ群:170933152 按照这个就可以 1.安装vsftp 1.1.安装vsftp,测试安装的vsftpd的版本是:vsftpd.x86_64 0:3.0.2-11.el7_2 y ...

  4. 路由器端口映射,远程桌面连接--端口映射+花生壳=让人访问你个人服务器或WEB站点...

    [图]路由器端口映射,远程桌面连接--端口映射+花生壳=让人访问你个人服务器或WEB站点 2010-03-16   关键字:路由器端口映射,内网端口映射,porttunnel,端口映射,远程桌面,修改 ...

  5. DC的网络连接端口与防火墙设置[为企业部署Windows Server 2008系列十]

    在前面9篇文章中跟大家分享了2008上dc的搭建以及core模式下的一些应用,当我们为企业部署好基础架构服务后为了安全起见都会启动windows server 2008自带的windows 防火墙,并 ...

  6. linux下ftp防火墙端口映射,centos6利用iptables用DNAT实现端口映射并解决ftp列表错误问题...

    之前写了centos7下利用firewall防火墙实现了端口映射的功能来达到加速80端口的目的,但是如果同时也要转发ftp流量的话就会一直出现ftp连接列表错误问题,查询了下相关资料,这是由于源IP通 ...

  7. Centos配置iptables开放ftp服务

    安装完vsftpd后,默认情况下,CentOS的防火墙是不开放ftp服务的,需要添加模块和开放21端口才能提供ftp访问. 1.添加ip_conntrack_ftp 模块 [root@hexuweb1 ...

  8. 如何起Linux服务器的21端口,linux下开启ftp的21号端口

    linux下开启ftp的21号端口 1.先运行vsftpd服务: #service vsftpd start 2.通过iptables开放21号端口 (1) 先查看iptables设置: #iptab ...

  9. Linux下开启FTP的21端口

    这几天一直在学习在CentOS7.0创建本地yum源和局域网yum源,准备两台CentOS7.0虚拟机,一个做服务器,一个做客户端:由于开发环境只有局域网,没法使用网上的各种yum源,来回拷贝rpm包 ...

最新文章

  1. 程序员的乐趣,生成自定义二维码,5 行 Python 代码就搞定
  2. java关于异常的面试程序题_java异常相关面试题
  3. java int越界_用位运算判断int类型变量越界
  4. java软件测试方法有哪些方法有哪些_如何才算掌握Java
  5. Ubuntu下pip3的安装、升级、卸载
  6. solidworks图纸模板添加_Solidworks零件和图纸绘制流程分享
  7. 一个从华为离职的朋友
  8. resnet结构_经典卷积网络(二)-ResNet
  9. Linux 启动顺序
  10. php报错处理,关于升级php7后的报错处理
  11. 搭建SVN服务器详细过程 及 使用方法 Windows端
  12. handsome主题魔改
  13. 小程序毕设作品之微信校园维修报修小程序毕业设计成品(7)中期检查报告
  14. 七种常见的数据分析法之:对比分析法
  15. c# 标准正太分布函数_Excel里面标准正态分布函数NORMSDIST()在C#里的算法以及科学计数法转换为正常数值...
  16. 推荐几本图灵最新移动开发图书
  17. Android--DES加密解密
  18. 婚礼纪 java面试
  19. WordPress采集插件:QQWorld收藏家豪华版
  20. C# / VB 获取PDF文档的数字签名信息

热门文章

  1. HBase 默认配置项详细解读
  2. 【网址收藏】helm charts github地址
  3. centos7安装svn1.9解决与svn服务器版本不一致的问题
  4. vue-router路由示例
  5. Linux vim的三种模式
  6. Java客户端操作elasticsearch--查询索引库(带分页)
  7. Hadoop大数据--Mapreduce程序运行并发度
  8. centos 7.9 scp命令 实现远程拷贝文件
  9. Qt for ios 在 xcode 中编译(便于调试)
  10. F - Tickets (预处理)