如何在Redhat 6.1上用ipchains构建防火墙和IP伪装
发布日期: 1999-10-15
内容:
来源:中国Linux论坛
作者:吴阿亭
简介:
Linux 2.2内核用ipchains代替了2.0内核中的
ipfwadm,在Redhat 6.0/6.1的版本中,ipfwadm不能再用
了。本文旨在介绍如何设置一个基本的防火墙系统和IP
伪装,允许内部用户用IP伪装上网,ipchains较之以前的
ipfwadm语法变动很大,如你想了解更多的命令和语法,
可以参考一篇网友翻译的中文ipchains howto
(http://www.hncd.gov.cn/linux) . 也可运行ipchains
--help
获得帮助。另外,本文的设置主要针对专线用户基本的
防火墙和IP伪装设置,也可供拨号用户参考。
思路:
一般而言,实现Linux防火墙功能有两种策略,一种
是首先全面禁止所有的输入/输出/转发包,然后根据需
要逐步打开所要求的各项服务,这种方式最安全,但必
须全面考虑到自己所要使用的各项服务功能,不能有任
何遗漏,如果你对要实现的某种服务和功能不能清楚地
知道应该打开哪些服务和端口,那会比较麻烦;
第二种方式是首先默认打开所有的输入/输出包,(对
转发包,不必打开,因为内部网段用保留地址,不能直
接与互联网交换数据,我们是通过用IP伪装的方式透明
地进行交换数据的),然后禁止某些危险包,IP欺骗
包,广播包,ICMP服务类型攻击等,对于应用层服务象
http,sendmail,pop3,ftp等,若不打算提供某些服务,
就不要启动它,或者根本就不要安装,这种方式虽然没
有第一种方式更安全,但是比较方便,容易配置,用户
不必过多地了解该如何打开一种服务(如FTP)所需要执
行的ipchains命令细节就能配置一个比较安全的防火墙
系统。
本文就采用第二种方式配置一个基本的防火墙系统,我的
内部网段使用192.168.11.0,eth0为外部网段网卡接
口,eth1为内部网段网卡接口。
实现:
1. 安装完系统后,在/etc/rc.d/目录下创建一个
script叫ipchains.rules(执行#chmod u+x
ipchains.rules确保为可执行文件)然后加一
行/etc/rc.d/ipchains.rules到/etc/rc.d/rc.local
中,以确保每次机器重新启动后即运行所设定的各项防
火墙规则。
下面为该文件内容:
--------------------------
#!/bin/sh
echo "Starting ipchains firewall rules..."
# refresh all firewall rules
/sbin/ipchains -F forward
/sbin/ipchains -F input
/sbin/ipchains -F output
# setup default firewall rules
/sbin/ipchains -P forward DENY
/sbin/ipchains -P input ACCEPT
/sbin/ipchains -P output ACCEPT
external_interface=a.b.c.d
# setup Loopback interface
/sbin/ipchains -A input -j ACCEPT -i lo
/sbin/ipchains -A output -j ACCEPT -i lo
# disabling IP spoofing
/sbin/ipchains -A input -j DENY -i eth0 -s
192.168.0.0/16
/sbin/ipchains -A input -j DENY -i eth0 -d
192.168.0.0/16
/sbin/ipchains -A output -j DENY -i eth0 -s
192.168.0.0/16
/sbin/ipchains -A output -j DENY -i eth0 -d
192.168.0.0/16
/sbin/ipchains -A input -j DENY -i eth0 -s
$external_interface/32
/sbin/ipchains -A output -j DENY -i eth0 -d
$external_interface/32
#refuse packets claiming to be to or from the
loopback interface
/sbin/ipchains -A input -j DENY -i eth0 -s
127.0.0.0/8
/sbin/ipchains -A input -j DENY -i eth0 -d
127.0.0.0/8
/sbin/ipchains -A output -j DENY -i eth0 -s
127.0.0.0/8
/sbin/ipchains -A output -j DENY -i eth0 -d
127.0.0.0/8
#refuse broadcast address source packets
/sbin/ipchains -A input -j DENY -i eth0 -s
255.255.255.255
/sbin/ipchains -A input -j DENY -i eth0 -d
0.0.0.0
#refuse multicast/anycast/broadcast address
/sbin/ipchains -A input -j DENY -i eth0 -s
240.0.0.0/3
#forwarding all internal traffic
/sbin/ipchains -A forward -j ACCEPT -i eth1 -s
192.168.11.0/24 -d 192.168.11.0/24
#setup IP Masquerading rules
echo "1" > /proc/sys/net/ipv4/ip_forward
注:你也可以通过设置/etc/sysconfig/network文件启
动IP转发,改那一行
FORWARD_IPV4=true即可,这样就不必设置上面的
echo行了。
# add modules for ftp, cuseeme, irc, real audio,
etc...
/sbin/modprobe ip_masq_ftp
/sbin/modprobe ip_masq_quake
/sbin/modprobe ip_masq_irc
/sbin/modprobe ip_masq_user
/sbin/modprobe ip_masq_raudio
#starting IP masquerading
/sbin/ipchains -A forward -j MASQ -i eth0 -s
192.168.11.0/24
注:如果你仅仅希望让部分用户进行IP伪装,你也可以
个别设置,如
/sbin/ipchains -A forward -j MASQ -i eth0 -s
192.168.11.3/32
/sbin/ipchains -A forward -j MASQ -i eth0 -s
192.168.11.23/32
---------------------------------
其它防火墙安全事项:
上面的设置启动了一个基本的防火墙系统,禁止IP欺
骗,广播包,但对于一个完整的防火墙系统,仍然要注
意下面几点:
1. 设置/etc/inetd.conf,禁止所有不需要的服务,象
所有的R命令,finger,talk等,一般而言,仅保留ftp,
telnet服务便于内部维护用途,同时设置
/etc/hosts.allow和/etc/hosts.deny,仅允许内部某些
管理用户可以telnet/ftp到该防火墙,当然,更安全的
办法是禁止所有的inetd服务,对ftp,telnet,安装
SSH,用SSH/scp代替telnet和ftp。
2. 启用影子口令(shadow password),简单的两个命令
是pwconv(启用影子口令)和pwunconv(恢复原状态),
Redhat 6的版本默认安装时已经启动了shadow
password,这样使得远程用户获得根密码更为困难,因为
影子口令使用/etc/shadow 存储口令文件,该文件仅仅
被root可读。
3.运行ntsysv检查,看是否启动了不需要的后台程序,
记住:仅仅启动那些你希望提供的服务后台程序,最大
限度地确保安全。
4.创建尽可能少的用户帐号,不断升级有安全漏洞的软
件包。
相关推荐
可视化大屏系列(5):设备状态面板与数据分析仪表盘
在这篇文章中,我们将重点讨论如何通过智能化手段提升工地设备的管理效率与维护质量。随着智能工地系统的不断发展,设备监控与维护管理变得尤为重要。本篇将从 设备状态实时监控、自动化维护提醒、设备管理与维修记录 三个方面入手,展示如何通过 Vue3 和 ECharts 构建一个智能化的设备管理平台,实时采集和展示设备运行状态、及时生成维护提醒并记录维修历史,以提高设备的使用效率与安全性。我们还将结合实际代码示例,详细讲解如何实现这些功能,帮助你在智能工地项目中实现设备管理的智能化、数字化和自动化。
构建基于ipchains的Linux防火墙
众所周知,Linux可以作为一个优秀的防火墙软件使用。无论是结合Web或FTP网站使用,还是作为内部LAN的前端服务器,Linux都能够为构造满足用户特殊需求的防火墙提供必需的工具。 ipchains内建于Linux内核,它是一个在系统之间拒绝、接受、路由数据包的基本防火墙工具。由于有了ipchains,再加上Linux操作系统固有的低成本优势,对于LAN或者连接Internet的企业网
perftest实战:从零到一,精准评估RDMA网络性能
想象一下,两台服务器传输数据就像在同一个主板上交换内存,这种零拷贝、低延迟的特性,正是高性能计算、分布式存储等场景梦寐以求的。对于云环境用户,主流云厂商现在都提供RDMA实例(比如AWS的EFA、阿里云的eRDMA)。但要注意,不同机型支持的RDMA协议版本可能不同,这会直接影响测试结果的上限值。记得记录每次测试的BW average值,绘制成曲线图后,你可能会发现类似"阶梯状"的性能变化,这通常与网卡的DMA引擎设计有关。在云环境中,由于虚拟化层的影响,延迟会比裸金属高20-30%。
配置 firewall 防火墙的地址伪装和端口转发实例
网关服务器和网站服务器都采用centos 7操作系统; 网关服务器安装3块千兆网卡,分别连接在Internet、企业内网、网站服务器。 要求如下: 网关服务器连接互联网卡ens33配置为公网IP地址,分配到firewall的external区域;连接内网网卡ens37地址为192.168.1.1,分配到firewall的trusted区域;连接服务器网卡ens38地址为192.168.2.1,分配到firewall的DMZ区域。 网站服务器和网关服务器都通过SSH来远程管理,为了安全,将SSH默认端口
下采样新突破!ADown模块让YOLOv11多尺度特征提取更精准
ADown 凭借可编程梯度信息与多分支特征聚合的创新设计,打破了传统下采样在特征保留上的固有局限。本教程从原理到代码实现,再到工业场景适配,完整呈现了其在 YOLOv11 中的集成路径。只需简单新增模块脚本并修改配置文件,你的目标检测模型就能在多尺度特征捕捉能力上实现跨越式提升——无论是学术研究中的小目标检测突破,还是工业场景下的复杂多尺度任务落地,ADown 都能成为你攻克下采样瓶颈的利器。现在就动手尝试,让你的检测模型在下一代下采样技术的创新中再上一个台阶吧。
Coze智能体开发:如何搭建一个生成长文本的工作流
扣子工作流提供了流程定制化的能力,我们可以把长文生成的流程拆分为多个步骤,例如先通过大模型节点生成大纲、再使用循环节点依次扩写各个段落,最后将各个段落组合起来,从而实现长文生成流程。此工作流可适用于学术写作、商业报告、小说创作等多种场景。
用Linux+IPChains代替Windows+WinGate
用Linux+IPChains代替Windows+WinGate张中华(mike_z@21cn.com),2000.12.02任务:办公室有10台电脑,组成局域网,其中1台名为gate的机器配有ISDN卡,可拨号上网,另外9台机器也要上网,由gate机器做代理或网关,共享其ISDN设备。原来的方案是:gate机器上的操作系统是Win98,使用的代理软件是WinGate。现在,gate机器
如何让 Mac mini 24小时不休眠运行 OpenClaw
如果 OpenClaw 每 5-10 分钟自动退出,launchd 连续 4 次快速重启后会判定为崩溃循环并卸载服务。:方案一(pmset)+ 方案三(launchd)组合使用,既防止系统休眠,又保证 OpenClaw 开机自启和崩溃自动恢复。:caffeinate 只在进程运行期间有效,终端关闭或进程结束后系统恢复正常睡眠策略。这条命令会自动创建 launchd plist 并启用服务,是最推荐的方式。替换为你的实际用户名路径,Node.js 路径也要改成你自己的。确保 plist 中有。
透明的网关:在Linux上运行IPchains(转)
透明的网关:在Linux上运行IPchains(转)[@more@] 一、前言 在很多大学和科研机构里,合法的ip和端口并不多,因此很多部门都是采用代理服务器上网,用微软的Proxy Server固然方便,不过效率低,性能...
基于Simulink环境,提供一个关于如何对无人机电源DC-DC变换器进行仿真建模的示例
无人机电源要求:无人机的各个子系统(如电机、传感器、通信模块等)可能需要不同级别的电压供应。重要性稳定性:稳定的电源是保证无人机各部件正常工作的基础。效率:高效的电源管理可以显著增加飞行时间和任务执行能力。挑战多负载适应性:需要能够为不同负载提供合适的电压和电流。动态响应:快速响应负载变化的能力对于维持系统稳定性至关重要。首先明确要模拟的任务内容。设计一个能够在不同负载条件下为无人机提供稳定电压的DC-DC变换器。根据无人机的工作状态调整控制策略以维持最佳性能。
orange软件:入门使用
orange做数据分析契机实验手册目录orange软件部分界面展示小试牛刀:数据导入和展示小试牛刀:散点图绘制总结 契机 今天在上大数据时代实验课,作为一名软件工程专业的大三学生,在上这节公选课之前就决定这节课做完这个学期所有的实验报告,可以说“有亿点”不屑;尤其当老师说Python很麻烦的时候,我更是震惊了,因为我接触过这么多编程语言,Python真的很友好了,很傻瓜,但是当老师打开实验手册的时候,我真香了!!!下面先来看看手册的目录: 实验手册目录 为什么会真香呢,因为目录里这些有好多机器学习算法!
简易防火墙建置与流量统计
1. 序言 防火墙基本上是为了预防别人来存取你的网络,进而管制网络上资料的进出,防火墙一端连接外部的网络(经由真实的IP),另一端则连接内部的网络(虚拟的IP),将你内部的网络与外部的网络给隔离开,防火墙成了进入你内部网络的唯一通道,因此任何进出的资料都要经过防火墙,再经由防火墙来决定是否能够通行,因此对于安全性更多加了一份保障。 另外在本文中也介绍两个重量级的软件,方便监看网络流量和
基于ESP32的智能健康监测系统开发
本文介绍了如何基于ESP32开发智能健康监测系统,从硬件选型、系统架构到软件实现的每一个环节。通过ESP32的Wi-Fi功能、传感器模块和云平台的结合,我们实现了实时健康数据监测、远程查看、报警等功能。系统的低功耗特性使得其适用于长期健康监测,能够为用户提供更便捷的健康管理方案。随着技术的不断发展,未来智能健康监测系统将进一步发展。例如,增加更多的传感器,提升数据分析能力,甚至通过人工智能算法来预测用户的健康趋势,为用户提供个性化的健康建议。
Linux2.4内核中iptables新增功能指南
一 本文目的 本文主要是探讨 Linux 2.4 内核中的iptables 的各种新增功能和使用方法,如何有效 地使用这些新增的功能设置企业的防火墙规则,举例说明了新增功能在企业中的应用。 二 操作环境 Redhat Linux 7.1自带的模块化内核,专线连接互联网,两块网卡的防火墙,内部网段 为 10.0.0.0/255.255.255.0, 防火墙外部网卡接口地址为1.2.3.4。 三 ip
锂电池充电器电路设计 里面有电路
锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。
Camera2Demo
在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作
外界访问linux下的端口,连接不上
需要在linux的防火墙中将端口开放 vi /etc/sysconfig/iptables 添加 -A INPUT -m state --state NEW -m tcp -p tcp --dport 6379 -j ACCEPT
SAP B1中文培訓教材_SDK
公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说
ipchains参数介绍[引用]
Ipchains 被用来安装、维护、检查Linux内核的防火墙规则。规则可以分成四类:IP input链、IP output链、IP forward链、user defined 链。 一个防火墙规则指定包的格式和目标。当一个包进来时, 核心使用input链来决定它的命运。 如果它通过了, 那么核心将决定包下一步该发往何处(这一步叫路由)。假如它是送往另一台机器的, 核心就运用forward链。
计算机控制技术及应用
《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。
[收藏] 封包过滤防火墙ipchains/iptables的学习资料列表!
1. netfilter/iptables 简介 -- IBM developerworks 使用 netfilter/iptables 为 Linux(内核 2.4.x)配置防火墙 2. Linux 防火牆入門 -- 臥龍小三 介紹如何利用 Linux 來建構一個簡易的校園網路防火牆系統 3. Linux 2.4 Packet Filtering HOWTO --
理解 Linux 动态库加载:LD_LIBRARY_PATH
flyfish
USB 技术系列 11 · USB Linux 驱动框架
本文系统解析Linux USB驱动框架,涵盖USB Core、HCD(xhci-hcd/dwc3)、类驱动(CDC/HID/Mass Storage)分层架构,详解usb_device_id匹配、probe/disconnect生命周期及Device Tree配置。结合RISC-V N300实战,揭示Host/Device双模式驱动开发核心逻辑,助力嵌入式BSP开发者掌握USB子系统全栈能力。
Linux-iostat命令详解
Linux命令学习记录
Linux 服务器性能排查手册(2026):CPU、内存、磁盘IO、网络四大瓶颈定位
iptables 四表五链模型、firewalld zone 信任级别、云安全组与主机防火墙的关系与优先级,避坑改了防火墙把自己挡在服务器外面的翻车事故。
Linux rm 误删文件恢复实操教程
Linux使用rm删除文件时,并不会直接抹除磁盘上的数据,只是移除文件索引,让系统不再识别这块空间。只要没有写入新数据,原有扇区内容就会保留。新文件写入才有可能覆盖这些区域,一旦覆盖就很难找回。恢复的本质就是扫描磁盘,找到这些还存在、但索引丢失的数据条目,再把它们导出保存到其他分区。越早停止写入,恢复成功的概率越高。
Windows/Linux下强实时运动控制内核(二):基于Qt的Delta机械手的开发应用
强实时运动控制内核MotionRT750下Qt开发Delta机械手的完整开发流程。
Linux epoll 一篇讲透:从 select/poll 到红黑树、LT/ET,再到完整 TCP 服务器
一万个客户端已经连上服务器,眼下只有十个客户端发来了数据。服务器怎样把时间花在这十个连接上?理解这个问题,就抓住了 epoll 的主线。接下来,我们沿着“为什么需要它 → 接口怎么用 → 内核如何实现 → LT/ET 怎么写 → 完整服务器怎么运行”的顺序,把知识连起来。**阅读基础:**了解socketbindlistenaccept的基本用途即可。本文示例面向 Linux,服务器使用 C++17,实验脚本使用 Python 3。
Linux 网络基础详解:IP、子网、路由与 ip、ss 命令实战
建库建表、增删改查、连接查询(内连左连右连)、聚合函数、权限控制 GRANT/REVOKE,每条命令配可运行示例,零基础也能跟着敲会 SQL 基础。
3365



被折叠的 条评论
为什么被折叠?



