上次蹭到一張船票,登上了 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 ubuntu@3.139.91.143 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. root@3.139.91.143: Permission denied (publickey).
ssh金鑰驗證失敗,需要用之前建立並下載的 cnblogs.pem 金鑰檔案登入
$ ssh -i cnblogs-us-east-2.pem ubuntu@3.139.91.143 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ 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 root@3.139.91.143: 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 ubuntu@3.139.91.143 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 ubuntu@18.223.33.137 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 https://www.cnblogs.com | grep "Powered by" <div class="poweredby">Powered by .NET 5.0.0-rc.2.20475.5 on Kubernetes</div>
aws 免費雲伺服器就這樣整好了。