Suse Linux常用端口开启、关闭、禁用
Linux下面貌似没有什么直接开启或者关闭端口的命令,因为若仅仅只是开启了端口而不把它与进程相联系的话,端口的开启与关闭就显得毫无意义了(开了端口却没有程序处理进来的数据)。也就是说,Linux里面端口的活动与进程是紧密相连的,如果想要关闭某个端口,那么只要杀掉它对应的进程就可以了。
一、通过关闭进程关闭端口
例如要关闭22号端口:
$ netstat -anp | grep :22
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1666/sshd
# -a 显示所有活动的TCP连接,以及正在监听的TCP和UDP端口
# -n 以数字形式表示地址和端口号,不试图去解析其名称(number)
# -p 列出与端口监听或连接相关的进程(有个地方需要注意,下面会提到)(pid)
知道了22号端口对应的进程ID 1666,只要:
$ kill -9 1666
二、通过关闭服务,关闭端口
已知占用22端口的是ssh服务
关闭22端口 # /etc/init.d/sshd stop
有时候我们需要查看某一服务的默认端口,在Linux下面很好办,无需上网搜索,直接查看“/etc/service ”文件就能满足需求了。这里面有一个关于端口号与服务的一个映射。
比如我们想看ipp协议默认使用的端口可以通过这个命令:
# cat /etc/service|grep ipp
三、通过防火墙禁用端口
关闭端口号:iptables -A INPUT -p tcp --drop 端口号 -j DROP
iptables -A OUTPUT -p tcp --dport 端口号 -j DROP
打开端口号:iptables -A INPUT -ptcp --dport 端口号 -j ACCEPT
四、在SUSE下面,开启防火墙之后会发现ssh服务无法使用、http服务都无法访问。这是因为防火墙默认屏蔽了这些端口。现在添加例外策略,允许在开启防火墙时使用ssh和http服务。
4.1开启终端,执行yast--安全和用户(Security and Users)--防火墙(Firewall);
允许的服务(Allowed Services);
外部区域(External Zone)--要允许的服务(Service to Allow);
添加http服务器(Add Http Server);
添加(Add);
添加Secure Shell服务器(SecureShell Server);
添加(Add);
下一步(next);
完成(finish)。
五、经过测试,在开启suse防火墙之后,80、22端口依然可以使用。
本文出自 “韩磊” 博客,请务必保留此出处http://deararvin.blog.51cto.com/11158301/1739628
原文地址:http://deararvin.blog.51cto.com/11158301/1739628