NA 作業二
寫在前面
對 Markdown 很不熟,邊寫邊練
紀錄一下我在交大 NA 課堂上的作業
需要技能
- DHCP
- NAT
- Firewall
- Proxy
作業要求:
- Server
- OS 必須是 Unix-based
- 當作是 DHCP 跟 NAT 的 Server
- Gatway
- Host A
- 作業系統不拘
- 可以藉由 DHCP 拿到一個 private IP
- Host B
- FTP Server
環境架設
三台虛擬機
Server 我選了最近剛出的 Ubuntu 14.04,下面的 HostA 為 CentOS6 桌面版,HostB 也同樣為 Ubuntu 14.04 server 版。原先 HostA 是想要用 CentOS 的,但是 SElinux 太難搞,就臨時決定換成 Ubuntu 了
Server - NA0
這台機器會被當成 DHCP 以及 NAT 的 Server,所以我們需要讓這台機器有兩張網卡可以使用。一張對內,一張對外。
安裝過程就省略掉,但是記得安裝時記得按 Enter 不要按太快,不然介面選成中文一進去會亂碼,還要調整,很不方便。
安裝完後,開機,登入,把自己變成 root 等等做事情會比較方便
然後安裝 isc-dhcp-server 這個套件
1 | apt-get install isc-dhcp-server |
安裝完畢之後去修改 /etc/dhcp/dhcp.conf 這個檔案
1 | vim /etc/dhcp/dhcp.conf |
這個檔案是 DHCP 的設定檔,你想要發的 IP 從哪裡到哪裡就是在這裡設定的,就照著說明文件寫就好了
修改完畢之後去 /etc/default/isc-dhcp-server
這個檔案修改你要做 DHCP 的網卡
1 | vim /etc/default/isc-dhcp-server |
像我是拿 en0 這張網卡當作要發 DHCP 的介面,如果有很多的話用空格分開就可以了
設定都完成之後,直接重啟 DHCP 這個服務就可以囉
1 | service isc-dhcp-server restart |
這樣子他就會動啦,要看 log 的話可以去 /var/log/syslog
裡面去看
我接下來是弄 NAT,但是根據強者我閃光表示:「你應該先弄 NAT 比較再來弄 DHCP 比較好。」但是我做都做了,不過我覺得兩個誰先誰後應該都差不多(吧)
首先先去你的 /etc/network/interfaces 裡面修改你的網路介面設定
1 | vim /etc/network/interfaces |
我的 eth1 是對外的網卡,所以要有一個可以動的 public IP ,eth0 是做 DHCP 的網卡,拿你的 gateway 做你的 IP
作業裡面有一對關於規則的要求,什麼東西是 ping 不到連不進去之類的啊,所以就用了 iptables 實作 NAT Server 這件事情,沒有 iptables 的話先去裝個。然後因為規則很多,所以直接寫在 /etc/rc.local
裡面。
關於 NAT 最重要的是這幾行:
1 | echo "1" > /proc/sys/net/ipv4/ip_forward |
第一行讓你的 Server 具有 router 的能力,剩下的三行是進行封包偽裝。輸入完畢執行 /etc/rc.local
之後,你底下的兩台機器就也可以上網了哦 ._./
HostA - CentOS
虛擬機網卡設定要選擇「內部網路」,名稱要跟前面設定的 Server 內部網路一樣名稱
就純粹安裝 CentOS 上去,然後裝個 filezilla ,頂多 ifconfig
確認自己的 IP 是對的,確定自己可以上網
HostB - Ubuntu Server 14.04
虛擬機的網卡設定跟 HostA 相同,一樣是選擇內部網路
接下來安裝 VSFTP
1 | sudo apt-get install vsftpd |
修改 /etc/vsftpd.conf
檔案內容
1 | vim /etc/vsftpd.conf |
改完重開 service 就搞定,收工
寫在之後
Demo 前記得燒香拜拜,記得拜託 VMware 不要死掉
不過其實我沒 Demo 到就是了 (菸)