顯示廣告
隱藏 ✕
看板 KnucklesNote
作者 Knuckles (站長 那克斯)
標題 [Linode] 新增 RockyLinux9 主機
時間 2023-09-19 Tue. 20:01:23


CentOS 7 之後,Red Hat公司停止開發 CentOS 了
而 CentOS 的創始人另外推出 RockyLinux 來延續 CentOS
所以也跟著改用 RockyLinux

還沒有註冊 Linode 帳號的話,可以用我的推薦連結: 登入Linode

點「Create」/「Linode」
[圖]

Image 選「RockyLinux9」
Region 選日本的機房「Tokyo, JP (ap-northeast)」
Plan 只是測試的話,選共享CPU的最小方案「Nano 1GB」,每月只要美金$5

[圖]

Linode Label 幫這個 Linode 取一個名字,例如「www4」
Root Password 輸入管理員 root 的密碼
SSH Keys 輸入的公鑰會存在 /root/.ssh/authorized_keys
但之後不使用 root 登入所以略過

[圖]

Private IP 打勾,點「Create Linode」

等 Linode 安裝好,狀態會顯示 Running
[圖]

在 IP Address 後面按 Copy 複製登入的 IP

使用 ssh 登入 root@139.162.x.x
輸入設定的 root 密碼,就可以登入了

例如使用 Xshell 的話
[圖]

登入後會顯示
Last login: Tue Sep 19 14:37:43 2023 from 125.228.137.114
[root@localhost ~]#

若出現 WARNING! The remote SSH server rejected X11 forwarding request.
將 Xshell 的 X11 轉寄關掉即可
右鍵點連線的內容->SSH->通道,取消「轉寄X11連線到:」


修改主機名稱

預設主機名稱為 localhost,例如要改為 www4
# hostnamectl set-hostname www4

重新登入後,提示字元會變成
[root@www4 ~]#


取得內部 IP,到 Linode 的 Network 頁
[圖]


找到 192.168 開頭的 IP,點複製
[圖]


在這台主機與其他區網內的主機,設定 hosts 表
# vim /etc/hosts
加上內部 IP 與主機名稱
192.168.x.x www4

之後其他主機就可以用 ssh www4 來登入這台主機了

[NOTE] vim的操作方法,按 i 切換成輸入模式,輸入完按 Esc 回控制模式,按 :x 存檔離開


更新軟體到最新版

原本的套件管理程式 yum,要改為使用 dnf 了
但 yum 還是可以用,dnf 的指令也都跟 yum 一樣

為了避免安全漏洞先更新軟體
# dnf update


更新系統時區

預設是使用 UTC 時間,改成時區 Asia/Taipei
# timedatectl set-timezone 'Asia/Taipei'

查看現在的時間是否顯示正確
# timedatectl
               Local time: Tue 2023-09-19 23:12:31 CST
           Universal time: Tue 2023-09-19 15:12:31 UTC
                 RTC time: Tue 2023-09-19 15:12:31
                Time zone: Asia/Taipei (CST, +0800)
System clock synchronized: yes
              NTP service: active
          RTC in local TZ: no
預設已開啟 NTP 同步時間了


設定防火牆

預設已使用 Firewalld 了

查看 firewalld 執行狀態
# systemctl status firewalld

顯示 Active: active (running) 就是正常執行

查看目前防火牆設定
# firewall-cmd --list-all
public (active)
  target: default
  icmp-block-inversion: no
  interfaces: eth0
  sources:
  services: cockpit dhcpv6-client ssh
  ports:
  protocols:
  forward: yes
  masquerade: no
  forward-ports:
  source-ports:
  icmp-blocks:
  rich rules:
預設已開啟 ssh 了

要增加新的服務,例如 http 的話
# firewall-cmd --zone=public --add-service=http --permanent

--permanent 代表永久增加,沒寫的話就是暫時增加

要移除某個服務,例如 http 的話
# firewall-cmd --zone=public --remove-service=http --permanent

新增一個 port,例如 3306
# firewall-cmd --zone=public --add-port=3306/tcp --permanent

要移除某個 port 的話
# firewall-cmd --zone=public --remove-port=3306/tcp --permanent

設定好要重載才會生效
# firewall-cmd --reload


新增一個使用金鑰登入的管理員帳號

參考 [Xshell] Windows 下好用的 SSH 登入程式 - KnucklesNote板
     [CentOS] 主機間使用公鑰免密碼登入ssh - KnucklesNote板

例如我要新增的帳號為 knuckles,執行
# useradd knuckles

接著設定新帳號的密碼,執行
# passwd knuckles


將新的帳號加入管理員權限

使用 # visudo 來修改 /etc/sudoer 檔
root    ALL=(ALL)       ALL
這行下面加上其他管理員的帳號,例如
knuckles    ALL=(ALL)       ALL


使用 # su knuckles 切換為新帳號
提示字元會變成
[knuckles@localhost root]$

非 root 帳號若要執行需要 root 權限的指令時
只要加上 sudo 即可執行

在新帳號的家目錄新增權限為 700 的 .ssh 目錄
$ mkdir ~/.ssh; chmod 700 ~/.ssh

在 .ssh 目錄下新增權限為 600 的 authorized_keys 檔案
將 ssh 登入程式使用的公鑰寫進去
$ vim ~/.ssh/authorized_keys
$ chmod 600 ~/.ssh/authorized_keys


測試一下 SSH 登入軟體是否能用金鑰登入新的帳號
是否可以執行 $ sudo su 後輸入新帳號的密碼,切換為 root 帳號

沒問題的話,將 ssh 的密碼登入關閉,以增加安全性
$ sudo vim /etc/ssh/sshd_config

尋找 #PasswordAuthentication yes
改成 PasswordAuthentication no

要使用多個 Port 例如 12345 也可以登入的話,將
# Port 22 改為
Port 22
Port 12345

重啟 ssh
$ sudo systemctl restart sshd

防火牆開啟 port,例如 12345
$ sudo firewall-cmd --zone=public --add-port=12345/tcp --permanent
$ sudo firewall-cmd --reload

使用 SSH 登入軟體測試一下使用 port 12345 能不能登入
不能的話可能是有開啟 SELinux 限制只能用 port 22

安裝 SELinux 設定工具 semanage
$ sudo dnf install policycoreutils-python-utils

設定 SELinux 加上 ssh 可以使用 port 12345
$ sudo semanage port -a -t ssh_port_t -p tcp 12345

重啟 ssh
$ sudo systemctl restart sshd

確定 port 12345 可以登入後,再將 port 22 用防火牆擋住
$ sudo firewall-cmd --zone=public --remove-service=ssh --permanent
$ sudo firewall-cmd --reload

--
※ 作者: Knuckles 時間: 2023-09-19 20:01:23 (台灣)
※ 編輯: Knuckles 時間: 2023-11-18 18:04:09 (台灣)
※ 看板: KnucklesNote 文章推薦值: 0 目前人氣: 0 累積人氣: 24 
分享網址: 複製 已複製
r)回覆 e)編輯 d)刪除 M)收藏 ^x)轉錄 同主題: =)首篇 [)上篇 ])下篇