设为首页
收藏本站
用户名
Email
自动登录
找回密码
密码
登录
注册
快捷导航
平台
Portal
论坛
BBS
文库
项目
群组
Group
我的博客
Space
搜索
搜索
热搜:
shell
linux
mysql
本版
用户
LinuxSir.cn,穿越时空的Linuxsir!
»
论坛
›
Linux 发行版讨论区 —— LinuxSir.cn
›
Debian Linux
›
分享一下我的iptables配置方法。
返回列表
查看:
1330
|
回复:
4
分享一下我的iptables配置方法。
[复制链接]
fender010
fender010
当前离线
积分
2454
IP卡
狗仔卡
发表于 2009-6-20 17:03:24
|
显示全部楼层
|
阅读模式
首先说没有什么技术含量,写出来有两个目的,
1.都来帮我看看有没有什么问题;
2.谁不知道怎么配置,可以照猫画虎。
本文中提到的文件的名字可以随便起,但是最好让人一看就懂,
本文中多数操作都需要root权限,
首先,在要写一个iptables的规则,放在/etc/iptables.rules里面,后面再说这个规则问题,
其次,你要设置系统在开机时加载这个规则,在/etc/network/if-pre-up.d/这个目录里面建一个叫iptables的文件,
内容如下:
#! /bin/bash
sh /etc/iptables.rules
复制代码
设置其可执行:
chmod +x iptables
复制代码
这样在开机的时候就会加载规则了。
最后,详细说说我的规则,按照我规则中的注释,稍微修改一下,就可以保护多数的个人电脑了,当然我这个规则是很简单的,只是保护我的个人电脑的,没有nat什么,
我的基本网络环境:
一个ip地址供给宿舍所有人使用,
所以有一个ip分享器来做dhcp服务器,
每台电脑都是使用dhcp来动态获得自己的网络配置信息,
配置文件如下:
################################################################################
#! /bin/sh
cmd="iptables"
in="INPUT"
out="OUTPUT"
for="FORWARD"
d="DROP"
a="ACCEPT"
nic="eth0"
dns1="my.dns.server.1"
dns2="my.dns.server.2"
dhcp="192.168.0.1"
p=" "
# 上面都是我定义的变量,如果你像测试一下这个规则可以简单地设置cmd="echo",然后执行这个文件就可以了,
outport_tcp="21 22 80 443 587 995 7000"
# 这里面定义我要使用的基于tcp的网络服务,
# 每打开一个端口就代表我将会使用一项对应的服务,
# 有其他的需要就添加对应的端口,有多余的就删除对应的端口,
# 端口的定义在/etc/servers里面都有,
# 21 22是ssh和ftp
# 443是加密的网络服务,
# 587 995是gmail的,使用ssl/tls协议的pop3和smtp服务,
# 7000是freenode和oftc的irc 服务,
outport_udp="123 "
# 这里面定义我要使用的基于udp的网络服务,
################################################################################
$cmd -F
$cmd -X
$cmd -Z
# 清空所有规则,
################################################################################
# default policy
$cmd -P $in $d
$cmd -P $for $d
$cmd -P $out $d
# 设置所有链的默认规则为拒绝,
################################################################################
# INPUT
# lo
$cmd -A $in -i lo -j $a
# 本地回路,必须打开,
# related and established
$cmd -A $in -i $nic -m state --state RELATED,ESTABLISHED -j $a
# 所有由我发起的会话所导致的相关数据包允许从eth0这个网卡进入我的主机,
# ftp
$cmd -A $in -i $nic -p tcp --dport 1024:65535 -j $a
# 被动式ftp需要打开1024到65535的端口,
# 不知道有没有其他的网络服务是像被动式ftp这样需要建立两个链接的?
################################################################################
# OUTPUT
# loop
for p in $outport_tcp
do
$cmd -A $out -p tcp --destination-port $p -j $a
done
# 这个循环打开所有的基于tcp的服务打开,
for p in $outport_udp
do
$cmd -A $out -p udp --destination-port $p -j $a
done
# 这个循环打开所有的基于udp的服务打开,
# dns
$cmd -A $out -p udp -d $dns1 --destination-port 53 -j $a
$cmd -A $out -p tcp -d $dns1 --destination-port 53 -j $a
$cmd -A $out -p udp -d $dns2 --destination-port 53 -j $a
$cmd -A $out -p tcp -d $dns2 --destination-port 53 -j $a
# 允许主机像dns服务器发送域名解析请求,否则只能输入ip来上网了,
# dhcp
$cmd -A $out -p udp -d $dhcp --destination-port 67 -j $a
# 允许主机和我的dhcp服务器建立链接来配置网络,
# lo
$cmd -A $out -o lo -j $a
# 本地回路,这个必须有。
########################################################################
复制代码
最后感谢一下在
[color="Red"]这个帖子
里面帮我的兄弟了。
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
显身卡
L.Lawliet
L.Lawliet
当前离线
积分
755
IP卡
狗仔卡
发表于 2009-6-22 10:35:18
|
显示全部楼层
收藏之 。有机会学习下
回复
支持
反对
使用道具
举报
显身卡
shpchp
shpchp
当前离线
积分
960
IP卡
狗仔卡
发表于 2009-10-31 23:09:00
|
显示全部楼层
我是这样做的:
在 network/if-pre-up.d/iptables 里写:
/sbin/iptables-restore < /etc/sysconfig/iptables
然后在 /etc/sysconfig/iptables 里直接写 "iptables规则", 注意是"iptables规则", 而不是"iptables脚本".
这样就与 Fedora/CentOS 的设置方法一样了 ...
回复
支持
反对
使用道具
举报
显身卡
fender010
fender010
当前离线
积分
2454
IP卡
狗仔卡
楼主
|
发表于 2009-11-1 00:01:53
|
显示全部楼层
哈哈,我对iptables不是太了解,有空认真学学。
回复
支持
反对
使用道具
举报
显身卡
DebianEdu
DebianEdu
当前离线
积分
55
IP卡
狗仔卡
发表于 2009-11-9 17:33:08
|
显示全部楼层
个人电脑上的iptables配置,我用Firestarter这个图形界面的iptables配置工具。
[PHP]$ sudo aptitude install firestarter[/PHP]
安装后,点几下就搞定了。
回复
支持
反对
使用道具
举报
显身卡
返回列表
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册
本版积分规则
发表回复
回帖后跳转到最后一页
浏览过的版块
Gentoo Linux
服务器架设、应用、维护
BSD 讨论专题
开源软件专题讨论
Ubuntu Linux 专题讨论
shell进阶应用、shell编程
SuSE Linux
Linux 基础讨论区(新手速成)
Archlinux讨论区
Linux 输入开发与研究
Copyright © 2002-2023
LinuxSir.cn
(http://www.linuxsir.cn/) 版权所有 All Rights Reserved.
Powered by
RedflagLinux!
技术支持:
中科红旗
|
京ICP备19024520号
快速回复
返回顶部
返回列表