本篇文章要介紹給大家如何在Linux上進行 安全設定與Apache2憑證更換
首先使用者先使用apt-get update來更新我們的軟體資訊。
完成後再來安裝所需要的服務軟體,例如UFW。
來安裝我們簡易的防火牆 UFW,安裝完畢後,使用 sudo ufw status verbose來檢查防火牆目前的設定。
讓UFW預設開機就啟動服務。
筆者預設把防火牆全關,只留自己設備SSH到此主機的規則。
這兩條規則:
可以選擇預設全開或者預設全關,筆者建議預設全關,再將要開通的規則新增上去。
安裝好openssh-server後,也加入了自己會使用遠端桌面的設備於白名單內,這邊要安裝SSH是因為筆者方便用自己的電腦遠端(putty)連線操作。
若要刪除防火牆規則,可以使用 sudo ufw status numbered來看是幾號規則。
再使用 sudo ufw delete 編號 來刪除規則。
開啟網頁伺服器專用的port。
像是在安裝apache2後使用的預設port並不會開啟,需要手動加入。
將防火牆開啟後,就可以讀取到apache2預設的頁面。
講解完簡易的UFW防火牆使用後,那我們接著就來教大家如何設定apache2的相關設定。我們先一樣使用apt-get instatll apache2來安裝我們的apache伺服器。
安裝好之後,使用a2enmod開啟預設的模組:rewrite、proxy、proxy_http、headers、ssl。
記得只要做了設定、修改、啟動關閉站台、都要重新載入apache2!
檢查啟用了哪些模組,就只要ls /etc/apache2/mods-enabled。
上述的功能開啟後apache2就可以使用那些模組功能了。
接下來筆者這邊把原本的預設的站台關閉,習慣自己一個站台用一個config。
修改 /etc/apache2/sites-available/default-ssl.conf 內憑證存放位置。
或者修改覆蓋至此地方,筆者建議在 /etc/apache2/ssl 創建此資料夾,方便管理apache2用的憑證資料。
在 /etc/apache2/sites-available/ 內的設定檔,使用a2ensite將其設定檔啟用,預設啟用000-default.conf。
筆者把預設的default-ssl.conf開啟。
啟用後,就可以看見在 /etc/apache2/sites-enabled/內多了剛剛啟用的站台設定檔,也就可以使用https來開啟網站了。
可以在設定檔中加入憑證存放的位置如下:
再次提醒修改完apache2的設定檔,系統都會提醒要Reload,有時候會無法正常執行的例外狀況出現時,我們再重啟服務。
※備註:Sudo這個不登入root使用root權限的指令,預設時間是五分鐘,只要前面有使用過,五分鐘內使用sudo就不用再打密碼囉!
另外Linux有個非常好用的套件:Nmap,他可以輕鬆的掃描網路,單機IP,去訪問該設備有開甚麼port給大家做使用,如果使用者的電腦沒有嚴密的實體防火牆隔離,甚至本機上的虛擬防火牆設定不嚴謹的話,很容易會被有心人是藉由這些漏洞鑽入進行破壞,或者造成商業上的損失。
像是上圖就是筆者利用自己新安裝的Linux主機去做nmap別台設備,或許用windows的主機要知道這環境有哪些IP被使用,還需要寫腳本甚至一個一個ping,但是透過linux上的套件可以輕鬆抓取這環境內線上設備有誰。
所以公司內有新安裝的Linux主機也好Windows Server也好,一安裝好系統,必須先將基本的防護設定做好,才開始去做機器被分配到的任務,這樣就可以減少有心人士的攻擊了!