雲計算之路-出海記:整一台 aws 免費雲伺服器

上次蹭到一張船票,登上了 aws 這艘巨輪,今天要在船上的免費餐廳吃一頓免費晚餐 —— 整一台 aws 免費套餐中的 EC2 伺服器體驗一下。

進入 EC2 控制台,點擊「啟動實例」,進入 AMI 系統鏡像選擇頁面,勾選「僅免費套餐」,從中選擇一台免費的伺服器,這裡我們選擇 Ubuntu 20.04

免費套餐中的實例配置是1核1G

點擊「審核和啟動」,進入「核查實例啟動」頁面,點擊「啟動」,出現「選擇現有密鑰對或創建新密鑰對」對話框

選擇創建新密鑰對,輸入密鑰對名稱,點擊「下載密鑰對」,會下載一個 cnblogs.pem 文件(ssh私鑰文件)。

點擊「啟動實例」,遭遇啟動失敗

這是由於使用我們當前所在的地域「美國西部 (加利福尼亞北部) us-west-1」的雲資源需要一個額外的驗證過程。

換一個地域試試,換到「美國東部 (俄亥俄州) us-east-2」,這個地域不需要驗證,啟動實例成功。

與此同時,收到了標題為"Your Request For Accessing AWS Resources Has Been Validated"的郵件,us-west-1 地域的驗證也通過了。

You recently requested an AWS Service that required additional validation. Your request has now been validated for AWS US West (N. California) region(s).

在驗證的過程中又從信用卡扣了1美元(和註冊時一樣會返還)。

進入EC2控制台查看剛剛啟動的實例資訊

拿到伺服器實例的公網IP地址,ssh登錄試試(默認用戶名是ubuntu)

$ ssh [email protected]
The authenticity of host '3.139.91.143 (3.139.91.143)' can't be established.
ECDSA key fingerprint is SHA256:67G0raEM3ml9PqREBefoq2108ZHBwywWXpWiKiuZ4E8.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '3.139.91.143' (ECDSA) to the list of known hosts.
[email protected]: Permission denied (publickey).

 ssh密鑰驗證失敗,需要用之前創建並下載的 cnblogs.pem 密鑰文件登錄

$ ssh -i cnblogs-us-east-2.pem [email protected]
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0644 for 'cnblogs-us-west-1.pem' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key "cnblogs-us-west-1.pem": bad permissions
[email protected]: Permission denied (publickey).

又失敗了,這次是密鑰文件的許可權問題,644許可權(-rw-r--r--@)太開放了,不安全,用 chmode 命令將許可權修改為400(-r--------)

chmod 400 cnblogs-us-east-2.pem

修改許可權後 ssh 登錄成功了

$ ssh -i cnblogs-us-east-2.pem [email protected]
Welcome to Ubuntu 20.04.1 LTS (GNU/Linux 5.4.0-1024-aws x86_64)
...

如果不想每次 ssh 都輸入密碼文件,可以使用自己電腦上的默認的密鑰。

點擊 EC2 控制台左側菜單中的「密鑰對」,進入密鑰對控制台,點擊右側「操作」中的「導入密鑰對」,導入自己電腦上 ~/.ssh/id_rsa.pub 文件,導入成功後,需求啟動新的 EC2 實例才可以使用這個密鑰。

在啟動實例操作過程中出現「選擇現有密鑰對或創建新密鑰對」對話框時選擇剛剛導入的密鑰,就可以不需要指定密鑰文件直接 ssh 登錄了。

$ ssh [email protected]
The authenticity of host '18.223.33.137 (18.223.33.137)' can't be established.
ECDSA key fingerprint is SHA256:LIRxVm471JB9gLRuYJx+S0pueiSaxfBr+neVKuErF5U.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '18.223.33.137' (ECDSA) to the list of known hosts.
Welcome to Ubuntu 20.04.1 LTS (GNU/Linux 5.4.0-1024-aws x86_64)

登錄成功後用 curl 命令請求園子首頁體驗一下

$ curl -s //www.cnblogs.com | grep "Powered by"
                <div class="poweredby">Powered by .NET 5.0.0-rc.2.20475.5 on Kubernetes</div>

aws 免費雲伺服器就這樣整好了。

Tags: