Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

我利用DNAT配置的端口映射用不了,请帮我看看?

[复制链接]
platinum 发表于 2004-10-26 22:46:31 | 显示全部楼层
需要知道外网IP,你自己用WAN的IP去替换1.2.3.4就行了
另外,你不要开太多服务,如果需要封锁内网,你打开某个管理IP好了,现在是对内网全开
回复

使用道具 举报

platinum 发表于 2004-10-26 22:48:22 | 显示全部楼层
另外,最好不要把所有东西都加在rc.local里
我是写一个shell,起名叫firewall,加上执行权限,放在/usr/local/sbin里
在/etc/rc.local里加入/usr/local/sbin/firewall即可
回复

使用道具 举报

 楼主| jk0wg 发表于 2004-10-26 23:09:52 | 显示全部楼层
那么是不是这样呢:
touch /usr/local/sbin/firewall
chmod u+x /usr/local/sbin/firewall
你说的在/etc/rc.local里加入/usr/local/sbin/firewall是像这样:
echo "/usr/local/sbin/firewall" >>/etc/rc.d/rc.local   是这样加吗?? 还是要编辑rc.local加入/usr/local/sbin/firewall    请指教??

[ Last edited by jk0wg on 2004-10-26 at 23:12 ]
回复

使用道具 举报

platinum 发表于 2004-10-26 23:14:26 | 显示全部楼层
touch是产生一个0字节的文件
你上面的做法,firewall里面没有内容啊:)
回复

使用道具 举报

 楼主| jk0wg 发表于 2004-10-26 23:41:21 | 显示全部楼层
我知道啊~  还要用vi /usr/local/sbin/firewall把你提供的哪个插入啊~
这么说在/etc/rc.local里加入/usr/local/sbin/firewall是像这样:
echo "/usr/local/sbin/firewall" >>/etc/rc.d/rc.local   吗??
回复

使用道具 举报

 楼主| jk0wg 发表于 2004-10-26 23:46:41 | 显示全部楼层
像下面这样对了吗??  

touch /usr/local/sbin/firewall
chmod u+x /usr/local/sbin/firewall
echo  "/usr/local/sbin/firewall" >>/etc/rc.d/rc.local
vi /usr/local/sbin/firewall
#! /bin/bash
//下面这行的哪个1不需要引号吗??
echo 1 > /proc/sys/net/ipv4/ip_forward
IPT = "/sbin/iptables"
$IPT -F -t filter
$IPT -F -t nat
$IPT -P INPUT DROP
$IPT -P OUTPUT ACCEPT
$IPT -P FORWARD ACCEPT
$IPT -t nat -P PREROUTING ACCEPT
$IPT -t nat -P POSTROUTING ACCEPT
$IPT -t nat -P OUTPUT ACCEPT

# ALLOW ALL in PRIVATE NET
$IPT -A INPUT -i lo -j ACCEPT
$IPT -A INPUT -i eth1 -j ACCEPT

# ICMP
$IPT -A INPUT -p icmp -m limit --limit 1/s --limit-burst 10 -j ACCEPT

# KEEP CONNECTIONS
$IPT -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

# NAT
$IPT -t nat -A POSTROUTING -s 192.168.0.0/24 -j MASQUERADE
$IPT -t nat -A PREROUTING -s ! 192.168.0.0/24 -d 1.2.3.4 -p tcp --dport 8080 -j DNAT --to 192.168.0.250
$IPT -t nat -A PREROUTING -s ! 192.168.0.0/24 -d 1.2.3.4 -p tcp --dport 554 -j DNAT --to 192.168.0.250
回复

使用道具 举报

platinum 发表于 2004-10-27 07:58:20 | 显示全部楼层
Originally posted by jk0wg at 2004-10-26 23:41
我知道啊~  还要用vi /usr/local/sbin/firewall把你提供的哪个插入啊~
这么说在/etc/rc.local里加入/usr/local/sbin/firewall是像这样:
echo "/usr/local/sbin/firewall" >>/etc/rc.d/rc.local ...

呵呵,你比我还马虎
你前面说/etc/rc.local,后面说/etc/rc.d/rc.local

对,不用引号

另外,你vi一下/etc/rc.local不好吗?我不爱用echo去>>
因为如果原先文件最后没有回车符,你>>过去的东西会紧紧接在他后面
还是vi的好,FB用ee
回复

使用道具 举报

 楼主| jk0wg 发表于 2004-10-27 12:27:55 | 显示全部楼层
谢谢指教!!  rc.local是在/etc/下,  还是在/etc/rc.d/rc.local   我现在的哪个是在/etc/rc.d/rc.local  你告诉我的是在/etc/rc.local
回复

使用道具 举报

platinum 发表于 2004-10-27 13:33:27 | 显示全部楼层
/etc/rc.local
回复

使用道具 举报

 楼主| jk0wg 发表于 2004-10-27 13:39:14 | 显示全部楼层
好的,谢谢你啦!我试了看,有问题再来请教!   ^_^
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-12-23 11:31 , Processed in 0.025677 second(s), 3 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表