今天在CentOS機(centos最小化安裝的系統)上搭建了一個web服務,在訪問這個web服務的時候顯示超時,竟然沒有連接上。明明在本機上使用curl命令顯示了nginx的初始輸出信息,但是遠程訪問為什么就不可以呢?首先ping了web服務器的機子,能ping通,這下有點懵比了。
在網上查了下原來是防火牆惹的禍,沒有開啟80端口。
於是按照網上的說法安裝了需要運行setup命令調用圖形界面修改,運行setup命令時,卻顯示無法找到這個命令,看來是缺少setuptool包,安裝完后運行setup命令發現什么也沒有,又接着安裝了system-config-firewal(防火牆的配置包)之類包。
查詢相關類的包可以使用 命令:
yum list system-config *
另外還有一個服務配置工具,它的名字比較特殊,跟上面所述包名字完全不一樣,它叫ntsysv(系統服務),運行yum install ntsysv 安裝setup的服務設置工具。
再次運行setup出現了圖形界面
但是遺憾的是【防火牆配置】選項就是進不去,並報錯:
ERROR: FirewallD is active, please use firewall-cmd.
報錯信息顯示防火牆已經激活,需要使用firewall-cmd命令,使用man查了下firewall-cmd的說明,看來只能通過這個方式來開啟端口了(后來找資料才知道在CentOS/RHEL 7 之后開啟端口需要使用命令,用 iptables
沒效果參考:https://linux.cn/article-4243-1.html)。
firewall常用命令如下:
常用命令介紹 firewall-cmd --state ##查看防火牆狀態,是否是running firewall-cmd --reload ##重新載入配置,比如添加規則之后,需要執行此命令 firewall-cmd --get-zones ##列出支持的zone firewall-cmd --get-services ##列出支持的服務,在列表中的服務是放行的 firewall-cmd --query-service ftp ##查看ftp服務是否支持,返回yes或者no firewall-cmd --add-service=ftp ##臨時開放ftp服務 firewall-cmd --add-service=ftp --permanent ##永久開放ftp服務 firewall-cmd --remove-service=ftp --permanent ##永久移除ftp服務 firewall-cmd --add-port=80/tcp --permanent ##永久添加80端口 iptables -L -n ##查看規則,這個命令是和iptables的相同的 man firewall-cmd ##查看幫助
首先查看防火牆運行狀態:
[root@localhost ~]# firewall-cmd --state
running
查看我們需要的端口有沒有開啟:
查詢是否開啟80端口 [root@localhost ~]# firewall-cmd --query-port=80/tcp no 顯然80端口沒有開啟
開啟80端口:
[root@localhost ~]# firewall-cmd --zone=public --add-port=80/tcp --permanent success
注意加上參數:--permanent,表示永久改變。
最后運行:
[root@localhost ~]# firewall-cmd --reload
success
完成上述修改,並開啟80端口:現在遠程就可以看到如下界面了。
本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。