隨筆一:阿里雲centos7.x下tomcat啓動正常但8080端口沒法訪問的問題

  先說一下本人的使用背景,前兩天完成一個java項目部署到阿里雲服務器(tomocat端口是默認的8080),在阿里雲中配置了本身的安全組策略,以下圖顯示.可是在本地訪問項目地址顯示訪問超時,琢磨了好久才發現阿里雲的防火牆阻止了外網對8080端口的訪問(以前作PHP項目直接在安全組開個端口就OK了)。一開始的臨時解決方案是關閉防火牆,後來研究了一下阿里雲centos7的防火牆,寫下這篇隨筆做爲總結。java

  

  一:訪問項目首先要將打包好的war包放到tomcat的webapp目錄下(war包的打包流程往後總結),而後就是啓動tomcat服務(到bin目錄下使用:sh startup.sh 命令啓動,關閉使用 sh shutdown.sh 命令,這裏注意:關閉後要把對應的進程殺掉,否則爲再次啓動後原來的進程還會在,形成內存的大量消耗),到這裏爲止是阿里雲java項目的正常部署就結束了,若是項目能經過外網正常訪問那麼部署結束!若是不能則進行第二步操做。web

  二:阿里雲防火牆之firewalld,阿里雲centos7防火牆服務默認是firewalld來管理的,而firewalld沒有對8080端口開放,因此咱們要進行firewalld的開放。centos

    (一)、第一部是登陸阿里雲服務器,使用firewall-cmd --list-ports命令來查看firewalld已開放的端口(這裏看到8080端口已經開放)瀏覽器

        

    (二)、若是沒有開放,使用firewall-cmd --zone=public --add-port=8080/tcp --permanent開放8080端口,其中--permanent的做用是使設置永久生效,不加的話機器重啓以後失效。tomcat

        

    (三)、重啓防火牆安全

        

    

    (四)、打開外部瀏覽器,輸入對應連接便可顯示tomcat頁面,到這裏全部操做就已經所有結束服務器

  三:阿里雲防火牆之iptables,centos7以前都是iptables來管理防火牆的,這裏若是不必再去下載安裝,直接使用firewalld便可,寫到這裏,着重說一下本身當時遇到的一些問題,若是啓動了iptables(systemctl restart iptables),app

    

    則firewalld防火牆會被鎖定,這時是經過(systemctl start firewalld)命令啓fireworlld會報unit is masked的錯誤,webapp

    

    須要先使用(systemctl unmask firewalld)解鎖,tcp

    

    解鎖完了就能夠正常使用firewalld了。這裏我猜想一下,一個系統只能由一個服務來作防火牆,若是啓動了一個,另一個就會被鎖定。

 

 

 

 

 

 

     

 

相關文章
相關標籤/搜索