1、端口一般对应于相应的网络服务程序,要禁用端口,可以先查看端口所对应的服务。然后将服务关闭。
创新互联自成立以来,一直致力于为企业提供从网站策划、网站设计、做网站、网站制作、电子商务、网站推广、网站优化到为企业提供个性化软件开发等基于互联网的全面整合营销服务。公司拥有丰富的网站建设和互联网应用系统开发管理经验、成熟的应用系统解决方案、优秀的网站开发工程师团队及专业的网站设计师团队。
netstat -antup
2、也可以通过iptables将其禁用,以8080端口为例,执行如下命令:
iptables -A INPUT -p tcp --dport 8080 -j DROP
iptables -A INPUT -p tcp --sport 8080 -j DROP
iptables -A INPUT -p udp --dport 8080 -j DROP
iptables -A INPUT -p udp --sport 8080 -j DROP
前提:首先你必须知道,端口不是独立存在的,它是依附于进程的。某个进程开启,那么它对应的端口就开启了,进程关闭,则该端口也就关闭了。下次若某个进程再次开启,则相应的端口也再次开启。而不要纯粹的理解为关闭掉某个端口,不过可以禁用某个端口。
1. 可以通过"~$ netstat -anp" 来查看哪些端口被打开。
(注:加参数'-n'会将应用程序转为端口显示,即数字格式的地址,如:nfs-2049, ftp-21,因此可以开启两个终端,一一对应一下程序所对应的端口号)
2. 然后可以通过"~$ lsof -i:$PORT"查看应用该端口的程序($PORT指对应的端口号)。或者你也可以查看文件/etc/services,从里面可以找出端口所对应的服务。
(注:有些端口通过netstat查不出来,更可靠的方法是"~$ sudo nmap -sT -O localhost")
3. 若要关闭某个端口,则可以:
1)通过iptables工具将该端口禁掉,如:
"~$ sudo iptables -A INPUT -p tcp --dport $PORT -j DROP"
"~$ sudo iptables -A OUTPUT -p tcp --dport $PORT -j DROP"
2)或者关掉对应的应用程序,则端口就自然关闭了,如:
"~$ kill -9 PID" (PID:进程号)
如: 通过"~$ netstat -anp | grep ssh"
有显示: tcp 0 127.0.0.1:2121 0.0.0.0:* LISTEN 7546/ssh
则: "~$ kill -9 7546"
(可通过"~$ chkconfig"查看系统服务的开启状态)
本文来自CSDN博客,转载请标明出处:
Linux 如何开放端口和关闭端口
打开端口:
sudo iptables -A INPUT -p tcp --dport 端口号 -j ACCEPT
关闭端口:
sudo iptables -A OUTPUT -p tcp --dport 端口号-j DROP
保存设置:
sudo service iptables save
netstat -an | grep 23 (查看是否打开23端口)
查看防火墙的状态
sudo ufw status
禁用防火墙
sudo ufw disable
启动防火墙
sudo ufw enable
重新加载防火墙:
sudo ufw reload
Linux 停止某端口的进程
fuser -k -n tcp 8000
kill -9 $(ps -ef|grep 127.0.0.1:8000|gawk '$0 !~/grep/ {print $2}' |tr -s '\n' ' ')
开启端口:
如果要开启该端口只要先在“启动类型”选择“自动”,单击“确定”按钮,再打开该服务,在“服务状态”中单击“启动”按钮即可启用该端口,最后,单击“确定”按钮即可。
关闭端口:
比如在Windows 2000/XP中关闭SMTP服务的25端口,可以这样做:首先打开“控制面板”,双击“管理工具”,再双击“服务”。接着在打开的服务窗口中找到并双击“Simple Mail Transfer Protocol (SMTP)”服务,单击“停止”按钮来停止该服务,然后在“启动类型”中选择“已禁用”,最后单击“确定”按钮即可。这样,关闭了SMTP服务就相当于关闭了对应的端口。