Private IP 與 NAT

Post on 15-Jan-2016

43 views 2 download

description

Private IP 與 NAT. 國 立 中 央 大 學 電子計算機中心 劉 劍 青 ( Jiann-Ching Liu ) Email: center5@cc.ncu.edu.tw URL: http://www.cc.ncu.edu.tw/~center5/. 內 容. 1.Private IP Address 的使用 2.Private IP Address 連接方式 3.Network Address Translation 4.Port Redirection - PowerPoint PPT Presentation

Transcript of Private IP 與 NAT

1

Computer Center of NCU Jiann-Ching Liu

Private IP 與 NAT

國 立 中 央 大 學電子計算機中心

劉 劍 青 ( Jiann-Ching Liu )Email: center5@cc.ncu.edu.tw URL: http://www.cc.ncu.edu.tw/~center5/

2

Computer Center of NCU Jiann-Ching Liu

1.Private IP Address 的使用2.Private IP Address 連接方式3.Network Address Translation4.Port Redirection5.Transparent Proxy6.FreeBSD 系統的設定方式7.Linux 系統的設定方式8.NAT Server 光碟使用簡介9.參考資料

內 容

3

Computer Center of NCU Jiann-Ching Liu

Private IP Address

Private IP

10.0.0.0 10.255.255.255

172.16.0.0 172.31.255.255

192.168.0.0 192.168.255.255

Internet

?

RFC 1597 Sectin 3: Private Address Space

4

Computer Center of NCU Jiann-Ching Liu

Private IP Packet 傳送的問題

InternetLocalNet

10.1.2.3 140.115.17.125

IP Packet 可透過 IP Router 傳送出去

InternetLocalNet

10.1.2.3 140.115.17.125

外部的 IP Packet 無法透過傳統 IP Router 送回

?

5

Computer Center of NCU Jiann-Ching Liu

Proxy Server

InternetLocalNet

10.1.2.3 140.115.17.125

Proxy Server 可解決部份問題

Proxy Server

1.Local net 與 Internet 以 Proxy Server 連接2.Local net 可透過 Proxy Server 使用 Internet 資源

使用 Proxy Server 的問題

1.使用的 Clinet 程式需提供透 Proxy 的存取方式2.不能以 Proxy 沒有支援的方式與 Internet 相連,如 telnet, NFS 等3.內部不能有 Server 開放給外部使用,除非外部設定正確的 Proxy Server

6

Computer Center of NCU Jiann-Ching Liu

NAT (或 IP Masquerade)

• NAT 是 Network Address Translation 的縮寫• NAT 伺服器可能是 PC 工作站、具 NAT 功能的 Router 或 Dedicate NAT Se

rver• NAT 的動作

• NAT 可解決大部份 Private IP Transparently 連接 Internet 的問題

10.0.0.1 140.115.17.12510.0.0.254 140.115.1.254

140.115.17.12523

10.0.0.12745

140.115.17.12523

140.115.1.2543548

140.115.1.2543548

140.115.1.12523

10.0.0.12745

140.115.17.12523

7

Computer Center of NCU Jiann-Ching Liu

NAT 的分類

NAT10.1.0.0/32 140.115.1.0/24

m n

Dynamic NAT

Static NAT

Masquerading

m,n > 0 m > n

m,n > 0 m = n

m > 0 n = 1

8

Computer Center of NCU Jiann-Ching Liu

NAT (Masquerading) 的工作原理NAT

10.1.1.254

140.115.1.1

NAT Tablesrc 10.1.1.3:1257dst 140.115.17.108:23

src 10.1.1.5:1257dst 163.28.1.22:80

src 140.115.1.1:63452dst 163.28.1.22:80

src 140.115.1.1:63451dst 140.115.17.108:23

10.1.1.3 125710.1.1.5 4192

....

....

6345163452........

Internal IP / Port local NAT-Port

NAT (Masquerading) Table

9

Computer Center of NCU Jiann-Ching Liu

Port Redirection• NAT Server 的 Port Redirection 功能可讓外部連接到特定 Port Number 的 Packet Redirection 到特定主機

• Port Redirection 使內部網路的 Service 可給外部使用

10.0.0.1 140.115.17.12510.0.0.254 140.115.1.254

140.115.17.1252853

10.0.0.180

140.115.17.1253146

140.115.1.25480

140.115.1.25480

140.115.1.1253146

10.0.0.180

140.115.17.1252853

內部的 WWW 伺服器

Redirect Port 80 到 10.0.0.1

10

Computer Center of NCU Jiann-Ching Liu

Transparent Proxy• 系統對 Transparent Proxy 的功能的支援是將原本連線至遠端的封包重導至本機的特定 Service Port

• 將此功能應用到 WWW 上,可強迫使用者使用 Proxy Server 而不需額外的 Proxy Server 的設定

Request

RedirectRequest Request if miss

Reply

Reply Reply

ClientProxyServer Server

TransparentProxy Redirector

11

Computer Center of NCU Jiann-Ching Liu

FreeBSD 的對 NAT 的支援

1. IPNAT

Dynamic NAT ( 多對多 )

2. Network Address Translation DaemonMasquerading ( 多對一 )

12

Computer Center of NCU Jiann-Ching Liu

FreeBSD 的 IPNAT設定方式 :1. 重做 FreeBSD 核心並加入下列選項

options IPFILTER2. 打開 gateway 的功能

可在 /etc/rc.conf 加入 gateway_enable=YES或使用系統命令 sysctl -w net.inet.ip.forwarding=1

3. ipnat 的設定檔 (用文書編輯程式編寫 ) 放在 /etc/ipnat.conf 參考內容 map ed1 10.0.0.0/8 -> 140.115.11.252/30 portmap tcp/udp 1025:65000 map ed1 10.0.0.0/8 -> 140.115.11.252/304. 執行 ipnat -F ( delete all active entries in the current NAT table ) ipnat -C ( delete all entries in the current NAT listing ) ipnat -f /etc/ipnat.conf5. 在 Ethernet 上要對 nat 的範圍做 proxyarp, 如 arp -s 140.115.11.253 00:00:1c:30:1e:29 pub

13

Computer Center of NCU Jiann-Ching Liu

FreeBSD 的 NATDNATD: Network Address Translation Daemon

設定方式 :1. 使用 FreeBSD 2.2 以上的版本2. 重做 FreeBSD 核心並加入下列選項

options IPFIREWALLoptions IPDIVERT

3. 打開 gateway 的功能可在 /etc/rc.conf 加入 gateway_enable=YES或使用系統命令 sysctl -w net.inet.ip.forwarding=1

4. 設定好兩張網路卡 (或兩個網路介面 )5. 在 /etc/services 加入

natd 8668/divert # Network Address Translation socket6. 調整 /etc/rc.firwall 使 Firewall 的設定為

/sbin/ipfw -f flush/sbin/ipfw add divert natd all from any to any via de0/sbin/ipfw add pass all from any to any

7. 打開 Firewall 的功能在 /etc/rc.conf 加入 firewall_enable=YES

8. 執行 natd如 natd -n de0其中 de0 是對外的網路介面

Port Redirection 參考參數natd -redirect_port tcp 10.0.0.1:80 80 -n de0

14

Computer Center of NCU Jiann-Ching Liu

Linux 的 IP Masquerade• NAT 的功能在 Linux 系統稱為 IP Masquerade

設定方式 :1. 重新製作 Linux 核心

在下列的選頸答 YESPrompt for development and/or incomplete code/drivers

CONFIG_EXPERIMENTALEnable loadable module support

CONFIG_MODULESNetworking support

CONFIG_NETNetwork firewalls

CONFIG_FIREWALLTCP/IP networking

CONFIG_INETIP: forwarding/gatewaying

CONFIG_IP_FORWARDIP: firewalling

CONFIG_IP_FIREWALLIP: masquerading (EXPERIMENTAL)

CONFIG_IP_MASQUERADEIP: ipautofw masquerade support (EXPERIMENTAL)

CONFIG_IP_MASQUERADE_IPAUTOFWIP: ICMP masquerading

