極速雲online 極速雲online 立即諮詢

AWS帳號快速註冊 AWS 亞馬遜雲國際站 Amazon Linux 服務器安裝

亞馬遜雲AWS / 2026-04-27 23:01:44

前言:雲端伺服器安裝其實沒那麼可怕

如果你把「AWS 亞馬遜雲國際站 Amazon Linux 服務器安裝」想像成要在機房裡爬上去接一堆線、還要背著厚厚的手冊,那你就錯了。AWS 的好處是:你幾乎不需要碰實體硬體;壞處是:你需要懂一些雲端概念,不然它會用看似冷酷的方式告訴你「不然你自己想想為什麼連不上」。

這篇文章會用一種「不裝神弄鬼但也不敷衍」的方式,帶你完成 Amazon Linux(以常見的 Amazon Linux 2 為例,其他版本邏輯大同小異)在 AWS 上的安裝與部署流程:從建立 EC2、連線到伺服器、更新系統、設定 SSH、建立使用者、設定基本防火牆、防止你踩到常見雷,最後再做一些常用工具與服務(例如 Nginx、Git、Docker/或簡單應用的示範)。

放心,我會盡量把每個步驟寫得像「可以照做」的程度。你只要照著點、照著輸入,就能把你的伺服器從零變成能跑程式的狀態。

準備工作:先把工具備齊,少走半小時彎路

1. AWS 帳號與地區設定

首先確認你有 AWS 帳號,並且選擇你要使用的「區域(Region)」。例如你可能會選擇東京、法蘭克福、首爾等,視你的需求與訪問速度而定。安裝步驟大體相同,但你要注意:金鑰與資源都屬於該區域。你如果在不同區域之間切換,可能會出現「怎麼找不到剛剛那把金鑰」這種令人想翻白眼的情況。

2. 一台能用的終端機

你需要一個能執行 SSH 的終端機:

  • Windows:可用 PowerShell 或安裝 PuTTY / 或 Windows Terminal 配合 OpenSSH。
  • AWS帳號快速註冊 macOS:直接使用 Terminal。
  • Linux:直接用你的終端。

如果你用的是 macOS/Linux,通常都已內建 ssh 指令。Windows 也通常可以開啟 OpenSSH Client。

3. 會用到的關鍵概念

  • EC2:你建立的雲端伺服器。
  • AMI:系統映像檔。Amazon Linux 就是其中之一。
  • Key Pair(金鑰):用來用 SSH 連線登入伺服器。丟了就是丟了。
  • Security Group(安全群組):控制哪些 IP/端口可以連進來。

這些名字聽起來很像密碼學課本,但不用怕,後面步驟會對應到你要做的事情。

在 AWS 建立 Amazon Linux 伺服器(EC2)

1. 開啟 EC2 建立精靈

登入 AWS 主控台後,搜尋並打開 EC2。接著點擊「Launch instance(啟動執行個體)」。

2. 選擇 AMI:Amazon Linux

在「Name and tags / AMI」相關頁面,選擇 Amazon Linux。常見選項包含:

  • AWS帳號快速註冊 Amazon Linux 2
  • Amazon Linux(較新的發行版本,取決於你看到的選項)

建議你新手先選 Amazon Linux 2(資訊最多、教學也最多)。如果你看到的是 AL2023/較新版本,也可以用,但本文示範以「類似 Amazon Linux 2」的命令為主(例如 yum/dnf 與某些設定方式可能略不同)。

3. 選擇執行個體類型(Instance type)

選擇你用來測試或部署的規格。新手通常先用 t 系列(如 t2 或 t3)中較小的規格就夠了,例如:

  • t3.micro / t3.small

如果你只是跑輕量服務、測試網站、或做教學專案,微型通常足夠。

4. 設定金鑰對(Key pair)

這步是靈魂級關卡。AWS 會要求你選擇或建立 Key pair。

  • 如果你還沒有金鑰:選「Create new key pair」。
  • 下載後請妥善保存。不要刪、不丟到下載資料夾深處、不要改權限搞到連 ssh 都連不上。

金鑰檔常見副檔名是 .pem。下載後請記住檔案位置,稍後會用它來登入。

5. 網路與安全群組(Security group)

這裡是「你為什麼連不上?」的大宗原因。

在安全群組設定中,通常你需要開放:

  • SSH(22):從你的 IP 連進去。

更安全的做法是:只開放你的家用網路 IP 或你常用的辦公室 IP(固定 IP 或你可控的區域)。如果你一時懶得查 IP,把 0.0.0.0/0 開放也不是不行,但安全風險會變高。新手可以先開通連線,但建議你理解後再收斂。

也就是:你希望只有你能登入伺服器,而不是全世界都能碰碰運氣。

6. 儲存(Storage)設定

AWS帳號快速註冊 Amazon Linux 的磁碟你可以沿用預設,但新手常見狀況是:磁碟太小導致後續安裝與部署失敗。對於簡單網站或測試環境,幾十 GB 通常夠。

常見預設是 EBS(Elastic Block Store)。你可以調整大小(例如 8GB、20GB、30GB)。如果你不知道要多少,就先用預設,但要知道:日後如果不夠,也能擴容。

7. 啟動執行個體

最後確認設定,點「Launch instance」。

啟動過程中你可以到 EC2 的「Instances」列表觀察狀態。等狀態顯示 running 才能連線。

連線到 Amazon Linux:用 SSH 把主機拉到你手上

1. 找到伺服器的 Public IPv4 或 DNS

在 EC2 的 Instances 列表,點選你的執行個體。在下方可以看到:

  • Public IPv4 address
  • Public DNS (IPv4)

SSH 需要使用這個公網地址,來進行連線。

2. 修改金鑰檔權限(Linux/macOS)

如果你在 macOS/Linux 連線,請先設定金鑰檔權限,避免 SSH 直接拒絕。

例如(把檔名換成你的):

chmod 400 your-key.pem

Windows PowerShell 也可以,但命令與權限概念略不同。若你使用 PuTTY,則可能需要把 pem 轉成 ppk。

3. SSH 指令

Amazon Linux 常見預設使用者是:

  • ec2-user

連線指令示例:

ssh -i your-key.pem ec2-user@your-public-ip

第一次連線可能會詢問是否接受主機指紋,輸入 yes 即可。

4. 常見連不上原因(請先別急著重建)

  • Security group 沒開 22:你會直接超時。
  • IP 沒允許你的來源:即使開了 22,但你來源 IP 不在允許範圍。
  • 金鑰檔錯:會顯示權限不足或 authentication failed。
  • 使用者帳號錯:例如你用 ec2-user 但實際 AMI 需要其他帳號(不過 Amazon Linux 多半是 ec2-user)。

如果你遇到問題,把「錯誤訊息全文」貼出來通常比盲目重建更快。

在 Amazon Linux 上做系統更新與基本設定

1. 更新系統套件

登入後先做更新,確保安全性與套件版本正常:

sudo yum update -y

如果你的版本使用 dnf,可能會是:

sudo dnf update -y

你也可以先看一下系統版本:

cat /etc/os-release

更新完如果有重啟需求,依提示處理。多數情況更新不一定要立即重啟,但有些核心更新可能需要。

2. 設定主機名稱(可選但推薦)

你可以設定一個有意義的主機名,避免「這是第幾台?我怎麼知道」的災難。

sudo hostnamectl set-hostname my-amazon-linux

3. 建立一個新的使用者(不建議只用預設帳號)

最佳實務是:避免所有日常操作都用 ec2-user。可以建立一個管理者使用者,例如 deploy:

sudo useradd -m -s /bin/bash deploy

AWS帳號快速註冊 設定密碼或讓你用金鑰方式登入。通常你會用金鑰登入,所以我們接著把金鑰加入 deploy 的 authorized_keys:

先切換到 deploy 目錄:

sudo mkdir -p /home/deploy/.ssh
sudo chmod 700 /home/deploy/.ssh

把你本機金鑰的公鑰內容貼進去。你可以在本機用:

ssh-keygen -y -f your-key.pem > your-key.pub

或用你已有的公鑰內容。然後把內容寫入:

sudo nano /home/deploy/.ssh/authorized_keys

貼入公鑰後存檔。

最後設定權限:

sudo chmod 600 /home/deploy/.ssh/authorized_keys
sudo chown -R deploy:deploy /home/deploy/.ssh

4. 減少風險:禁用密碼登入(可選但推薦)

如果你想更安全,可以禁用 SSH 密碼登入,改成只能用金鑰。

編輯 SSH 設定檔:

sudo nano /etc/ssh/sshd_config

找到並修改:

PasswordAuthentication no

通常還可以確認:

PubkeyAuthentication yes

修改後重啟 SSH:

sudo systemctl restart sshd

提醒:修改 sshd 時最好確保你已經有金鑰登入成功,否則你可能把自己鎖在門外。這就像你把鑰匙放在室內然後關門走了,雖然很好笑,但代價不便宜。

