Ubuntu Server 22.04 安裝與設定指南
1. 系統更新
在安裝其他套件前,先確保您的系統已更新。打開終端並運行以下命令:
sudo apt update && sudo apt upgrade
2. 安裝 OpenSSH 伺服器
要啟用 SSH,請安裝 OpenSSH 伺服器:
sudo apt install openssh-server
3. 設定防火牆規則
檢查 UFW(Uncomplicated Firewall)的狀態:
sudo ufw status
如未啟用,執行以下命令:
sudo ufw enable
允許 SSH 連線:
sudo ufw allow ssh
4. 更改預設 SSH 埠號(可選)
為提升安全性,您可以更改 SSH 的預設埠號。首先,備份 SSH 配置文件:
sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
打開並編輯配置文件:
sudo nano /etc/ssh/sshd_config
找到 #Port 22
行,改為您想要的埠號,並移除 #
符號,例如:
Port 33557
儲存文件並退出。
5. 重新啟動 SSH 服務
應用更改並重啟 SSH 服務:
sudo systemctl restart ssh
6. 確認設定
確認 SSH 服務是否正確運行:
sudo systemctl status ssh
7. 連線到自訂埠號
如更改了 SSH 埠號,請指定新埠號連線:
ssh -p 33557 yourusername@10.20.30.40
允許 Root 登入
-
切換至 root 用戶:
bashsudo -i
-
設定 root 密碼:
bashpasswd
-
允許 root 遠程登入: 編輯 SSH 配置文件:
bashsudo nano /etc/ssh/sshd_config
將
PermitRootLogin
改為yes
:plaintextPermitRootLogin yes
-
重新啟動 SSH 服務:
bashsudo systemctl restart ssh
安裝 Ubuntu Desktop
如需 GUI,執行以下指令:
sudo apt-get install --no-install-recommends ubuntu-desktop
切換到命令行模式:
sudo systemctl set-default multi-user.target
切換回 GUI 模式:
sudo systemctl set-default graphical.target
網卡設定
編輯網卡配置文件:
vi /etc/netplan/01-netcfg.yaml
示範配置:
network: ethernets: eno1: dhcp4: false addresses: [192.168.6.253/24] routes: - to: default via: 192.168.6.254 nameservers: addresses: [8.8.8.8, 168.95.1.1] eno2: dhcp4: true version: 2
保存後應用配置:
sudo netplan apply
網路喚醒設定
檢查網卡是否支持 Wake-on-LAN:
ethtool <網路接口名稱> | grep "Supports Wake-on"
啟用 Wake-on-LAN:
sudo ethtool -s <網路接口名稱> wol g
系統映像檔備份
-
安裝 Timeshift:
bashsudo apt update && sudo apt install timeshift
-
創建備份:打開 Timeshift,選擇 Rsync 作為備份方法,並設定備份頻率和目標位置。
-
系統還原:如有需要,打開 Timeshift 並選擇還原點來還原系統。
解決常見問題
1. 重啟使用過時庫的守護程序: 安裝 needrestart 並檢查需要重啟的服務:
sudo apt install needrestart sudo needrestart -b sudo needrestart -u NeedRestart::UI::stdio -r l sudo reboot
2. 解決開機時 "Used fallback datasource" 警告: 禁用 cloud-init:
sudo touch /etc/cloud/cloud-init.disabled sudo reboot
3. 修復 "A start job is running for wait for Network to be configured" 問題: 編輯配置文件,設置超時:
sudo vim /etc/systemd/system/network-online.target.wants/systemd-networkd-wait-online.service
添加以下內容:
[Service] Type=oneshot ExecStart=/lib/systemd/systemd-networkd-wait-online RemainAfterExit=yes TimeoutStartSec=2sec