我的编程空间,编程开发者的网络收藏夹
学习永远不晚

iptable详解

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

iptable详解

查看iptables状态-重启


iptables 所在目录 /etc/sysconfig/iptables

service iptables status 查看iptables状态
service iptables restart iptables服务重启
service iptables stop iptables服务禁用


启动iptables  

modprobe ip_tables  

关闭iptables(关闭命令要比启动复杂)  

iptalbes -F  

iptables -X  

iptables -Z  

iptables -P INPUT ACCEPT  

iptables -P OUTPUT ACCEPT  

iptables -P FORWARD ACCEPT  

modprobe -r ip_tables  

依次执行以上命令即可关闭iptables,否则在执行modproble -r ip_tables时将会提示  FATAL: Module ip_tables is in use.
 
 
 
 iptables -L -n
 
 iptables -F 清除预设表filter中的所有规则链的规则
 iptables -X 清除预设表filter中使用者自定链中的规则
 
 
 iptables -L -n
 
 #抛弃所有不符合三种链规则的数据包
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP


#设置:本地进程 lo 的 INPUT 和 OUTPUT 链接 ; eth0的INPUT链
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -i eth0 -m state --state ESTABLISHED,RELATED -jACCEPT
iptables -A INPUT -i eth0 -m state --state NEW,INVALID -j LOG
iptables -A OUTPUT -o lo -j ACCEPT

#开放22端口ssh
 iptables -A INPUT -p tcp -i eth0 --dport ssh -j ACCEPT

#开放80端口web
iptables -A INPUT -p tcp -i eth0 --dport 80 -j ACCEPT

#开放21、20端口ftp
iptables -A INPUT -p tcp --dport 20 -j ACCEPT
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
 
#开放其他一些端 口  
iptables -A INPUT -p tcp --dport 1935 -j ACCEPT
iptables -A INPUT -p tcp --dport 8080 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT

#同上,开放需要端口的出口
iptables -A OUTPUT -p tcp --sport 1935 -j ACCEPT
。。。。
。。。。
。。。。

# 如使用vsftpd 使用了pasv 方式,如 pasv_min_port=6000 mx=7000 pasv_enable=YES之类
 iptables -A INPUT -p tcp --dport 6000:7000 -j ACCEPT
 iptables -A OUTPUT -p TCP --sport 6000:7000 -j ACCEPT
# 2个都要设,只设第一个不能下载,只设第二个不能上传



#限制 .37 可以连接哪些端 口,
 iptables -A INPUT -s 192.168.0.37 -p tcp --dport 21 -j ACCEPT
 iptables -A INPUT -s 192.168.0.37 -p tcp --dport 20 -j ACCEPT
 
 #注:因上方设置的iptables -A INPUT -p tcp --dport 20 -j ACCEPT  & iptables -A INPUT -p tcp --dport 21 -j ACCEPT
 #允许开放20.21到所有用户
 #所以要删除掉该规则
 iptables -D INPUT -p tcp --dport 20 -j ACCEPT
 iptables -D INPUT -p tcp --dport 21 -j ACCEPT
 
 
#允许loopback!(不然会导致DNS无法正常关闭等问题)

IPTABLES -A INPUT -i lo -p all -j ACCEPT (如果是INPUT DROP)

IPTABLES -A OUTPUT -o lo -p all -j ACCEPT(如果是OUTPUT DROP)
 
 
 
 #将以上规则保存到 文件 sudo 是不行的,需要root权限(没有设过的话, sudo passwd root 输入新的root密码即可。 然后su )
 iptables-save > /etc/iptables.up.rules
 
 修改 /etc/network/interfaces 脚本自动应用这些规则(末行是添加的)

auto eth0
iface eth0 inet dhcp
pre-up iptables-restore <  /etc/iptables.up.rules
post-down iptables-save >/etc/iptables.up.rules #关机时,把当前iptables 储存


附 vsftpd.conf 主要项
listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
pasv_min_port=6000
pasv_max_port=7000
pasv_enable=YES
ls_recurse_enable=YES
local_umask=022
file_open_mode=0755

这个FTP只供于管理员进行管理及上传工作,因此本地账号权限较大,要注意。
在/etc/vsftpd.chroot_list 只放root及该账号




代码:

#删除原来 iptables 里面已经有的规则
iptables -F
iptables -X

#抛弃所有不符合三种链规则的数据包
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP

#设置:本地进程 lo 的 INPUT 和 OUTPUT 链接 ; eth2的INPUT链
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -i eth2 -m state --state ESTABLISHED,RELATED -jACCEPT
iptables -A INPUT -i eth2 -m state --state NEW,INVALID -j LOG
iptables -A OUTPUT -o lo -j ACCEPT

#对其他主要允许的端口的 OUTPUT设置:
# DNS
iptables -A OUTPUT -o eth2 -p TCP --sport 1024:65535 --dport 53 -jACCEPT
iptables -A OUTPUT -o eth2 -p UDP --sport 1024:65535 --dport 53 -jACCEPT

#HTTP
iptables -A OUTPUT -o eth2 -p TCP --sport 1024:65535 --dport 80 -jACCEPT

#HTTPS
iptables -A OUTPUT -o eth2 -p TCP --sport 1024:65535 --dport 443 -jACCEPT

#Email 接受 和发送
iptables -A OUTPUT -o eth2 -p TCP --sport 1024:65535 --dport 110 -jACCEPT
iptables -A OUTPUT -o eth2 -p TCP --sport 1024:65535 --dport 25 -jACCEPT

# FTP 数据和控制
iptables -A OUTPUT -o eth2 -p TCP --sport 1024:65535 --dport 20 -jACCEPT
iptables -A OUTPUT -o eth2 -p TCP --sport 1024:65535 --dport 21 -jACCEPT

#DHCP
iptables -A OUTPUT -o eth2 -p TCP --sport 1024:65535 --dport 68 -jACCEPT
iptables -A OUTPUT -o eth2 -p UDP --sport 1024:65535 --dport 68 -jACCEPT

#POP3S Email安全接收
iptables -A OUTPUT -o eth2 -p TCP --sport 1024:65535 --dport 995 -jACCEPT

#时间同步服务器 NTP
iptables -A OUTPUT -o eth2 -p TCP --sport 1024:65535 --dport 123 -jACCEPT

#拒绝 eth2 其他剩下的
iptables -A OUTPUT -o eth2 --match state --state NEW,INVALID -jLOG



最后是有关于iptables存储的命令:

代码:

iptables-save >/etc/iptables.up.rule # 存在你想存的地方


代码:

iptables-restore </etc/iptables.up.rules #调用



因为iptables 在每次机器重新启动以后,需要再次输入或者调用,为了方便操作,使用

代码:

sudo gedit /etc/network/interfaces



代码:

auto ath0
    iface ath0 inet dhcp

后面加上

代码:

pre-up iptables-restore </etc/iptables.up.rules #启动自动调用已存储的iptables


代码:

post-down iptables-save >/etc/iptables.up.rule #关机时,把当前iptables 储存


免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

iptable详解

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

2024-04-02

centos 6.6默认iptable规则的示例分析

这篇文章将为大家详细讲解有关centos 6.6默认iptable规则的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。在自己电脑上新装了centos6.6虚拟机,然后装了nginx,没有进行任何其
2023-06-10

使用iptable和Firewalld工具来管理Linux防火墙连接规则

防火墙防火墙是一套规则。当数据包进入或离开受保护的网络空间时,将根据防火墙规则测试数据包的内容(特别是有关其来源、目标和计划使用的协议的信息),以确定是否应该允许数据包通过。下面是一个简单的例子:防火墙可以根据协议或基于目标的规则过滤请求.
2022-06-04

@Profile注解详解

@Profile:Spring为我们提供的可以根据当前环境,动态的激活和切换一系列组件的功能;开发环境develop、测试环境test、生产环境master数据源:(/dev) (/test) (/master)@Profile:指定组件在哪个环境的情况下才能
@Profile注解详解
2018-01-19

Spring注解详解

概述 注释配置相对于 XML 配置具有很多的优势:它可以充分利用 Java 的反射机制获取类结构信息,这些信息可以有效减少配置的工作。如使用 JPA 注释配置 ORM 映射时,我们就不需要指定 PO 的属性名、类型等信息,如果关系表字段和
2023-06-03

Java注解详解

目录 一、发现注解二、注解是什么1. 注解的本质2. 注解是针对Java编译器的说明 三、为什么要使用注解四、Java中常用的注解4.1 基础注解(spring-context、spring-we
2023-08-22
2023-09-02
2023-09-12

response.setcontenttype详解

response.setcontenttype是一个用于设置HTTP响应的内容类型的方法。它用于指定响应数据的MIME类型,以便客户端能够正确地解析和展示响应内容。常见的MIME类型包括:- text/html:用于HTML文档- text
2023-09-13
2024-04-02
2024-04-02

MySQL详解

MySQL 1、初识MySQL javaEE:企业级java开发 Web 前端(页面:展示,数据!) 后台(连接点:连接数据库JDBC,连接前端(控制视图跳转和给前端传递数据)) 数据库(存取数据,主要是存数据) 只会写代码,只是一个基
2023-08-18

【ThreadLocal详解】

ThreadLocal   ThreadLocal是一个用于实现线程数据隔离的一个类,每个线程访问时,通过Get、Set方法都会产生一个属于该线程的局部变量副本,当线程结束时,ThreadLocal及变量随着线程一起被回收。 Threa
2023-08-19

random.nextint()详解

random.nextInt() 是 Java 中 Random 类的一个方法,用于生成一个随机的整数。语法:random.nextInt()返回值:一个随机的整数。参数:该方法没有参数。应用:可以使用 random.nextInt() 方
2023-08-30

window.location.href详解

window.location.href是一个JavaScript属性,用于获取或设置当前页面的URL。详解:1. 获取当前页面的URL:通过访问window.location.href可以获取当前页面的URL。例如:```console.
2023-09-12

编程热搜

目录