CONFIG_IP_MASQUERADE_ICMPIP: always defragment

CONFIG_IP_ALWAYS_DEFRAG

2. 執行 IP Firewall 的設定ipfwadm -F -p masquerade

或更安全一點ipfwadm -F -p denyipfwadm -F -a -m -S $net/$nm -D 0/0

Transparent Proxy 參考設定ipfwadm -I -a accept -P tcp -D 0.0.0.0/0 80 -r 81

15

Computer Center of NCU Jiann-Ching Liu

Linux 核心製作1.下載 Linux 核心程式ftp://linux.cis.nctu.edu.tw/kernel/v2.2/linux-2.2.3.tar.gz

2.解開 Linux 核心cd /usr/srcrm -fr linuxtar zxvf ~/linux-2.2.3.tar.gz

3.設定 Linux 核心參數cd /usr/src/linuxmake menuconfig

4.編譯 Linux 核心make depmake cleanmake zlilomake modulesmake modules_install

16

Computer Center of NCU Jiann-Ching Liu

Linux 核心製作 : NAT 相關選項

Networking options --->[*] Network firewalls

[*] IP: firewalling

[*] IP: always defragment (required for masquerading)

[*] IP: transparent proxy support

[*] IP: masquerading

[*] IP: ICMP masquerading

[*] IP: masquerading special modules support<M> IP: ipautofw masq support (EXPERIMENTAL) (NEW)

<M> IP: ipportfw masq support (EXPERIMENTAL) (NEW)

<M> IP: ip fwmark masq-forwarding support (EXPERIMENTAL) (NEW)

17

Computer Center of NCU Jiann-Ching Liu

Linux/FreeBSD Server 在 Private IP 應用實例

Internet 10.0.0.254140.115.11.217

10.0.0.x

Server: 10.0.0.1

1.Proxy-based Firewall (Traditional Proxies)

2.NAT Router (Masquerading) 的設定3.Transparent Proxy 的設定

4.NAT Router 內架設對外服務 Server

18

Computer Center of NCU Jiann-Ching Liu

Proxy-based Firewall

Internet 10.0.0.254140.115.1.1

10.0.0.x

1.Firewall 具兩個網路介面,分別接到內外網路2.內外網路的封包不互相流通3.連上 Internet 唯一的方法是先連上 Firewall4.在 Firewall 上跑 Proxy 程式 ( 如 squid)

1.內部網路使用 10.0.0.x 的 IP, 不必設 default gateway2.Firewall 兼做 Proxy Server ( 如 : 跑 squid, port 設在 3128)3.Client ( 如 Netscape) 設定 proxy server 為 10.0.0.254 的 3128 port4.Firewall 兼做 DNS, Email, Web 或其它 Server

參考設定

19

Computer Center of NCU Jiann-Ching Liu

Proxy-based Firewall (conti)

10.0.0.x

Internet

10.0.0.254

10.0.0.253

10.0.0.252

10.0.0.251

PROXY: 140.115.1.4

DNS: 140.115.1.3

WWW: 140.115.1.2

Email: 140.115.1.1

• 如果合法 IP 不只一個,可將各伺服器擺在同等位置• 每台伺服器都具有兩張網路介面及內外 IP 各一個• Client 將 Mail Server, Web Server, DNS Server, Proxy Server 等設定到對應伺服

器的內部 IP

Proxy-based Firewall 的主要問題是使用者不能十分Transparently 的使用網路 , 如使用 telnet, ping, ... 等

20

Computer Center of NCU Jiann-Ching Liu

Internet 10.0.0.254140.115.1.1

10.0.0.x

NAT Router (Masquerading)

1.重寫通過 Firewall 的封包 , 使所有的封包看起像是從 Firewall 自己發送出來的2.Linux 的 Masquerading 有分別的模組去處理如 : FTP, RealAudio, Quake 。3.所有對 Internet 服務的提供必需在 Firewall 。

1.內部網路使用 10.0.0.x 的 IP, 並設 default gateway 為 Nat Router2.NAT 可兼做 Proxy, DNS, Email, Web 或其它 Server3.Client 的設定與正常無異 , 將 NAT 當成一般的 Router 看待4.內部網路如有對外的伺服器需額外設定 , 且每個服務號碼 (port) 最多只能有一個伺服器

