Linux中iptables设置详细
无论如何iptables是一个需要特别谨慎设置的东西万一服务器不在你身边而你贸然设置导致无法SSH那就等着被老板骂吧呵呵。。。1.首先介绍一下指令和相关配置文件启动指令:service iptables start重启指令:service iptables restart关闭指令:service iptables stop然后是相关配置:/etc/sysconfig/iptables如何操作该配置呢vim /etc/sysconfig/iptables然后进去修改即可修改完了怎么办这里很多人会想到/etc/rc.d/init.d/iptables save指令但是一旦你这么干了你刚才的修改内容就白做了。。。具体方法是只修改/etc/sysconfig/iptables 使其生效的办法是修改好后先service iptables restart然后才调用/etc/rc.d/init.d/iptables save因为/etc/rc.d/init.d/iptables save会在iptables服务启动时重新加载要是在重启之前直接先调用了/etc/rc.d/init.d/iptables save那么你2.下面介绍一些指令用法主要还是man iptables看下相关资料才行-A指定链名-p指定协议类型-d指定目标地址--dport指定目标端口destination port 目的端口--sport指定源端口source port 源端口3.如果我不像修改文件直接打命令可以吗当然没问题步骤如下:例如我给SSH加放行的语句添加input记录 iptables -A INPUT -p tcp --dport 22 -j ACCEPT添加output记录 iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT4.接下来说明一下步骤如果机器不在我身边我只能SSH进去做iptables规则那么我必须注意每一步千万别搞错了否则就SSH链接不上都有可能1.如果SSH端口是22这里不建议用默认端口最好改掉SSH端口iptables -A INPUT -p tcp --dport 22 -j ACCEPTiptables -A OUTPUT -p tcp --sport 22 -j ACCEPT注意要/etc/rc.d/init.d/iptables save以下每一步都最好执行一遍此语句以下不再累述。2.vim /etc/sysconfig/iptables确定是否已经加入配置可以的话执行service iptables restart重启后生效3.下面是很危险的操作如果你第一步没做就会直接可能导致你连不上SSH此步骤前切记执行第一步iptables -P INPUT DROPiptables -P OUTPUT DROPiptables -P FORWARD DROP这个步骤是把所有不符合自己配置的规则ACCEPT的连接全部DROP掉执行完以后如果咱SSH还没掉那么谢天谢地安全了重启下iptables后继续下面的配置4.下面咱就不细说了具体就是看自己服务器要开放哪些端口或者是要访问哪些端口来做具体的配置下面是我自己的机器的配置/etc/sysconfig/iptables文件配置如下:# Generated by iptables-save v1.4.7 on Fri Mar 2 19:59:43 2012*filter:INPUT DROP [0:0]:FORWARD DROP [0:0]:OUTPUT DROP [8:496]-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT#ping使用的端口-A INPUT -p icmp -j ACCEPT-A INPUT -i lo -j ACCEPT-A INPUT -s 127.0.0.1/32 -d 127.0.0.1/32 -j ACCEPT-A INPUT -s 192.168.2.200/32 -d 192.168.2.200/32 -j ACCEPT#允许服务器自己的SSH对外部请求来说服务器是目标所以使用--dport-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT#80端口不用说了吧服务器网站访问端口-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT-A INPUT -p tcp -m tcp --dport 3306 -j ACCEPT-A INPUT -p tcp -m tcp --dport 11211 -j ACCEPT-A INPUT -p tcp -m tcp --dport 11212 -j ACCEPT-A FORWARD -j REJECT --reject-with icmp-host-prohibited#53端口是DNS相关TCP和UDP都要配置-A INPUT -p tcp -m tcp --dport 53 -j ACCEPT-A INPUT -p udp -m udp --dport 53 -j ACCEPT#ping使用的端口-A OUTPUT -p icmp -j ACCEPT-A OUTPUT -s 127.0.0.1/32 -d 127.0.0.1/32 -j ACCEPT-A OUTPUT -s 192.168.2.200/32 -d 192.168.2.200/32 -j ACCEPT#允许服务器SSH到其他机器使用外部端口就使用--dport-A OUTPUT -p tcp -m tcp --dport 22 -j ACCEPT#允许服务器自己的SSH自已为源输出就使用--sport-A OUTPUT -p tcp -m tcp --sport 22 -j ACCEPT#访问外部网站80端口使用外部端口就使用--dport-A OUTPUT -p tcp -m tcp --dport 80 -j ACCEPT#如果服务器需要访问外部网站那么OUTPUT也需要配置53端口使用外部端口就使用--dport-A OUTPUT -p tcp -m tcp --dport 53 -j ACCEPT-A OUTPUT -p udp -m udp --dport 53 -j ACCEPT#如果有访问外部邮箱那么打开邮箱相关端口使用外部端口就使用--dport-A OUTPUT -p tcp -m tcp --dport 465 -j ACCEPT-A OUTPUT -p tcp -m tcp --dport 25 -j ACCEPT-A OUTPUT -p tcp -m tcp --dport 110 -j ACCEPT#服务器网站访问端口自已为源输出就使用--sport-A OUTPUT -p tcp -m tcp --sport 80 -j ACCEPT-A OUTPUT -p tcp -m tcp --sport 3306 -j ACCEPT-A OUTPUT -p tcp -m tcp --sport 11211 -j ACCEPT-A OUTPUT -p tcp -m tcp --sport 11212 -j ACCEPTCOMMIT5.可能有时候需要删除规则最简单就是修改一下/etc/sysconfig/iptables然后service iptables restart,最后/etc/rc.d/init.d/iptables save即可。在网上找了一下删除规则的方法语法是 iptables -D chain rulenum [options]其中 chain 是链的意思就是INPUT FORWARD 之类的rulenum 是规则的编号。从1 开始。可以使用 --line-numbers 列出规则的编号所以例如上面要删除一个INPUT链的规则的话可以这样iptables -D INPUT 3意思是删除第3条规则。还有第二种方法。第二种办法是 -A 命令的映射不过用-D替换-A。当你的链中规则很复杂而你不想计算它们的编号的时候这就十分有用了。也就是说你如何用iptables -A.... 语句定义了一个规则则删除此规则时就用 -D 来代替- A 其余的都不变即可。说一下上面的 --line-numbers 选项如下面的命令iptables -L INPUT --line-numbers 列出INPUT 链所有的规则num target prot opt source destination1 REJECT tcp -- anywhere anywhere tcp dpt:microsoft-ds reject-with icmp-port-unreachable2 REJECT tcp -- anywhere anywhere tcp dpt:135 reject-with icmp-port-unreachable3 REJECT tcp -- anywhere anywhere tcp dpt:netbios-ssn reject-with icmp-port-unreachable......删除指定行规则6.最后补充一下如果想针对某IP进行单独开放端口可以如下配置如果我需要对内网某机器单独开放mysql端口应该如下配置iptables -A INPUT -s 192.168.2.6 -p tcp -m tcp --dport 3306 -j ACCEPT7.彻底禁止某IP访问:#屏蔽单个IP的命令是iptables -I INPUT -s 123.45.6.7 -j DROP#封整个段即从123.0.0.1到123.255.255.254的命令iptables -I INPUT -s 123.0.0.0/8 -j DROP#封IP段即从123.45.0.1到123.45.255.254的命令iptables -I INPUT -s 124.45.0.0/16 -j DROP#封IP段即从123.45.6.1到123.45.6.254的命令是iptables -I INPUT -s 123.45.6.0/24 -j DROP指令I是insert指令 但是该指令会insert在正确位置并不像A指令看你自己的排序位置因此用屏蔽因为必须在一开始就要加载屏蔽IP所以必须使用I命令加载然后注意执行/etc/rc.d/init.d/iptables save进行保存后重启服务即可

相关新闻

高等数学笔记 C8-9

高等数学笔记 C8-9

八、线性代数 - 向量向量:n个独立的对象,线性。向量a-> xiyjzk有方向,有长度,叫做矢量。区别于标量。维数相同的才能加减法,平行四边形法则。向量的数量积(内积、点积),变成了一…

2026/7/28 15:40:39 阅读更多 →
linux中用户栈与内核栈有什么区别

linux中用户栈与内核栈有什么区别

内核在创建进程时,会同时创建task_struct和进程相应堆栈。每个进程都会有两个堆栈,一个用户栈,存在于用户空间,一个内核栈,存在于内核空间。当进程在用户空间运行时,CPU堆栈寄存器的内容是用户堆栈地址&…

2026/7/28 15:39:39 阅读更多 →
电动汽车充电负荷模拟与蒙特卡洛法应用

电动汽车充电负荷模拟与蒙特卡洛法应用

1. 电动汽车充电负荷模拟研究概述电动汽车充电负荷模拟是电力系统规划和运行中的关键课题。随着电动汽车保有量快速增长,充电行为对电网的影响日益显著。我们团队采用蒙特卡洛法建立了包含四种典型充电模式的负荷模拟系统,这套方法已经在实际电网规划项目…

2026/7/28 15:39:39 阅读更多 →

最新新闻

物联网设备低功耗优化:从6个月到3年的电池寿命提升

物联网设备低功耗优化:从6个月到3年的电池寿命提升

1. 项目背景与核心挑战在物联网设备和便携式电子设备中,不可充电的初级电池(如纽扣电池、AA/AAA电池)是最常见的供电方案。这类电池一旦耗尽就必须更换,而在某些部署场景中(如远程传感器、植入式医疗设备)&…

2026/7/28 15:46:41 阅读更多 →
Unity Shader多Pass渲染:从Standard Shader源码解析到自定义AddPass实战

Unity Shader多Pass渲染:从Standard Shader源码解析到自定义AddPass实战

