IACMS 二、系統設定
網路設定
本步驟旨在於連接網際網路,以利後續更新及軟體安裝之進行。
準備材料:已完成首次開機設定之樹莓派及其周邊設備、可用之無線網路熱點或有線網路
查看網路介面及狀態
先查看網路介面,輸入 ip addr
,應該可以看到類似於以下之畫面,可知樹莓派有三網路介面, lo
為loop介面、 eth0
為連接有線網路之介面、 wlan0
則為連接無線網路之介面。(註:下圖為以連接系統之畫面,未連接者應較為簡短,且應在每一介面之首行顯示「state DOWN」)
1 | ubuntu@ubuntu:~$ ip addr |
有線或無線網路設定 (擇一即可)
sudo
指令為以超級使用者權限執行,需輸入當前管理者帳戶密碼進行驗證,驗證後可保留一段時間不需重複驗證,逾時後便需再次驗證。
設定有線網路
有線網路預設以自動進行設定,並自動取得ip位址。若要進行變更,則輸入以下文字,再依據螢幕文字提示輸入帳戶密碼進行超級使用者驗證
1 | sudo nano /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg |
於開啟的新文件中添加如下文字
1 | network: {config: disabled} |
按下 ctrl
+ X
鍵,之後按下 Y
鍵選擇保存,再按下 Enter
。
再輸入如下指令(05-custom.yaml 檔案名稱可自行修改,格式為「數字-文字.yaml」)
1 | sudo nano /etc/netplan/05-custom.yaml |
於新配置文件中填入如下文字,並依照網路環境修改相應參數(注意yaml對於空格數及排版要求十分嚴格)
1 | network: |
可修改部分解釋
eth0:介面名稱,可由 ip addr 取得。
dhcp4:是否使用 ipv4 之 dhcp ,若設置成 true 則自動取得 ip 位址,且須刪去 addresses 與 nameservers 區塊之設定。
addresses: 設定本機 ip 位址,上例為 192.168.0.101,24 表子網遮罩為 255.255.255.0。
gateway4: 設定網關位址
nameservers:設定 dns 伺服器,上例addresses
下列出之兩者為 Google 之兩 dns 伺服器。
optional: 是否須強制完成連線,若設為 false,則在開機時會試圖連線至成功或嘗試逾時為止。
詳細配置說明請參考 https://netplan.io/examples
設定無線網路
輸入如下指令(05-custom.yaml檔案名稱可自行修改,格式為「數字-文字.yaml」),並依據螢幕文字提示輸入帳戶密碼進行超級使用者驗證
1 | sudo nano /etc/netplan/05-custom.yaml |
於新配置文件中填入如下文字,並依照網路環境修改相應參數
1 | network: |
可修改部分解釋
eth0、dhcp4、addresses、gateway4、nameservers、optional: 請參照步驟 2.。
access-points:WiFi SSID
部分填入熱點名稱,而WiFi 密碼
則填入熱點密碼。
詳細配置說明請參考 https://netplan.io/examples
重新啟動
輸入sudo reboot
並視情況輸入密碼以重新開機
登入系統後,再次輸入 ip addr
應該可見設定之介面首行顯示 state UP
並於底下詳細資料中可見取得之 ip 位址。
SSH 連線設定
本步驟旨在於設定遠端連線(SSH)服務,以利異地進行佈署和操作。
準備材料:已完成網路設定之樹莓派及其周邊設備、個人電腦(須連上網路)
基本連線測試
於個人電腦上開啟終端機
- Windows 系統為「PowerShell」或「命令提示字符」,另外 Windows 10 系統亦可於微軟商店下載 Windows Terminal 進行使用。
- Mac 系統可由系統工具或 Spotlight 找到終端機。
- Linux 系統請開啟相應之命令行工具。
輸入 ssh ubuntu@<ip address>
,並將 <ip address>
替換為網路設定步驟樹梅派之 ip 位址,範例如下
1 | C:\Users\user> ssh [email protected] |
註:
C:\Users\user>
為 Windows 系統命令提示字符當前目錄之開頭,指令由此段文字之後開始。
若連線成功,則應顯示如下之提示,並於此時輸入帳戶之密碼,按下Enter
1 | [email protected]'s password: |
若登入成功,則應看到熟悉之起始畫面
1 | Welcome to Ubuntu 20.04 LTS (GNU/Linux 5.4.0-1008-raspi aarch64) |
此時已經可知道 SSH 連線正常運作,未來便可以使用此方式進行遠端操作。
輸入指令 logout
先登出系統(註:輸入指令之方式為輸入指令文字,並按下 Enter
鍵)
使用金鑰進行登入
於終端機輸入如下指令,為了操作方便,本步驟所有提示皆按 Enter
即可
1 | C:\Users\user> ssh-keygen -t ed25519 |
詳細操作方式可參考官方文件 https://www.ssh.com/ssh/keygen/
將上一步所產生之公鑰上傳至伺服器(請注意保存好私鑰,且不得公開,否則他人將可任意入侵)。
Windows 系統
先切換至使用者目錄底下,並按下列程序輸入指令
1 | C:\Users\user> cat ~/.ssh/id_rsa.pub | ssh ubuntu@<樹莓派ip> 'cat >> ~/.ssh/authorized_keys' |
Mac 或 Linux 系統
輸入下列指令,並依提示輸入密碼即可
1 | ssh-copy-id -i ~/.ssh/id_rsa.pub ubuntu@<樹莓派ip> |
修改 SSHD 設定檔
以 SSH 方式登入樹莓派,並輸入下面指令
1 | sudo nano /etc/ssh/sshd_config |
將下列該行之 #
註解移除和修正文字
1 | Port 22 # 將 22 替換為其他 1000-9000 之數字,並記下此「連接埠號」 |
按下
ctrl
+ X
鍵,之後按下 Y
鍵選擇保存,再按下 Enter
(此為 nano 編輯器覆寫原檔案之保存方式,請牢記)輸入
sudo systemctl restart sshd
並依提示輸入密碼,再登出系統,往後以如下指令進行無密碼登入,可確保安全性1 | C:\Users\user> ssh -i .ssh/id_rsa -p <連接埠號> ubuntu@<樹莓派ip> |
此時以之前之帳號與密碼 SSH 指令登入,應無法登入,並可以移除鍵盤、螢幕,僅以遠端進行操作。
語系設定 (可選)
1 | locale |
1 | sudo dpkg-reconfigure locales |
1 | sudo systemctl reboot |
1 | locale |