CentOS 8 基礎設定(時區, EPEL, SSH/sFTP, SEManage, wget)

從頭開始架設 CentOS 8 作為伺服器,不論你要用來作為哪一種伺服器,都需要有這些軟體替你的伺服器打基礎。這其中包含設定伺服器時區的 timedatectl、安裝 EPEL(Extra Packages for Enterprise Linux)、安裝 SEManage、設定 SSH 遠端服務和 sFTP 以及 wget
上述設定與軟體之中較為特別的是 SEManage,這是用來讓你方便管理 SELinux 設定的套件,好好學一下對於設定會很有幫助的。

If you don’t understand Mandarin, please redirect to the same tutorial wrote in English: Setup a LAMP web server using CentOS 8

時區

修改時區固然是安裝好 Linux 系統後必需先完成的動作之一,設定方法與舊版 CentOS 7 一樣使用 timedatectl 來進行設定,建議直接參考我寫過的舊文。-> CentOS 7 修改時區

 

EPEL

既然我們是在 CentOS 8 上面安裝 EPEL repository,若無特殊需求的話就是安裝 EPEL 8。

Step 1

確認 EPEL 8 下載網址,先連到這裡:https://dl.fedoraproject.org/pub/epel/
此頁面下方應該有個檔案名稱叫做 epel-release-latest-8.noarch.rpm 將他的網址複製下來。

  • 使用DNF安裝套件(dnf 是被包裝在 CentOS 8 用來取代 yum 的套件管理軟體)

  • 傳統做法,首先用 wget 下載 .rpm 檔,再以 rpm  安裝。

Step 2

養成好習慣,立馬更新套件。

  • 使用 dnf 管理套件的更新指令:

  • 使用 yum 管理套件的更新指令:

 

SEManage

CentOS 7 以上預設都會使用 SELinux 作為增強權限管控機制的軟體,然而 SELinux 的指令有點複雜,所以我們可以透過 SEManage 來更有效地設定 SELinux。不論是使用 DNFYum 的步驟都是一樣的,先找到“包含” SEManage 的套件名稱,再安裝該套件。
必須先找到包含 SEManage 的套件是因為它並非獨立的套件,而是被包裝在一個政策核心工具(Policy core utils)裡面。順便補充一下,安裝此套件會順便安裝 Python,若你的環境對於 Python 版本有強烈要求的話,可能要先釐清一下你的安裝順序。

  • 使用 DNF 安裝

  • 使用 Yum 安裝

 

wget, vim

wget 可以很簡單地下載一個網址的檔案,vim 則是文字編輯軟體,當然你也可以選擇最習慣的軟體來安裝即可。

 

SSH/sFTP

sFTP很方便,安裝與設定簡單又還算可靠,蠻推薦作為伺服器 FTP 服務的軟體。

Step 1

安裝 openssh & openssh-server,使用 dnfyum 安裝都可以。

 

Step 2

編輯設定檔,編輯完記得重啟 SSH 服務。
p.s. 一定要另外開一個 ssh 連連看,確認設定都沒問題才能斷開原本的連線。

上述是參考設定值,基本上你只要用關鍵字在設定檔裡面搜尋,除了 4~6行 以外,其餘的都可以放心改成上述設定值。
(第 4~6 行是特別用來設定只使用 SSH Key 登入的時候才需要把相關設定值改成這樣。若只想用密碼登入,就別管 4~6行的設定,免得搞到後來 SSH 登不進去整台伺服器白灌了。)

設定選項 設定值 說明
Port 若非預設值,最好查一下別和系統預設 Port 撞到 連接port號
AllowUsers 伺服器上的帳號 只允許特定帳號登入,多個使用者就用空白鍵隔開,建議設定Power user
PermitRootLogin yes/no 是否允許使用 root 帳號登入
(如果你選擇不允許 Root 登入,請務必在確認設定成功之後,才斷開原本 Root 的連線,否則會很麻煩)
PubkeyAuthentication yes/no 是否允許使用 ssh key 登入
AuthorizedKeyFile 路徑 記錄被授權的 ssh key 檔案路徑
PasswordAuthentication yes/no 是否允許使用密碼登入
Subsystem sFTP的設定值 sFTP的設定值
Step 3

使用 SSH Key 登入
記得要先完成 Step 2 的 4~6 行的設定、重啟 SSH 服務。
(如果不使用 SSH Key 登入 SSH 就跳過這步吧。)

在你的電腦上產生 ssh key,然後透過 ssh-copy-id 把 key 傳送到伺服器。

ssh-keygen:
-f 意思是要把產生出來的 SSH key 存放在哪裡,同時他會產生公、私鑰,其中公鑰檔名以 .pub 結尾

ssh-copy-id:
-i 表示要將哪個 SSH key 複製到伺服器
-u 登入用的使用者名稱
[email protected] 表示你要用連線到 xxx.com.tw 伺服器上的使用者 root

 

測試
使用 SSH key 登入伺服器。
當然也可以使用FTP軟體連線到伺服器,記得選擇使用sFTP、指定 ssh key即可!

 

 

Andy Wang

站在巨人的肩膀上仍須戰戰兢兢!

One thought on “CentOS 8 基礎設定(時區, EPEL, SSH/sFTP, SEManage, wget)

發表迴響

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料