[TOC] # 1131 LSA 作業 :::warning **檔案格式限制使用開源格式,非開源格式零分計算** ::: ## 作業一 - 基礎指令 1. 創建一個資料夾,給予權限666,然後將路徑切進去,結果如何?為何會有這樣的結果? 2. 先查詢自己的 UID 是多少,並截圖證明。用 C 寫一個能印出個人 UID 的程式,編譯後先以個人身分執行並截圖,然後再用 sudo 執行並截圖,兩個執行結果都要是個人身份(擁有者)的 UID。(不能是 sudo 的 UID) :::info 印出 UID 的程式碼: ```c= #include <stdio.h> #include <unistd.h> int main() { printf("The uid is: %d\n", geteuid()); return 0; } ``` ::: 3. 創建一個權限 777 的檔案,但是只有擁有者與 sudo 可以刪除,然後切換使用者去刪除它,截圖刪除失敗的圖片 4. 創建兩台虛擬機,並都安裝好完整的 ssh 服務,並截圖證明,然後再截圖兩台虛擬機的 IP。 5. 在根目錄底下,可以去哪個檔案看使用者的名字、uid、gid 和家目錄的位置 6. 家目錄有一個檔案 `a` 和資料夾 `d`,請問要怎麼把檔案 `a` 移動到資料夾 `d` 7. 把根目錄底下權限是 `rwxrwxrwx` 的檔案印出來,把指令和結果截圖。 ## 作業二 - ssh 1. ssh 進指定的 server ,在 server 裡面創立自己的資料夾,檔名叫 `s學號` 像是:`(s11213510)`。 2. 在資料夾裡面留下一個文字檔,裡面回答以下問題 1. 之後如果想要透過 ssh-key 連近來,請問要把 key 放在哪裡的哪個檔案 2. 要放公鑰還是私鑰 :::success server host:`lsa` IP:`44.211.137.141` password:`wow!LSA!` ::: ## 作業三 - IP ::: success Q: 有一IP Address:3.4.5.6 為class A, Net ID. Host ID為何? class A 有8 bits Network ID, 24 bits Host ID Netmask 是11111111.00000000.00000000.00000000 8 個 bits 的 1,那就保留 - Net ID: `3.0.0.0` - Host ID: `0.4.5.6` :::info 1.有一IP Address: 192.168.38.26 class c, 請問Default Mask, Net ID, Host ID 為何? 2.有一IP Address: 130.48.93.73 為class B, 請問Default Mask, NetID, HostID為何? ::: ::: ## 作業四 - 建立一 DMZ 環境 :::info 試說明步驟以及附上過程截圖,以及最終 `iptables` 的規則截圖 ::: ### 功能要求 ![image](https://hackmd.io/_uploads/ryRijdhM1g.png) - Internet (外網) 能夠透過防火牆連到 DMZ 內部的 web server,但無法連到 LAN 的內部主機 - DMZ 內部的主機要能夠透過防火牆連線到外網,但無法主動連線到 LAN 內部 - LAN 能夠透過防火牆連到外網,也能夠透過防火牆連線到 DMZ 內部 ## 作業五 - web server 1. lighttpd 聽 8080 port,首頁顯示學號 2. Apache2 聽 8081 port,首頁顯示你的姓名 3. nginx 聽 8082 port,負責 load balance 到 lighttpd 與 Apache2