伺服器建置實務上課補充教材
- 最新消息:
- 授課教材:鳥哥的 Linux 私房菜-伺服器架設篇第三版
- 每週都有可能會有上機實作,要等老師檢查完畢才能夠下課!否則就不算有來上課!
- 回首頁
- 舊版教材簡易介紹
unit 06:基礎的系統防護處理
- 一個封包要進入本機基本上需要通過如下圖示的相關流程才行:
- 先要通過 TCP/IP 的相關規範才能夠連線到本機的網路門口
- 要先通過防火牆的規則管制,才可以進入到本機使用本機的服務
- 能否取得服務與這個服務是否啟用與相關設定有關 (發生問題可以查登錄檔)
- 能否實際存取資料,首先要看有沒有啟動 SELinux 這個細部權限設定項目?目前建議直接取消此項工作。
- 全部都放行後,最後能不能存取資料,還是跟資料檔案的權限 (rwx) 有關!
- 練習:請讓 SELinux 成為 Permissive 的階段。
- 使用 getenforce 觀察 SELinux 模式,你應該是需要在 permissive 而不是 enforcing 才對。
- 使用 vim /etc/selinux/config 去處理,將 Enforcing 改成 permissive
- 你應該要 reboot 讓系統設定值生效才對!
- 再次登入後,使用 getenforce 看看模式為何!
- 防火牆有沒有用?軟體升級有沒有用?
- 防火牆對於一般正常的服務,是沒有保護效果的:
從前一個項目的圖示來看,如果你是 WWW 伺服器,那一定就是要放行 port 80,因此,若 port 80 出問題,那你的防火牆當然一點用處也沒有。
- 如果是限制某些來源的登入,那防火牆是一定需要的保護:
如果你的服務中,例如 ssh 的服務,僅放行給部份的來源 IP 位址,則此時防火牆保護危險的服務,就很有用處了!
- 升級軟體才是王道:
一般來說,軟體如果沒有問題,或沒有加入新功能,是不會隨意升級的。因此,如果官網有公告最新的軟體升級資訊,
當然最好就是一定要升級到最新!至少能夠預防一大堆可能的系統漏洞
- 伺服器本機的防護:升級到官方最新的軟體版本
- 找到最近的官網 mirror 網站,崑山校內最簡單的就是 http://ftp.ksu.edu.tw 這個網站了!
- 修改 /etc/yum.repos.d/ 這個目錄,可以的話,只加上 base 及 updates 這兩個就好,其他的沒用到暫時不用也無所謂。
- 使用 yum -y update 自動進行全系統升級
- 若有升級到核心或重要的函式庫,最好重新開機,才能使用到最新的核心與函式庫功能。
- 很多時候,你可以編輯 /etc/crontab 透過『分 時 日 月 周 用戶 指令』來定期循環操作某些系統維護的功能喔!
- 練習:
- 修改 /etc/yum.repos.d/*.repo 檔案,讓系統支援崑山校內的 CentOS 7 來源
- 建立一隻每天 2 點會執行的腳本,該腳本會每天持續更新系統
- 伺服器本機的防護:減少網路服務
- 如果對方想要連接到你的 port 80,但是你的 port 80 根本就沒有啟用埠口在監聽,那麼對方無論如何是無法連接到你的服務的!
所以減少網路服務是很重要的!
- 可使用 netstat -utlnp 來查詢自己本機所啟動的服務
- 你可以使用『 systemctl [stop|disable] 服務 』來關閉不必要的網路服務 (正常服務不要隨便亂關!)
- 練習:
- 先用 netstat 檢查一下本機有啟動的網路埠口共有哪些?
- 先自己分析一下,哪些是需要的埠口?哪些是不需要的埠口?
- 透過 systemctl 關閉不要的埠口,且下次開機,這些埠口也不會啟用!
- 綜合練習:
- 讓 SELinux 永遠在 permissive 的模式下
- 讓系統關閉到剩下 port 22 以及 port 25 ,其他的埠口請暫時關閉,且重新開機這個服務也不會啟動。
- 讓你的 yum 指向崑山的 FTP 伺服器,且目前請只放行 os 以及 updates 兩個軟體倉儲
- 讓你的系統每天 4 點自動進行一次全系統升級