linux(2):linux命令查看开放哪些端口
linux命令查看開放哪些端口
netstat -nupl (UDP類型的端口)
netstat -ntpl (TCP類型的端口)
?
a 表示所有
n表示不查詢dns
t表示tcp協(xié)議
u表示udp協(xié)議
p表示查詢占用的程序
l表示查詢正在監(jiān)聽的程序
?
netstat -nuplf|grep 3306?? //這個表示查找處于監(jiān)聽狀態(tài)的,端口號為3306的進程
?
?
?
Linux查看端口使用狀態(tài)、關(guān)閉端口方法
?
?
l????????前提:首先你必須知道,端口不是獨立存在的,它是依附于進程的。某個進程開啟,那么它對應(yīng)的端口就開啟了,進程關(guān)閉,則該端口也就關(guān)閉了。下次若某個進程再次開啟,則相應(yīng)的端口也再次開啟。而不要純粹的理解為關(guān)閉掉某個端口,不過可以禁用某個端口。
?
1. 可以通過"netstat -anp" 來查看哪些端口被打開。
(注:加參數(shù)'-n'會將應(yīng)用程序轉(zhuǎn)為端口顯示,即數(shù)字格式的地址,如:nfs->2049, ftp->21,因此可以開啟兩個終端,一一對應(yīng)一下程序所對應(yīng)的端口號)
?
2. 然后可以通過"lsof -i:$PORT"查看應(yīng)用該端口的程序($PORT指對應(yīng)的端口號)。或者你也可以查看文件/etc/services,從里面可以找出端口所對應(yīng)的服務(wù)。
(注:有些端口通過netstat查不出來,更可靠的方法是"sudo nmap -sT -O localhost")
?
3. 若要關(guān)閉某個端口,則可以:
1)通過iptables工具將該端口禁掉,如:
"sudo iptables -A INPUT -p tcp --dport $PORT -j DROP"
"sudo iptables -A OUTPUT -p tcp --dport $PORT -j DROP"???
2)或者關(guān)掉對應(yīng)的應(yīng)用程序,則端口就自然關(guān)閉了,如:
"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"
?
iptables防火墻
1、基本操作
?
# 查看防火墻狀態(tài)
?
service iptables status??
?
# 停止防火墻
?
service iptables stop??
?
# 啟動防火墻
?
service iptables start??
?
# 重啟防火墻
?
service iptables restart??
?
# 永久關(guān)閉防火墻
?
chkconfig iptables off??
?
# 永久關(guān)閉后重啟
?
chkconfig iptables?on
?
2、開啟80端口
?
?vim /etc/sysconfig/iptables
# 加入如下代碼
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
保存退出后重啟防火墻
?
service iptables restart
firewall防火墻
1、查看firewall服務(wù)狀態(tài)
?
systemctl status firewalld
2、查看firewall的狀態(tài)
?
firewall-cmd --state
3、開啟、重啟、關(guān)閉、firewalld.service服務(wù)
?
# 開啟
service firewalld start
# 重啟
service firewalld restart
# 關(guān)閉
service firewalld stop
4、查看防火墻規(guī)則
?
firewall-cmd --list-all
5、查詢、開放、關(guān)閉端口
?
# 查詢端口是否開放
firewall-cmd --query-port=8080/tcp
# 開放80端口
firewall-cmd --permanent --add-port=80/tcp
# 移除端口
firewall-cmd --permanent --remove-port=8080/tcp
#重啟防火墻(修改配置后要重啟防火墻)
firewall-cmd --reload
?
# 參數(shù)解釋
1、firwall-cmd:是Linux提供的操作firewall的一個工具;
2、--permanent:表示設(shè)置為持久;
?
總結(jié)
以上是生活随笔為你收集整理的linux(2):linux命令查看开放哪些端口的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: sun服务器操作系统使用,SUN ILO
- 下一篇: centos卸载nvidia驱动_lin