设置iptables允许ssh、http、ftp服务

系统环境:centos-6.5

服务器:thinkserver

知识扫盲:

NEW:这个包是我们看到的第一个包

ESTABLISHED:一个连接要从NEW变 为ESTABLISHED,只需要接到应答包即可,不管这个包是发往防火墙的,还是要由防 火墙转发的。

FTP服务器有两种工作模式:主动模式和被动模式。这两种方式的特点如下:
 (1)主动模式下:
  tcp, 20(20号端口用于数据传输),21(21号端口用于控制连接)
 (2)被动模式:
  tcp, 21(用于控制连接) >1023(端口号大于1023的随机端口用于数据传输)
  所以如果FTP工作在被动模式下,无法指定数据传输的端口,于是引入了RELATED状态。RELATED主要用于追踪与其相关的端口。注意:ftp工作在主动模式或者被动模式与客户端的请求有关。

ssh、http服务分别工作在22、80端口,第一次进入server端的包为NEW状态,所以要求INPUT链能过ACCEPT客户端的第一次发来的数据包。而后,发给客户端的包,使得该客户端与服务端通信来往包的状态变为ESTABLISHED,所以INPUT链允许通过的状态为NEW、ESTABLISHED,而OUTPUT链,只需ESTABLISHED。

1、设置21,22,80端口INPUT链和OUTPUT链,设置INPUT、FORWORD、OUTPUT链的默认策略为DROP

[plain] view plain copy

  1. iptables -I INPUT -d 10.79.32.22 -p tcp -m multiport --destination-ports 21,22,80 -m state --state NEW -j ACCEPT
  2. iptables -I INPUT 1 -d 10.79.32.22 -p tcp -m state --state RELATED,ESTABLISHED -j ACCEPT
  3. iptables -I OUTPUT 1 -s 10.79.32.22 -p tcp -m state --state RELATED,ESTABLISHED -j ACCEPT
  4. iptables -P FORWARD DROP
  5. iptables -P OUTPUT DROP
  6. iptables -P INPUT DROP

2、查看iptables状态

[plain] view plain copy

  1. # iptables -L -n

3、保存iptables当前配置,该配置文件位于/etc/sysconfig/iptables

[plain] view plain copy

  1. #service iptables save

[plain] view plain copy

  1. <p>#vim /etc/sysconfig/iptables</p>

4、修改iptables启动时装载模块,这里增加的两个模块可以为“nf_nat_ftp nf_conntrack_ftp”,也可以写成“ip_nat_ftp ip_conntrack_ftp”

#vim /etc/sysconfig/iptables-config

5、重新启动iptables服务

# service iptablesrestart

6、查看内核是否装载有上述配置的两个有关ftp模块

时间: 2024-11-07 14:02:13

设置iptables允许ssh、http、ftp服务的相关文章

使用iptables将内网ftp服务映射到其他内网服务器上

iptables一般的只需要关注两个表,一个是nat表,一个是filter表,其他表暂时用不到,然后nat表里有三个链,filter表里有三个链,总结两个表,五个链 入站数据流向:数据包到达防火墙后首先被PREROUTING链处理(是否修改数据包地址等),然后进行路由选择(判断数据包发往何处),如果数据包的目标地址是防火墙本机(如:Internet用户访问网关的Web服务端口),那么内核将其传递给INPUT链进行处理(决定是否允许通过等). 转发数据流向:来自外界的数据包到达防火墙后首先被PRE

iptables(4)开放被动模式FTP服务

开放被动模式FTP服务: (1)装载ftp追踪时的专用的模块: #modprobe nf_conntrack_ftp (2)放行请求报文: 命令连接:NEW,ESTABLISHED 数据连接:RELATED,ESTABLISHED # iptables -A INPUT -d LocalIP -p tcp --dport 21 -m state --stateNEW,ESTABLISHED -j ACCEPT # iptables -A INPUT -d LocalIP -p tcp -m st

ubuntu 开启ftp服务

一. 检查是否已安装 vsftpd vsftpd -v 二. 安装 vsftpd apt-get install vsftpd 三.  检查是否已安装好 vsftpd vsftpd -v systemctl status vsftpd.service 四.先查看iptables设置: #iptables -nL 防护墙方法: https://i.cnblogs.com/EditPosts.aspx?opt=1 五. 查看端口情况 iptables -nL 六. 搭建FTP服务 加载ip_conn

Centos 安装FTP配置目录权限,iptables设置ftp服务

Centos 安装FTP配置目录权限,iptables设置ftp服务 2012-07-06 admin Leave a comment Go to comments CentOS 安装vsftpd,设置Iptables 限制用户访问自己目录 安装好vsftpd后,打开配置文件: [root@hexuweb101 ~]$vi /etc/vsftpd/vsftpd.conf 1 [root@hexuweb101 ~]$vi /etc/vsftpd/vsftpd.conf 把下面几行注释去掉,让其配置

Linux SSH,FTP服务配置

CentOS-6.4-x86_64-minimal 0.网卡配置 参考:Linux系统\Centos没有网卡eth0配置文件怎么办? - http://jingyan.baidu.com/article/84b4f565cb7afa60f6da32d4.html 临时配置:ifconfig 设备名 IP地址 # ifconfig eth0 192.168.1.11 (设置后立即生效,不要重启网卡服务,否则又失效) 永久解决办法: 1)复制/etc/sysconfig/network-script

Ubuntu下安装FTP服务及使用(VSFTPD详细设置)(二)

vsftpd 作为一个主打安全的FTP服务器,有很多的选项设置.下面介绍了vsftpd的配置文件列表,而所有的配置都是基于vsftpd.conf这个配置文件 的.本文将提供完整的vsftpd.conf的中文说明.学习本文的内容将有助于你初步了解vsftpd的配置文件,但针对具体情况还需要制定具体的配置 方法. Vsftpd的配置文件: /etc/vsftpd/vsftpd.conf 主配置文件 /usr/sbin/vsftpd Vsftpd 的主程序 /etc/rc.d/init.d/vsftp

SuSE设置ftp服务

ftp状态查看: 输入命令service vsftpd status查看ftp服务运行状态,如状态为"vsftpd is running."则表示ftp服务已启动. ftp配置: 1.   用vi编辑器打开/etc/vsftpd文件,修改以下内容: 2.   去掉local_enable=YES行前注释 3.   将local_umask=022行修改为local_umask=002 4.   将anon_mkdir_write_enable设置为:anon_mkdir_write_e

FTP服务添加用户及设置权限

CentOS下安装vsftpd省略. 添加ftp账户: useradd ahaii -d /home/ftp/ -s /sbin/nologin 添加密码: passwd ahaii 限制该用户只能访问自己的家目录: vim /etc/vsftpd/vsftpd.conf#修改配置文件 chroot_list_enable=YES#打开注释 chroot_list_file=/etc/vsftpd/chroot_list#打开注释 vim chroot_list#/etc/vsftpd/目录下创

Ubuntu下的FTP服务的安装和设置

一 安装vsftpd 在安装前vsftpd,先更新apt-get下载的数据源输入如下命令: sudo apt-get update 然后安装vsftpd sudo apt-get install vsftpd 二 增加FTP账户 新建ubuntu账户ftp. sudo useradd -m ftp sudo passwd ftp 如果安装好vsftpd服务后在/home目录下有ftp目录,那么就忽略创建ftp目录命令,否则就输入以下命令,新建一个ftp目录并授权. mkdir /home/ftp