設定防火牆與開放必要端口

1. 檢查目前防火牆狀態

Amazon Linux 常見工具有 firewalld 或直接依安全群組為主。先確認:

sudo systemctl status firewalld

AWS帳號快速註冊 如果你看到它未啟用,通常是沒有在機器層面設定防火牆(但 AWS 安全群組仍然有效)。如果你不熟,先保持簡單:以安全群組控制即可。

AWS帳號快速註冊 2. 若使用 firewalld,開放必要服務端口

例如你要提供網站(80)與 HTTPS(443),以及 SSH(22)。可以依需求開放:

sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --permanent --add-service=ssh

套用設定:

sudo firewall-cmd --reload

查看規則:

sudo firewall-cmd --list-all

注意:不要把你不需要的端口開太多。你不是在開派對,別什麼人都放進來。

3. AWS 安全群組再檢查一次

很多人會在 EC2 裡設定 firewalld 但忘記 AWS Security Group;或相反。你最後要確保兩邊都允許:

  • AWS:安全群組允許該端口入站
  • OS:firewall 允許該端口入站

如果你兩邊都沒開,外面世界就像被你鎖進抽屜。

安裝常用工具:讓伺服器從「能登入」變成「能做事」

1. 安裝 Git、curl、vim 等基本工具

通常你會需要這些:

sudo yum install -y git curl vim

vim 如果你嫌麻煩也可以換成 nano,但 vim 很適合遠端生存。

2. 設定時區(可選)

若你的系統時間與預期不一致,可能會影響 log 與排查。可以查看:

date

若要設定(以台灣常見 Asia/Taipei 為例):

sudo timedatectl set-timezone Asia/Taipei

3. 安裝簡單監控/排錯工具(推薦)

例如 htop(觀察 CPU/RAM)、net-tools(老牌網路指令)。

sudo yum install -y htop net-tools

查看:

htop

如果你想知道目前服務是否有在跑,也可以用:

sudo systemctl list-units --type=service --state=running

安裝與部署 Web 服務(以 Nginx 示範)

1. 安裝 Nginx

sudo yum install -y nginx

啟動:

sudo systemctl enable nginx
sudo systemctl start nginx

2. 放行網路:80/443

你需要確保:

  • AWS 安全群組開放 80(HTTP)與 443(HTTPS,若你要用)
  • 本機防火牆(若有)開放對應端口

3. 檢查 Nginx 是否正常

sudo systemctl status nginx

或測試回應:

curl -I http://localhost

4. 修改預設網頁

Nginx 預設站點常見在:

/usr/share/nginx/html

例如把 index.html 換成你自己的:

sudo nano /usr/share/nginx/html/index.html

寫入一段簡單內容,然後到瀏覽器用你的 Public IP 存取。

5. 用瀏覽器測試:如果失敗,先別怪自己

如果你打開公共 IP 卻看不到頁面,常見是:

  • 安全群組沒開 80
  • 防火牆沒開 80
  • AWS帳號快速註冊 Nginx 沒啟動或設定錯誤

先看 Nginx log:

sudo tail -n 100 /var/log/nginx/error.log

再看 access log:

sudo tail -n 100 /var/log/nginx/access.log

log 會老實告訴你發生什麼事,別害怕讀它。

如果你要上傳程式:簡單流程(SSH + Git / 或上傳檔案)

1. 用 Git 拉程式(常見做法)

假設你有一個專案倉庫,可以在伺服器上:

cd ~
git clone https://github.com/your/repo.git

接著依專案需要建立虛擬環境、安裝依賴、啟動服務。

不同語言略不同,例如:

  • Node.js:通常是 npm install + npm start
  • Python:virtualenv + pip install -r requirements.txt
  • Java:maven/gradle build + systemd 服務啟動

你可以告訴我你的程式語言與框架,我也可以把「對應的安裝與部署指令」寫成更貼近你需求的版本。

2. 用 SSH 上傳檔案(scp/sftp)

如果你沒有用 Git,也可以:

scp -i your-key.pem ./local-file ec2-user@your-public-ip:/home/ec2-user/

AWS帳號快速註冊 上傳資料夾則可加 -r。

建立持久化開機服務:避免你重開後又回到原點

很多人會遇到:服務跑得好好的,但重啟後就掛了。要解決這件事,你需要把你的服務設為 systemd 服務(或至少設成開機自動啟動)。

以 Nginx 為例,我們用:

sudo systemctl enable nginx