1. 项目概述:为什么我们要深入AddPass?如果你在Unity里做过一些稍微复杂点的渲染效果,比如给角色加个发光轮廓,或者让武器在特定时候高亮显示,那你大概率已经接触过或听说过“多Pass渲染”。Standard Shader作为Unity内…

2026/7/28 15:46:41 阅读更多 →
百考通答辩PPT生成,精准定位,智能生成,省时省力

百考通答辩PPT生成,精准定位,智能生成,省时省力

毕业答辩是每一位学子学术生涯中的重要时刻,它不仅是对研究成果的展示,更是对学术能力的全面检验。然而,面对紧张的答辩时间、严格的评审要求,如何将复杂的研究内容凝练成清晰有力的演示文稿,成为困扰无数学生的难题。…

2026/7/28 15:46:41 阅读更多 →
物联网设备电源管理优化:NBM7100A与STM32F427ZI实战

物联网设备电源管理优化:NBM7100A与STM32F427ZI实战

1. 项目背景与核心挑战在物联网设备和大规模传感器网络部署中,初级电池(不可充电电池)供电的设备面临一个根本性矛盾:设备需要长期稳定运行(通常要求5-10年),但电池容量受物理限制无法无限提升。…

2026/7/28 15:46:41 阅读更多 →
LabVIEW 做交流氩弧焊弧压跟踪,3 种方案实测对比

LabVIEW 做交流氩弧焊弧压跟踪,3 种方案实测对比

焊接自动化中,弧长控制是最头疼的问题之一。弧长过短,钨极扎进熔池;弧长过长,焊缝变宽、熔深不够。手工焊靠师傅手感,自动化焊接只能通过电弧电压反馈来控制弧长——因为TIG焊电源的陡降特性决定了电弧电压与弧长有良好…

2026/7/28 15:46:41 阅读更多 →
Matlab仿真实现垂直泊车路径规划算法解析

Matlab仿真实现垂直泊车路径规划算法解析

1. 垂直泊车路径规划与自动泊车仿真概述垂直泊车是自动泊车系统(APS)中最具挑战性的场景之一,需要车辆在有限空间内完成精确的横向移动和角度调整。Matlab/Simulink因其强大的数值计算和可视化能力,成为验证泊车算法的首选工具。我在汽车电子行业参与过多…

2026/7/28 15:45:40 阅读更多 →

日新闻

告别臃肿!3步让你的暗影精灵笔记本重获新生

告别臃肿!3步让你的暗影精灵笔记本重获新生

告别臃肿!3步让你的暗影精灵笔记本重获新生 【免费下载链接】OmenSuperHub Control Omen laptop performance, fan speeds, and keyboard lighting, and unlock power limits. 项目地址: https://gitcode.com/gh_mirrors/om/OmenSuperHub 你是否也曾为官方Om…

2026/7/28 0:00:43 阅读更多 →
RAG必踩坑!财报法规检索不准?这款开源工具让答案浮出水面,准确率飙升98.7%!

RAG必踩坑!财报法规检索不准?这款开源工具让答案浮出水面,准确率飙升98.7%!

做 RAG 的人应该都踩过这个致命的坑:把几百页的财报、法规、技术手册扔给向量库,问一个具体问题,搜出来的全是沾边但没用的内容 —— 关键信息要么被硬切块拆碎了,要么藏在几十条结果的最下面。语义相似≠真正相关,这个…

2026/7/28 0:00:43 阅读更多 →
抖音视频文案提取工具全指南:免费2026版、手机App、在线工具一网打尽

抖音视频文案提取工具全指南:免费2026版、手机App、在线工具一网打尽

2026年做短视频运营,从抖音上扒文案早就不是偷偷抄笔记的事了。我刚开始做内容的时候,每天刷半小时抖音,手动把爆款视频的口播敲进备忘录,一条2分钟的视频得花十来分钟,碰到语速快的还要反复回听。后来试了一圈工具&am…

2026/7/28 0:00:43 阅读更多 →

周新闻

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 数据集6000张 完整源码已标注数据集训练好的模型环境配置教程程序运行说明文档,可以直接使用!系统支持图片、视频、摄像头等多种方式检测裂缝,功能强大实用。 1数据集6000张 8各类别

2026/7/28 12:04:22 阅读更多 →
深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

pubg数据集 精选原图1.42万数据 1.49万标签 无任何重复、算法增强或冗余图像! pubg绝地求生目标检测数据集 1分类:e_body,14905个标签,txt格式 共计14244张图,99%为640*640尺寸图像 适合yolo目标检测、AI训练关键词&am…

2026/7/28 8:29:16 阅读更多 →
Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex检测数据集数据集详情检测类别: allies enemy tag图片总量:7247张训练集:5139张验证集:1425张测试集:683张标注状态:全部已标注,即拿即用数据格式:支持YOLO格式及其他格式&#…

2026/7/28 5:03:42 阅读更多 →

月新闻