1.首先查看端口状态,可以使用命令
-># netstat -an (若查看某个端口,后面可接端口号)
2.检查服务状态使用chkconfig,如检查SSH,
-># chkconfig sshd
如为off,则需要打开系统服务的端口,可用chkconfig on命令,如打开SSH,
-># chkconfig ssh on service xinetd restart
3.防火墙开放端口:
(方法一:)
i. 进入 /etc/sysconfig/ 目录,用 vi 命令编辑 SuSEfirewall2 文件,
-># vi SuSEfirewall2
在文件中找到FW_SERVICES_EXT_TCP,在其后面加上服务名或者是服务对应的端口,如SSH,
FW_SERVICES_EXT_TCP=”ssh” 或 FW_SERVICES_EXT_TCP=”22″
保存之后退出。
ii. 重启防火墙,以使配置生效,
-># rcSuEfirewall2 restart
(方法二:)
i. 进入 /etc/sysconfig/ 目录, 查找 iptables 文件。若不存在,则新建一个名为iptables文件,
-># touch iptables
ii. 在iptables文件中添加如下,以便打开端口,如:
-A RH-Firewall-1-INPUT -p tcp -m state -m tcp –dport 22 –state NEW -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m state -m tcp –dport 80 –state NEW -j ACCEPT
iii. 重起iptalbes服务:service iptables restart 或重启机器。
方法三:)
引自:http://hi.baidu.com/wzj423/blog/item/81e8d2f9525b995d242df23a.html 部分内容
创建/etc/init.d/firewall文件:
vi /etc/init.d/firewall
放到/etc/init.d下的原因是方便自动启动。
脚本如下:
#!/bin/bash
# This program is used to use start my iptables.
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:~/bin
export PATH
case “$1″ in
start)
echo -n “Staring FireWall …”
# /sbin/iptables -P INPUT DROP
/sbin/iptables -P OUTPUT ACCEPT
/sbin/iptables -A INPUT -i lo -j ACCEPT
/sbin/iptables -A INPUT -p tcp -m tcp –dport 22 -j ACCEPT
/sbin/iptables -A INPUT -p tcp -m tcp –dport 80 -j ACCEPT
/sbin/iptables -A INPUT -p all -m state –state ESTABLISHED,RELATED -j ACCEPT
/sbin/iptables -A INPUT -p all -m state –state INVALID,NEW -j DROP
echo “OK”
;;
stop)
echo -n “Stop FireWall … ”
/sbin/iptables -F
/sbin/iptables -X
/sbin/iptables -Z
echo “OK”
;;
restart)
/etc/init.d/firewall stop
/etc/init.d/firewall start
echo “Restart FireWall OK”
;;
*)
echo “Usage: $0 {start|stop|restart}”
esac
exit 0
如果想新开端口,直接修改start部分即可。
测试firewall是否能正常工作:
/etc/init.d/firewall restart
没有问题。
配置firewall随系统自动启动:
cd /etc/init.d
update-rc.d firewall defaults 01
01表示启动优先级,让系统刚启动时就立即启动防火墙规则,可修改所有的K01为K99,在关机或重启服务器时最后停止防火墙服务。
-># netstat -an (若查看某个端口,后面可接端口号)
2.检查服务状态使用chkconfig,如检查SSH,
-># chkconfig sshd
如为off,则需要打开系统服务的端口,可用chkconfig on命令,如打开SSH,
-># chkconfig ssh on service xinetd restart
3.防火墙开放端口:
(方法一:)
i. 进入 /etc/sysconfig/ 目录,用 vi 命令编辑 SuSEfirewall2 文件,
-># vi SuSEfirewall2
在文件中找到FW_SERVICES_EXT_TCP,在其后面加上服务名或者是服务对应的端口,如SSH,
FW_SERVICES_EXT_TCP=”ssh” 或 FW_SERVICES_EXT_TCP=”22″
保存之后退出。
ii. 重启防火墙,以使配置生效,
-># rcSuEfirewall2 restart
(方法二:)
i. 进入 /etc/sysconfig/ 目录, 查找 iptables 文件。若不存在,则新建一个名为iptables文件,
-># touch iptables
ii. 在iptables文件中添加如下,以便打开端口,如:
-A RH-Firewall-1-INPUT -p tcp -m state -m tcp –dport 22 –state NEW -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m state -m tcp –dport 80 –state NEW -j ACCEPT
iii. 重起iptalbes服务:service iptables restart 或重启机器。
方法三:)
引自:http://hi.baidu.com/wzj423/blog/item/81e8d2f9525b995d242df23a.html 部分内容
创建/etc/init.d/firewall文件:
vi /etc/init.d/firewall
放到/etc/init.d下的原因是方便自动启动。
脚本如下:
#!/bin/bash
# This program is used to use start my iptables.
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:~/bin
export PATH
case “$1″ in
start)
echo -n “Staring FireWall …”
# /sbin/iptables -P INPUT DROP
/sbin/iptables -P OUTPUT ACCEPT
/sbin/iptables -A INPUT -i lo -j ACCEPT
/sbin/iptables -A INPUT -p tcp -m tcp –dport 22 -j ACCEPT
/sbin/iptables -A INPUT -p tcp -m tcp –dport 80 -j ACCEPT
/sbin/iptables -A INPUT -p all -m state –state ESTABLISHED,RELATED -j ACCEPT
/sbin/iptables -A INPUT -p all -m state –state INVALID,NEW -j DROP
echo “OK”
;;
stop)
echo -n “Stop FireWall … ”
/sbin/iptables -F
/sbin/iptables -X
/sbin/iptables -Z
echo “OK”
;;
restart)
/etc/init.d/firewall stop
/etc/init.d/firewall start
echo “Restart FireWall OK”
;;
*)
echo “Usage: $0 {start|stop|restart}”
esac
exit 0
如果想新开端口,直接修改start部分即可。
测试firewall是否能正常工作:
/etc/init.d/firewall restart
没有问题。
配置firewall随系统自动启动:
cd /etc/init.d
update-rc.d firewall defaults 01
01表示启动优先级,让系统刚启动时就立即启动防火墙规则,可修改所有的K01为K99,在关机或重启服务器时最后停止防火墙服务。
作者:jackxiang@向东博客 专注WEB应用 构架之美 --- 构架之美,在于尽态极妍 | 应用之美,在于药到病除
地址:http://jackxiang.com/post/3180/
版权所有。转载时必须以链接形式注明作者和原始出处及本声明!
第三种方法不觉得太山寨了吗?