這就已經確保重開後會自動啟動。

如果你的專案是 Node/Python 等,也可以同樣寫 systemd unit 檔讓它常駐。這篇文章如果一次寫完可能會變成「systemd 教科書」,所以先給你方向:

  • 確定你的服務要能在開機時啟動
  • 用 systemctl enable <service>
  • 設定 log 檔案或用 journald

你如果有具體服務(例如你要跑一個 Node.js 的 app),我可以直接給你 unit 檔模板。

進階可選:安裝 Docker(如果你喜歡用容器“打包省事”)

Docker 是很多人上線部署的常用工具,因為它能讓環境一致,降低「我本機跑得好,部署就不行」的機率。

1. 安裝 Docker(以 Amazon Linux 為例概念)

流程在不同版本可能會略不同,通常你會:

  • 安裝 docker 套件
  • 啟動 docker
  • 把使用者加入 docker 群組(可選)

你可以先查看 Amazon Linux 官方或社群對你版本的安裝方式。若你告訴我你的 Amazon Linux 版本號(例如 /etc/os-release 的內容),我可以給你對應的安裝命令。

2. 測試 Docker 是否正常

sudo docker --version
sudo systemctl status docker

拉一個測試映像:

sudo docker run --rm hello-world

如果看到 hello-world 的輸出,恭喜,你已經成功把「容器腦」加入你的伺服器工具箱。

安全建議:別只會開門,還要懂得上鎖

1. 定期更新系統

系統更新是基本安全。你可以設定排程或定期手動跑:

sudo yum update -y

2. 不要把資料塞進 /home 亂七八糟

建議把部署目錄整理,例如:

  • /var/www 站點檔案
  • /opt/app 你的應用
  • log 放在對應的 log 目錄

目的是:未來你或同事能快速定位。

3. SSH 限制(至少針對來源 IP)

AWS 安全群組層級最有效,OS 防火牆是第二道。你可以把 SSH(22)來源 IP 限制到你的固定 IP。這樣就算你把密碼登入關掉,仍然能降低掃描攻擊帶來的噪音。

常見疑難排解:你可能會遇到的“經典怪題”

問題一:我能連上 SSH,但網站打不開

通常是 80/443 沒放行。

  • 檢查 AWS Security group 是否開放 80/443
  • 檢查 Nginx 是否啟動
  • 檢查 Nginx 設定與 log

問題二:我重啟後服務掛了

你可能沒有 enable systemd 或服務沒有常駐設定。

  • systemctl status 你的服務
  • systemctl enable 你的服務

問題三:ssh 提示 permission denied(publickey)

常見原因:

  • 金鑰對不對
  • authorized_keys 沒放對位置或權限錯
  • 金鑰檔權限不正確

把錯誤訊息與你做過的設定對應看一遍,通常就能找到是哪個環節翻車。

部署完成後:你可以做的下一步(把它變成真正的“可用服務”)

當你成功完成 Amazon Linux 伺服器安裝與基本服務部署,你的下一步可以是:

  • 上傳你的應用程式,並用 Nginx 反向代理
  • 導入 HTTPS(搭配憑證,或先用 Let's Encrypt)
  • 設定環境變數與安全儲存(不要把密碼硬寫在程式碼裡)
  • 加上監控(例如 CloudWatch 或簡單告警)
  • 準備備份(EBS 快照、資料庫備份等)

這些都很重要,但你已經完成了最基礎、也是最關鍵的「伺服器安裝與可運行」步驟。

結語:從零到能跑,完成的不只是安裝而已

「AWS 亞馬遜雲國際站 Amazon Linux 服務器安裝」的難點常常不是指令本身,而是你要理解每一層在做什麼:EC2 是你的機器,AMI 是你的系統來源,金鑰是你登入的通行證,安全群組與防火牆是你的大門管理員,Nginx/你的服務則是你要讓它做的事。

等你把流程跑順,你會發現其實你不是在“學 AWS”,你是在建立一套屬於自己的雲端工作流。那種感覺就像第一次自己修好電腦風扇:以前看見就怕,現在知道怎麼拆、怎麼裝、怎麼判斷問題所在。

如果你願意,我也可以根據你的目標幫你定製下一篇:例如你要部署的是 WordPress、前端靜態網站、Node.js 後端、Python Django、Java Spring,或要用 Docker 跑服務。你只要告訴我你的技術棧與你目前卡在哪一步即可。

Telegram售前客服
客服ID
@cloudcup
联系
Telegram售后客服
客服ID
@yanhuacloud
联系