CentOS系统IPTables防火墙中FTP规则设置

时间 2016-04-21 10:32:15  虫虫开源

原文  http://www.sijitao.net/2403.html

主题 iptablesFTP防火墙

在设置ftp通过iptables规则前,需要先了解下ftp工作的两种模式,他们分别是主动模式和被动模式。如果对ftp原理不是很清楚,可以先参考下下面几篇文章。

FTP简介

1、 FTP主动模式和被动模式的区别

2、 Active FTP vs. Passive FTP, a Definitive Explanation

简单的说,主动模式是从服务器端向客户端发起连接;被动模式是客户端向服务器端发起连接。两者的共同点是都使用 21端口进行用户验证及管理,差别在于传送数据的方式不同,PORT模式的FTP服务器数据端口固定在20,而PASV模式则在1025-65535之间 随机。

了解ftp原理后,接下来就去设置iptables规则。我自己服务器上默认INPUT规则是DROP,OUTPUT是ACCEPT。

命令

1、开放21、20端口

# iptables -A INPUT -p tcp --dport 20 -j ACCEPT
# iptables -A INPUT -p tcp --dport 21 -j ACCEPT

如果OUTPUT默认也是DROP,那么还需要添加一下规则。

# iptables -A OUTPUT -p tcp --sport 20 -j ACCEPT

2、接受所有状态为ESTABLISHED、RELATED的连接

# iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

有关related状态的说明:

RELATED状态在有双通道的服务中会出现的。比如ftp服务的控制通道和数据通道。client发送syn请求到server的21端口,中间的linux系统变为NEW状态。server回复syn+ack应答包给client,中间的linux变为ESTABLISHED状态。当ftp的控制通道建立完后,会建立数据通道,而数据通道的第一个包就是RELATED状态,以后的包又变成ESTABLISHED状态。

3、配置iptables

# vi /etc/sysconfig/iptables-config

找到IPTABLES_MODULES,取消注释,添加ip_conntrack_ftp模块,保存。ip_conntrack_ftp模块可以让iptables支持被动模式的ftp连接。

IPTABLES_MODULES="ip_conntrack_ftp"

4、保存iptables规则、重启。

[root@iZ94myad6wkZ ~]# service iptables save
iptables: Saving firewall rules to /etc/sysconfig/iptables:[ OK ]
[root@iZ94myad6wkZ ~]# service iptables restart
iptables: Setting chains to policy ACCEPT: filter nat [ OK ]
iptables: Flushing firewall rules: [ OK ]
iptables: Unloading modules: [ OK ]
iptables: Applying firewall rules: [ OK ]
iptables: Loading additional modules: ip_conntrack_ftp [ OK ]

重启iptables是多了个加载模块的地址,ok正常。

时间: 2024-08-07 01:51:01

CentOS系统IPTables防火墙中FTP规则设置的相关文章

利用CentOS系统IPtables防火墙添加网站IP白名单

参考博文: 利用CentOS系统IPtables防火墙添加360网站卫士节点IP白名单 centos6.5添加白名单如下: 在防火墙 配置文件中加入白名单  ip -A INPUT -s 183.136.133.0/24 -j ACCEPT 批量添加  参考博文 如上! 查看iptables规则是否生效 [[email protected] ~]# iptables -nL centos7添加白名单参考博文: centOS7 下利用iptables配置IP地址白名单

CentOS系统配置 iptables防火墙

阿里云CentOS系统配置iptables防火墙 虽说阿里云推出了云盾服务,但是自己再加一层防火墙总归是更安全些,下面是我在阿里云vps上配置防火墙的过程,目前只配置INPUT.OUTPUT和FORWORD都是ACCEPT的规则 一.检查iptables服务状态 首先检查iptables服务的状态 [[email protected] ~]# service iptables status iptables: Firewall is not running. 说明iptables服务是有安装的,

centos 防火墙与其一些规则设置

开头:资料来源网上搜索,整理成自己的笔记形式 一.IPTABLES服务状态的检查: 命令:service iptables status 情形1:防火墙服务已安装,但还未运行 [[email protected] ~]# service iptables status iptables: Firewall is not running. 情形2:如图表示防火墙服务已安装且已开启,但还是未配置状态. 情形3:表示防火墙服务尚未安装 二.IPTABLES服务的安装与开启等维护方式: 安装:(此处以y

在iptables防火墙中设置对yum放行

iptables做了下安全设置,先做INPUT和OUTPUT方向的全部丢弃,然后在逐个开启要用的端口 #iptables -P INPUT DROP #iptables -P OUTPUT DROP 发现无法使用yum安装软件,最后查询得知需要在/etc/sysconfig/iptables里确保有如下规则: # iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT # iptables -A INPUT -p udp

CentOS 7 在vmware中的网络设置

一环境说明 二centos在vmware中的安装 三NAT网络设置 四设置固定IP 1修改网卡配置说明 2修改etcresolvconf 实现域名解析 五设置防火墙iptables 1 centos安装telnet 2 防火墙iptables设置 六 总结 前言:由于工作中需要使用Linux,在虚拟机中装了CentOS7,以作实验之用,安装后使用过程中出现不少问题,主要是网络问题,安装后出现下列几种状况: (1)宿主机网络正常,在虚拟机的centos中无法访问外网. (2)宿主机可以ping通,

Linux系统Iptables防火墙使用手册

Linux的内置firewall机制,是通过kernel中的netfilter模块实现的(www.netfilter.ort).Linux kernel使用netfilter对进出的数据包进行过滤,netfilter由三个规则表组成,每个表又有许多内建的链组成.通过使用iptables命令可以对这些表链进行操作,如添加.删除和列出规则等. 一.Netfilter规则表—filter nat mangle filter,用于路由网络数据包.是默认的,也就是说如果没有指定-t参数,当创建一条新规则时

centos系统关于防火墙的操作常用命令

centos下关于防火墙的常用命令 查询防火墙状态:firewall-cmd --state 关闭防火墙:systemctl stop firewalld.service 开启防火墙: systemctl start firewalld.service 重启防火墙:firewall-cmd --reload 端口操作 开启端口:firewall-cmd --zone=public --add-port=80/tcp --permanent 命令含义: --zone #作用域 --add-port

CentOS系统下安装配置ftp服务

安装配置步骤: rpm -ivh /opt/bak/vsftpd-2.2.2-11.el6.x86_64.rpm --本地安装vsftpd ll /etc/vsftpd/  --查看vsftpd的配置文件 里面一共有四个配置文件: vsftpd.conf 为主配置文件, ftpusers为黑名单用户配置文件,通常我们的系统用户还有根用户都是放在这个配置文件里面的,因为这些用户的权限很大,如果使用ftp服务可能造成一些问题, user_list为用户列表文件(可以通过在配置文件vsftpd.con

阿里云Centos配置iptables防火墙

虽说阿里云推出了云盾服务,但是自己再加一层防火墙总归是更安全些,下面是我在阿里云vps上配置防火墙的过程,目前只配置INPUT.OUTPUT和FORWORD都是ACCEPT的规则 一.检查iptables服务状态 首先检查iptables服务的状态 [[email protected] ~]# service iptables status iptables: Firewall is not running. 说明iptables服务是有安装的,但是没有启动服务.如果没有安装的话可以直接yum安