求助!如何设置只允许指定IP的主机访问防火墙规则?

wj8106 2010-08-31 11:53:46
如题!操作系统是REDHAT 企业版5.
我这样添加的规则-A INPUT -s 192.168.0.105 -d 192.168.0.106 -j ACCEPT,但是不行,其中106是服务器,105是我的电脑。
...全文
405 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
Linux-Torvalds 2010-08-31
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 wj8106 的回复:]

# iptables -L -n
Chain INPUT (policy DROP)
target prot opt source destination
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
AC……
[/Quote]
按照你的要求iptables规则是没有错误的,ssh服务开启没有?
# netstat -tlup | grep ssh
wj8106 2010-08-31
  • 打赏
  • 举报
回复
# iptables -L -n
Chain INPUT (policy DROP)
target prot opt source destination
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
ACCEPT icmp -- 0.0.0.0/0 0.0.0.0/0
ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited
ACCEPT all -- 192.168.0.105 0.0.0.0/0

但是我ssh连接的时候提示
ssh: connect to host 192.168.0.106 port 22: No route to host
Linux-Torvalds 2010-08-31
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 wj8106 的回复:]

对啊,是在服务器上设置iptables。
我要实现的就是只有指定的ip能够访问服务器,其他ip不能访问服务器。
[/Quote]
那就在加一条,其它的ip采用默认策略就可以了。
# iptables -P INPUT DROP


查看以下设置是否成功?
# iptables -L -n
wj8106 2010-08-31
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 linwhwylb 的回复:]
Assembly code
# iptables -t filter --append INPUT -s 192.168.0.105 -i eth0 -j ACCEPT
[/Quote]

这样不行啊,我都不能ssh到服务器。
wj8106 2010-08-31
  • 打赏
  • 举报
回复
对啊,是在服务器上设置iptables。
我要实现的就是只有指定的ip能够访问服务器,其他ip不能访问服务器。
Linux-Torvalds 2010-08-31
  • 打赏
  • 举报
回复
不太明白这个-d 192.168.0.106,楼主是不是在106的服务器上设置iptables?
Linux-Torvalds 2010-08-31
  • 打赏
  • 举报
回复
# iptables -t filter --append INPUT -s 192.168.0.105 -i eth0 -j ACCEPT
steptodream 2010-08-31
  • 打赏
  • 举报
回复
#iptables -F
#iptables -X
#iptables -P INPUT DROP
#iptables -P OUTPUT ACCEPT
#iptables -P FORWARD DROP
#iptables -A INPUT -i eth0 -p tcp -s 192.168.0.105 --dport 22 -j ACCEPT
#iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
#iptables-save > /etc/sysconfig/iptables
#/etc/init.d/iptables restart
wj8106 2010-08-31
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 linwhwylb 的回复:]
引用 8 楼 wj8106 的回复:

ssh服务肯定是开启的,因为防火墙关掉后是可以连接的,这个我保证肯定是没问题的。

那就指定一下端口。看看是否可行?尝试性的~~
# iptable -F
# iptable -P INPUT DROP
# iptables -t filter --append -i eth0 -p tcp -s 192.168.0.105 --dport 2……
[/Quote]

这样确实可以,但是这样的话岂不是每次都要设置?要是把它写到iptables表里应该如何写呢?
Linux-Torvalds 2010-08-31
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 wj8106 的回复:]

好像找到原因了,可能是命令顺序不对,为什么先要drop呢?
[/Quote]
你说的其他ip就是拒绝,所以默认的策略就是DROP了。
wj8106 2010-08-31
  • 打赏
  • 举报
回复
再次失败,刚才能连上是因为我把22端口开启了。
wj8106 2010-08-31
  • 打赏
  • 举报
回复
好像找到原因了,可能是命令顺序不对,为什么先要drop呢?
Linux-Torvalds 2010-08-31
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 wj8106 的回复:]

ssh服务肯定是开启的,因为防火墙关掉后是可以连接的,这个我保证肯定是没问题的。
[/Quote]
那就指定一下端口。看看是否可行?尝试性的~~
# iptable -F
# iptable -P INPUT DROP
# iptables -t filter --append -i eth0 -p tcp -s 192.168.0.105 --dport 22 -j ACCEPT
wj8106 2010-08-31
  • 打赏
  • 举报
回复
ssh服务肯定是开启的,因为防火墙关掉后是可以连接的,这个我保证肯定是没问题的。

19,612

社区成员

发帖
与我相关
我的任务
社区描述
系统使用、管理、维护问题。可以是Ubuntu, Fedora, Unix等等
社区管理员
  • 系统维护与使用区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