虛擬機安裝步驟(二)在FreeBSD上建立SSH遠端連線
環境:FreeBSD 12.2 / BSD-64bit / amd64 / 1Core CPU / 2G RAM
經過第一篇安裝好VirtualBox以及FreeBSD
首先要為這一台虛擬主機,建立SSH遠端連線
並且「不允許」通過帳號密碼登入
這需要生成一組私鑰和公鑰
將公鑰放在遠端,像是設立一道門鎖
將私鑰存回本地自己保管,要進入遠端時才拿來開門使用!
那麼接下來就正式開始
首先輸入
ssh-keygen -t rsa
來生成一組金鑰
指令會提示說這一組金鑰存放的位置
*如果以使用者身分來創建,金鑰就會存在使用者文件夾底下
為公鑰匙重新命名為「authorized_keys」
mv id_rsa.pub authorized_keys
為公鑰設置權限
chmod 600 authorized_keys
在自己的目錄底下創建一個.ssh文件夾
cd /home/username/
mkdir .ssh/
將剛才的鑰匙放進來自己家
cd /root/
mv .ssh/ /home/hachi/
別忘了將擁有者改為自己
cd /home/hachi/.ssh/
chown hachi authorized_keys
設置權限(要把門關上了)
ee /etc/ssh/sshd_config
打開編輯介面之後,調整以下幾項:
ListenAddress (你的ip)
PermitRootLogin no
PermitEmptyPasswords no
UsePAM no
重啟服務
service sshd restart
如果有做更動,記得要重啟服務才會生效
service sshd restart
到了這裡,就不能再用帳號密碼登入囉!
那麼以後要怎麼登入呢?
這裡要開始使用Putty這個軟件 官網
下載之後首先打開附加的puttygen.exe這個執行檔
Conversions > Import key > Your_rsa > Save private key
建議命名「authorized_keys_使用者名」
生成的ppk檔是給putty的,才能以putty連線驗證登入
再來打開putty本體
進行以下幾個基本的配置
- Session > host name (你的虛擬機的ip地址)
- Connection > Data > username(你的使用者名稱)
- SSH > Auth > private key位置(開啟檔案)
- Open 開啟連線
如果有連線成功的話,就能看見和虛擬機上一樣的畫面了
以上訊息也可以在 Session 底下的列表處,存成自己常用的幾個設定
除錯步驟:
- 檢查 authorized_keys 的權限是否為 600
- 檢查 .ssh/文件夾的權限是否為 700
- 檢查 兩把鑰匙的擁有者是否為使用者自己(而非root)
- 檢查 兩把鑰匙的位置是否在使用者自己的文件夾底下(而非root)
- 檢查是否有重啟服務 service sshd restart
- 檢查sshd_config裡面有沒有限制使用者
如果要添加其他人的鑰匙:
- 創建一個新的使用者 adduser 指定群組設置密碼等
- 後續步驟跟上面一樣,生成鑰匙 > 創建文件夾 > 將鑰匙移入文件夾 > 檢查權限及擁有者
第一次建立完了,之後呢:
- 保管好自己的 authorized_keys 正本(非.ppk)
- 保管好生成的 authorized_keys_username(此為.ppk) 給putty驗證登入使用
- 在不同的機器上登入,只需要創建使用者
- 再以 ee authorized_keys 將自己的 authorized_keys 貼上(注意要貼正本而非.ppk)
以上就是這次建立SSH連線的方法和注意事項啦!