參考設定

21

Computer Center of NCU Jiann-Ching Liu

Linux IP Chains tool• Linux 自 2.1.102 版的 Firewalling code 已更新 , 需要 Linux IP Fi

rewalling Chains 的工具來管理

• http://www.rustcorp.com/linux/ipchains/

• 下載 ipchains-1.3.8.tar.gz (http://www.rustcorp.com/linux/ipchains/)

• 解開、編譯、安裝

tar zxvf ipchains-1.3.8.tar.gzcd ipchains-1.3.8makemake install

22

Computer Center of NCU Jiann-Ching Liu

Internet 10.0.0.254140.115.1.1

10.0.0.x

ipchains 的設定echo 1 > /proc/sys/net/ipv4/ip_forwardipchains -A forward -s 10.0.0.0/16 -d 0.0.0.0/0 -j MASQipchains -A forward -s 0/0 -j DENY

原 ipfwadm 的參考設定

ipfwadm -F -p denyipfwadm -F -a m -S 10.0.0.0/16 -D 0.0.0.0/0

23

Computer Center of NCU Jiann-Ching Liu

Internet 10.0.0.254140.115.1.1

10.0.0.x

NAT Router: FreeBSD 的設定

sysctl -w net.inet.ip.forwarding=1

ipfw -f flushipfw add divert natd all from any to any via ed1ipfw add pass all from any to any

natd -interface ed1

FreeBSD 核心設定

options IPFIREWALLoptions IPDIVERT

ed1

24

Computer Center of NCU Jiann-Ching Liu

FTP nightmares• FTP 具有 Active 與 Passive 兩種模態, Web Browser 通常使用 Passive Mode ,而傳統命令列的 FTP 通常使用 Active Mode

• 使用 Active Mode 時,當遠端要傳送檔案或做 dir 等指令時,會打開一個 TCP 的連線到本地主機

• 使用 Passive Mode 時,即使有資料要從遠端傳回,連線的建立也是從 Client 到 Server

• Linux 要解決 Active Mode FTP 的問題可載入 ip_masq_ftp 的模組如 : modprobe ip_masq_ftp

• FreeBSD 的 IPNAT 存在 Active Mode FTP 的問題,使用 NATD 則沒有問題

ftp> get samba-2.0.2.tar.gzlocal: samba-2.0.2.tar.gz remote: samba-2.0.2.tar.gz500 Illegal PORT Commandftp> passivePassive mode on.ftp> get samba-2.0.2.tar.gzlocal: samba-2.0.2.tar.gz remote: samba-2.0.2.tar.gz227 Entering Passive Mode (140,115,11,215,4,138)150 Opening BINARY mode data connection for samba-2.0.2.tar.gz (2052417 bytes).226 Transfer complete.2052417 bytes received in 2.29 secs (8.7e+02 Kbytes/sec):

用 passive mode 才可以抓檔

25

Computer Center of NCU Jiann-Ching Liu

Internet 10.0.0.254140.115.1.1

10.0.0.x

Transparent Proxies

1.Transparent Proxies 包含兩個部份 , 一是 transparent redirect 的動作 , 一是適合於處理 redirect request 的 proxies server2.Client 不需要知道及設定 Proxy

1.內部網路使用 10.0.0.x 的 IP, 並設 default gateway 為 Redirect Server2.Redirect Server 可兼跑 Proxies Server 或只將 Request Redirect 到內部或外部網路的 dedicate proxies server

參考設定

26

Computer Center of NCU Jiann-Ching Liu

Redirector 兼 Proxies 參考設定

1.Linux 核心製作包含下列遻項[*] Network firewalls

[*] IP: firewalling

[*] IP: always defragment (required for masquerading)

[*] IP: transparent proxy support 2.Linux firewall rulesipchains -F input

ipchains -A input -p TCP -d localhost 80 -j ACCEPT / DENY

ipchains -A input -p TCP -d 140.115.1.1 80 -j ACCEPT / DENY

ipchains -A input -p TCP -d 10.0.0.254 80 -j ACCEPT / DENY

ipchains -A input -p TCP -d 0.0.0.0/0 80 -j REDIRECT 3128

3.squid 下載編譯與安裝download squid-2.1.PATCH2-src.tar.gz ( http://squid.nlanr.net/ )tar zxvf squid-2.1.PATCH2-src.tar.gz

cd squid-2.1.PATCH2

./configure --enable-ipf-transparent

make

make install

4.squid 的設定檔 squid.confhttpd_accel_host virtual

httpd_accel_port 80

httpd_accel_with_proxy on

httpd_accel_uses_host_header on

兼 WWW Server 時要ACCEPT 否則 DENY

27

Computer Center of NCU Jiann-Ching Liu

Internet 10.0.0.254140.115.1.1

10.0.0.x

Transparent Proxies: FreeBSD 的設定

FreeBSD 核心設定 : 請參考 IPNAT 的設定

options IPFILTER

ed1

• FreeBSD 的 Transparent Proxies 可利用 IP Filter 來完成

de0

ipnat.conf 檔的參考設定rdr de0 0.0.0.0/0 port 80 -> 127.0.0.1 port 3128 tcpmap ed1 10.0.0.0/8 -> 140.115.1.252/30 portmap tcp/udp 1025:65000map ed1 10.0.0.0/8 -> 140.115.1.252/30

•squid 的部份同上一頁

28

Computer Center of NCU Jiann-Ching Liu

Dedicate Proxies 參考設定1.Linux 核心製作包含下列遻項[*] Network firewalls

[*] IP: firewalling

[*] IP: always defragment (required for masquerading)

[*] IP: transparent proxy support 2.Linux firewall rulesipchains -F input

ipchains -A input -p TCP -d localhost 80 -j ACCEPT / DENY

ipchains -A input -p TCP -d 140.115.1.1 80 -j ACCEPT / DENY

ipchains -A input -p TCP -d 10.0.0.254 80 -j ACCEPT / DENY

ipchains -A input -p TCP -d 10.0.0.253 80 -j ACCEPT

ipchains -A input -p TCP -d 0.0.0.0/0 80 -j REDIRECT 8081

3.下載安裝 tproxyddownload transproxy-0.3.tar.gz

tar zxvf transproxy-0.3.tar.gz

cd transproxy-0.3

make

make install

4.執行 tproxyd/usr/sbin/in.tproxyd -s 8081 -r nobody 140.115.1.2 3128

兼 WWW Server 時要ACCEPT 否則 DENY

指到 Dedicate ProxiesServer

放過 Dedicate Proxies Server

FreeBSD 的設定與前頁相同,和 Linux 一樣不跑 squid 改跑 tproxyd

29

Computer Center of NCU Jiann-Ching Liu

其他服務的設定參考 : telnet1.Linux 核心製作包含下列遻項[*] Network firewalls

[*] IP: firewalling

[*] IP: always defragment (required for masquerading)

[*] IP: transparent proxy support 2.Linux firewall rulesipchains -F input

ipchains -A input -p TCP -d localhost 23 -j ACCEPT

ipchains -A input -p TCP -d 140.115.1.1 23 -j ACCEPT

ipchains -A input -p TCP -d 10.0.0.254 23 -j ACCEPT

ipchains -A input -p TCP -d 0.0.0.0/0 23 -j REDIRECT 2023

3.下載安裝 redirdownload redir-1.1.tar.gz

tar zxvf redir-1.1.tar.gz

cd redir-1.1

make

cp redir /usr/sbin

4.執行 redir/usr/sbin/redir 140.115.1.2 2023 23 &

指到 Dedicate ProxiesServer

30

Computer Center of NCU Jiann-Ching Liu

NAT Router 內的對外服務伺服器

10.0.0.x

Internet

10.0.0.254

10.0.0.253

10.0.0.252

10.0.0.251

PROXY: 140.115.1.4

DNS: 140.115.1.3

WWW: 140.115.1.2

Email: 140.115.1.1

1.在沒有 IP 不足或其它問題的情形,各 Server 可以分別有對內及對外窗口

2.若一定要在 NAT Router 內擺設對內外服務的伺服器,除了 Email 可利用在 DNS 上的 MX (Mail Exchanger) 的方式解決外 , 大部份都可利用前面提到的 redirect 的方式

31

Computer Center of NCU Jiann-Ching Liu

內部對外服務的設定參考

ipchains -A input -p TCP -d 140.115.1.1 23 -j REDIRECT 2023

/usr/sbin/redir 10.0.0.1 2023 23 &

法一 沿用 Transparent Proxie 的方法

優點是可以控制用 firewall 的方式控管 , 對不同來源 redirect 到不同的伺服器 , 開放固定的連線可進入 NAT Server

法二 直接改 inetd.conf

telnet stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.telnetd

/usr/sbin/redir --inetd 140.115.0.1 23

優點是比較直接 , 有效率 , 也可利用 TCP-Wrapper 的功能做控管

32

Computer Center of NCU Jiann-Ching Liu

NAT 的效能參考以下資料為非正式的測試資料,測試方法是以 TCP echo Port 傳輸效率為量度

Local BSD Linux Local BSD Linux1 對 1 729.22 379.96 406.35 729.22 379.96 406.352 對 2 565.64 351.87 365.78 1131.28 703.74 731.563 對 3 386.76 303.41 343.8 1160.28 910.23 1031.44 對 4 287.53 282.48 1150.12 1129.925 對 5 229.33 225.25 1146.65 1126.256 對 6 190.51 188.48 1143.06 1130.88

Total (kb/s)Echo Test (kb/s)

33

Computer Center of NCU Jiann-Ching Liu

NAT 的效能參考 ( 二 )

0

200

400

600

800

1000

1200

1400

1 2 3 4 5 6

Local

BSD

Linux

Local (total)

BSD (total)

Linux (total)

34

Computer Center of NCU Jiann-Ching Liu

NAT 光碟與使用

NAT 光碟為教育部委託,中央大學製作

光碟內容主要有下列幾大項

1.NAT Server 光碟 :開機光碟,開起來就是 NAT 伺服器2.關於 NAT 的一些說明文件3.NAT 相關的工具搜集4.NAT 相關網站搜集5.一套可安裝的免費 UNIX 相仿作業系統(FreeBSD 或 Linux)

光碟的使用 : 光碟的使用方法除了第一項在文中介紹外, 2 ~ 4 項的使用請直接將光碟放到 Windows 98 系統,利用系統的 autorun 或執行 setup 導覽。第五項的部份則自行參考該系統的安裝方式

35

Computer Center of NCU Jiann-Ching Liu

NAT Server 光碟NAT Server 光碟的特色

1.CD-ROM 可直接開機,開起來後就是一台 NAT Server 或 Router 。2.簡易的設定界面,在設定後自動將設定儲存在軟碟中,不必每次重覆設定。3.完全不需要硬碟,沒有損壞、管理的負擔。4.具有 SNMP 的 Agent ,可利用 MRTG 或其它網管工具讀取其流量。5.對內部網路可提供 DHCP 服務,方便電腦教室或其它應用。6.可加入對 WWW 的 服 務 做 Transparent Proxy 功能

7.支援使用者開機自動執行程序,可依據需要加入自定程序。

36

Computer Center of NCU Jiann-Ching Liu

硬體需求

1.486 等級以上的 CPU

2.16 Mega 以上的 RAM ( 最好在 32 Mega 以上 )

3.CD-ROM 一台 ( 最好是 IDE 介面 )

4.3.5 吋 1.44 M 軟碟機一台及軟碟片一張 (儲存設定用,或系統不支援 CD-ROM Boot 時,開機用 )

5.兩張網路介面卡 ( 最好是 PCI 介面,非 PnP 卡可能需要事先知道 I/O 位址,並事先防止 I/O 及 IRQ 位址衝突 )

37

Computer Center of NCU Jiann-Ching Liu

開機方式

視環境狀況,可選用下列三種方式之一種進行開機

1.CD-ROM 直接開機

2.用軟碟開機 (需先製作開機磁片 )開機磁片的製作可從 MS-DOS 系統,或 Linux 系統製作從 DOS 製作的方式是先改變工作磁碟到光碟,然後下\dosutils\rawrite -f \bootdisk\boot.img -d a:從 Linux 製作的方式是先將光碟機掛到 Linux 作業系統,然後dd if=/cdrom/bootdisk/boot.img of=/dev/fd0

3.在 DOS 開機後,再進入系統開 DOS 時,載入光碟驅動程式,切換工作磁碟機到光碟後,下 autoboot 指令

38

Computer Center of NCU Jiann-Ching Liu

環境的設定與儲存• 系統在第一次用時,需對環境做簡單的設定• 為了方便使用,設定的資料可儲存在軟碟上,以避免重覆設定

• 軟碟為 DOS 格式化格式 ( 在 DOS 下可 dir )

• 設定檔檔名為 netset.cnf ,除非十分熟悉,不要嘗試用編輯程式修改內容

• 若開機時忘了放磁碟片,設定檔可在 /ncu 目錄下找到,檔名為 netset.conf 。可自己掛上軟碟並把檔案 copy 到軟碟,但需記得更名為 netset.cnf

• 使用開機磁片開機者,開機磁片本身就可以當設定資料儲存的磁片。

開機

插有軟碟

存在設定檔

環境設定

回寫設定

環境設定讀取設定

完成開機

YN

N Y

39

Computer Center of NCU Jiann-Ching Liu

設定流程

http://www.cc.ncu.edu.tw/~center5/livecd/boot.htm

詳細的設定流程請參考

40

Computer Center of NCU Jiann-Ching Liu

自定開機自動執行程序系統設定完並儲存後,以後開機自動讀取,就能依設定的內容自動執行。雖然這樣已滿足了多數的需求,但系統在設計上,仍提供使用者自定的開機自動執行程序,以增加其擴充性

• 自定的開機自動執行程序放在設定磁片上,檔名需為 autoexec.sh。檔案可用 DOS 或 UNIX 的編輯程式編寫,其格式為普通文字檔。

• autoexec.sh 執行的時間是在系統內定的所有開機程序之後• autoexec.sh 開頭需註名程式使用的 interpreter 的名稱,如

#!/bin/sh 或 #!/usr/bin/perl• autoexec.sh 在執行的時候,軟碟機已經卸下,如欲讀取軟碟機,需

先加上掛軟碟的動作,如 mount -t msdos /dev/fd0 /floppy

41

Computer Center of NCU Jiann-Ching Liu

自定開機自動執行程序範例一以下範例為在自動開機時自動修改 root 的密碼為 rootpass

#!/bin/sh

PASS="rootpass"

rm -f /etc/shadow-; cp /etc/shadow /etc/shadow-perl -e ' $encrypt = crypt($ARGV[0], "zT"); open(FN, "$ARGV[1]"); while (<FN>) { chomp; /(^\w+):[\\\w]+:(.*$)/; if ($1 eq "root") { print "root:$encrypt:$2\n"; } else { print "$_\n"; } } close FN;' $PASS /etc/shadow- > /etc/shadowchown root.shadow /etc/shadowchmod 640 /etc/shadow

42

Computer Center of NCU Jiann-Ching Liu

預設帳號及密碼

• 系統預設 root 帳號的密碼為空白, ( 在詢問 passwd 時,不敲任何字,直接按 ENTER)

• root 帳號只能從主機簽入,不能從遠端簽入

• 另外系統有一個一般使用者帳號 liujc ,密碼也是空的,可以從遠端透過 telnet 方式簽入

如果想在開機時,自動改好密碼以增加系統安全性可參考前一節介紹的自定開機程序範例

43

Computer Center of NCU Jiann-Ching Liu

參考資料

1.NATD: FreeBSD System Manager’s Manual

2.Linux IP Masquerade mini HOWTO

3.http://www.indyramp.com/masq/

4.http://squid.nlanr.net/Squid/FAQ/FAQ-17.html

5.Linux IPCHAINS-HOWTO