iT邦幫忙

0

碰一下萬惡的AWS

aws

下載軟體:

1.Putty:點我!!我帶你去
2.WinSCP:在點我一次!!((再啦幹

Step1.建立VPC

先建立VPC,啟動啟動VPC精靈
選擇 with Public and Private(同時建立一個私人網、一個公有網)
https://ithelp.ithome.com.tw/upload/images/20190515/20117269iuaQ82Y93L.png

Step2.設定VPC的Subnet

給VPC名字(name),給有效的IPv4並設定有效的私人與公有區域(Availability Zone),如圖:
IPv4 CIDR Block:10.0.0.0/16(虛擬位置)
IPv6 CIDR block: No IPv6 CIDR Block(不須使用IPv6的IP)
VPC name:MyVPC(自己取名字或試題說明提及)
Public subnet's IPv4 CIDR:10.0.1.0/24(設置可用的網域1-公用)
Availability Zone:us-east-2a(前面的區域不一樣沒關係,主要是分A區和B區)
Public subnet name: Public subnet 1(依試題為主)
Private subnet's IPv4 CIDR:10.0.3.0/24(設置可用的網域1-公用)
Availability Zone: us-east-2a(前面的區域不一樣沒關係,主要是分A區和B區)
Private subnet name:Private subnet 1(依試題為主)
開啟Use a NAT instance instead
Instance type:t2.micro(不知道對不對,但屬於免費方案)

這樣就可以按下Create VPC囉!!

建置第二個可用的區域B的VPC及管理

(據我理解,VPC就是一個虛擬網路的概念,在虛擬私有雲端可以指定 IP 地址範圍、新增子網路、與安全群組建立關聯,以及設定路由表。)

  • VPC Dashboard裡面可以看得到Your VPC多了一個新建的VPC,IPv4 CIDR為剛才所設置的IPv4 CIDR Block一樣(10.0.0.0/16)
  • 在VPC Dashboard的Subnets中可以看到你剛才所建的VPC,如果建立不只一個的話,在VPC欄位拉開就可以看到(e.g. vpc-0b7348839f13d5468 | Iamtest),這個的VPC name就是Iamtest。
  • 接下來,再Subnets服務下建立兩個subnet,分別為
  1. Name tag:Private subnet 2
  2. VPC:向下選(必須與剛才所建的VPC name一致)
  3. Availability Zone:10.0.2.0/24

  1. Name tag:Private subnet 2
  2. VPC:向下選(必須與剛才所建的VPC name一致)
  3. Availability Zone:10.0.4.0/24
  • 再來,一樣在VPC Dashboard裡,前往Route Tables會有剛建好的VPC,一個Main為No,一個為Yes的。
  1. 在Main為No的選取選單Subnet Associations後,按下Edit subnet asscociations並選取剛建好的兩個Public子網,Name設為Public。
  2. 在Main為Yes的選取選單Subnet Associations後,按下Edit subnet asscociations並選取剛建好的兩個Private子網,Name設為Private。
    (檢查: Explicitly Associated with是否顯示2 subnets)
  • 在Security Groups中點選Create security group
  1. Security group name:自己填寫(依試題規定)
  2. Description:自己填寫(描述,依試題規定或隨意填寫)
  3. VPC:選符合剛建好的Name tag
  • 在Security Groups中點選創建的Security group,Inbound Rules新增四筆規則

建立EC2

首先先開啟EC2 Dashboard,按下Launch Instance

  • Step1. 選擇 Amazon Linux AMI 2018.03.0 (HVM), SSD Volume Type(隨著版本不同)
  • Step2. 點選General purpose,選擇Free tier eligible(免費方案)。
  • Step3. Network選擇剛才所建的VPC,Subnet選擇「VPC ID | Public subnet 2 | 區域-1b」, Auto-assign Public IP(自動分配公共IP):Enable(啟用)
  • Step4. 不需要Add Storage,直接跳過
  • Step5. Add Tags來定義 Webserver 標記,但我不大清楚用途在哪,所以我就隨意設置Key:Name,Value:MyWeb。
  • Step6. Configure Security Group:更改 Assign a security group的選項改為 Select an existing security group,並選擇剛才所建的 Security Group。
  • Step7. Review Instance Lanuch直接點選Lanuch,會跳出一個視窗:「Select an existing key pair or create a new key pair」,並選擇Create a new key pair,Key pair name:(名稱自取或依試題說明),切記!!必須Download Key Pair!!
  • 即可創建。

使用 Putty Key Generator轉檔

https://ithelp.ithome.com.tw/upload/images/20190515/201172698aF2fo4Kd1.png
在開始之前必須先安裝好Putty這個軟體,文件最上方有下載連結。
Step1. 開啟Putty Key Generator點選Load找到剛才建EC2所下載的(記得要選擇所有檔案,才能找到)PEM檔案。
Step2. 點選Save private key ,很好!!私有密鑰格式現在是正確的PuTTY 使用格式了。您現在可以使用PuTTY 的SSH 客戶端連接到Instance。

使用Putty Configuration開啟終端機

  • 進入 Putty Configuration的Conenection/SSH/Auth選擇剛所建立的ppk檔案。
  • 選Category的Sesssion並複製DNS Public DNS (IPv4),在Host Name打ec2-user@(貼上剛複製的東西)
  • Saved Sessions:先新增一個自訂的名字,後按名字後儲存設定。
  • 按下Open,就可以開啟終端機了。

Putty初始設定(準備LAMP伺服器)從這裡複製下來的,請依步驟順序做

sudo yum update –y

為確保所有軟體套件皆為最新版本,請對您的執行個體執行快速軟體更新。本程序可能需費時幾分鐘,但確定您擁有最新的安全更新和錯誤修正至關重要。
(註: -y 選項不要求確認就會安裝更新。如果您要先檢查更新再安裝,則可以省略此選項。)

sudo amazon-linux-extras install -y lamp-mariadb10.2-php7.2 php7.2

安裝 lamp-mariadb10.2-php7.2 和 php7.2 Amazon Linux Extras 儲存庫以取得適用於 Amazon Linux 2 的 LAMP MariaDB 和 PHP 套件之最新版本。

注意

如果出現錯誤,顯示 sudo: amazon-linux-extras: command not found,則代表執行個體不是以 Amazon Linux 2 AMI 啟動 (您可能是使用 Amazon Linux AMI)。您可以使用下列命令來檢視您的 Amazon Linux 版本。

cat /etc/system-release(錯誤形況)

sudo yum install -y httpd mariadb-server

現在您的執行個體是最新的,您即可以安裝 Apache Web 伺服器、MariaDB 和 PHP 軟體套件。使用 yum install 命令可以同時安裝多個軟體套件和所有相關的依存項目。

yum info package_name(您可以使用下列命令來檢視這些套件的目前版本)

sudo systemctl start httpd

啟動 Apache Web 伺服器。

sudo systemctl enable httpd

使用 systemctl 命令來設定 Apache Web 伺服器在每次系統開機時啟動。

sudo systemctl is-enabled httpd

要確認 httpd 已啟用,您可以執行以下命令:

設定檔案許可

sudo usermod -a -G apache ((ec2-user))

將您的使用者 (在此案例中為 ec2-user) 新增至 apache 群組。

exit

登出。登出並重新登入,以取得新的群組並驗證您的成員資格。

groups

若要在 apache 群組中驗證您的會員資格,請重新連線至您的執行個體,然後執行以上命令。

sudo chown -R ec2-user:apache /var/www

將 /var/www 的群組所有權及其內容變更為 apache 群組。

sudo chmod 2775 /var/www && find /var/www -type d -exec sudo chmod 2775 {} \;

若要新增群組寫入許可並在將來的子目錄上設定群組 ID,請變更 /var/www 及其子目錄的目錄許可。

find /var/www -type f -exec sudo chmod 0664 {} \;

若要新增群組寫入許可,請以遞迴方式變更 /var/www 及其子目錄的檔案許可。

echo "<?php phpinfo(); ?>" > /var/www/html/phpinfo.php

在 Apache 文件根資料夾中建立 PHP 檔案。
在網址列輸入: http://my.public.dns.amazonaws.com/phpinfo.php
此 URL 為您執行個體的公有 DNS 地址,其後跟隨斜線和檔案名稱。

sudo yum list installed httpd mariadb-server php-mysqlnd

如果您的輸出未列出所需之任何套件,請使用 sudo yum install package 命令來安裝。

rm /var/www/html/phpinfo.php

刪除 phpinfo.php 檔案。雖然這可能是有用的資訊,但基於安全因素,您不應將其廣播至網際網路。

sudo systemctl start mariadb

如果 MySQL 伺服器未執行,請現在將其啟動。

sudo mysql_secure_installation

請在系統提示時,輸入根帳戶的密碼。
輸入目前的根密碼。根據預設,根帳戶並未設定密碼。按 Enter。
輸入 Y 來設定密碼,然後輸入兩次安全密碼。如需建立安全密碼的詳細資訊,請參閱 https://identitysafe.norton.com/password-generator/。請確保此密碼存放於安全處。

注意

為 MariaDB 設定根密碼僅是確保資料庫安全的最基本措施。在建置或安裝資料庫驅動的應用程式時,通常會為該應用程式建立資料庫服務使用者,並避免使用根帳戶進行資料庫管理以外的任何作業。
輸入 Y 來移除匿名使用者帳戶。
輸入 Y 來停用遠端根登入。
輸入 Y 來移除測試資料庫。
輸入 Y 來載入使用者權限資料表並儲存您的變更。

sudo systemctl stop mariadb

(選用) 如果您不打算立即使用 MariaDB 伺服器,請將其停止。再次需要時,您可以將其重啟。

sudo systemctl enable mariadb

(選用) 如果您希望 MariaDB 伺服器在每次系統開機時啟動,請輸入下列命令。

sudo yum install php-mbstring –y

安裝所需的依存項目。

sudo systemctl restart httpd

重新啟動 Apache。

sudo systemctl restart php-fpm

重新啟動 php-fpm。

cd /var/www/html

在 /var/www/html 中導覽至 Apache 文件根。

wget https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.tar.gz

若要直接將檔案下載到您的執行個體,請複製連結並將其貼入 wget 命令

mkdir phpMyAdmin && tar -xvzf phpMyAdmin-latest-all-languages.tar.gz -C phpMyAdmin --strip-components 1

以下列命令建立 phpMyAdmin 資料夾,並將套件擷取至該資料夾中。

rm phpMyAdmin-latest-all-languages.tar.gz

刪除 phpMyAdmin-latest-all-languages.tar.gz tarball。

sudo systemctl start mariadb

(選用) 如果 MySQL 伺服器未執行,請現在將其啟動。


尚未有邦友留言

立即登入留言