聚會時間公告: 因應COSCUP 2011, Kalug 8月份休會一次

四月 27, 2012
» IPv6 種子培訓 - Linux 筆記 (4)

3. Web Server - Apache

以本次的練習而言,是最簡單的就是 Web Server,因為 CentOS 5.6 包的 Apache 2.2.3 原生就支援 IPv6,裝起來就可以用了。

注意,在 Debian/Ubuntu 的套件名稱是 Apache 而 RHEL/CentOS/Fedora 則是 httpd

3.1 安裝 Apache

在 redhat 體系的世界裡,我們可以用 yum 這個套件管理工具,與 apt 相似並且都擁有相依性檢查、補完的功能。

3.1.1. 安裝前可以先用 search 參數察看 CentOS 家的 Apache (httpd) 套件有哪些,32bit 為 *.i386 而 64bit 則是 *.x86_64。
root@ipv6day:~$ yum search httpd [Enter]
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: ftp.tc.edu.tw
* extras: ftp.tc.edu.tw
* updates: ftp.tc.edu.tw
========== Matched: httpd ==========
mod_ssl.i386 : SSL/TLS module for the Apache HTTP server
system-config-httpd.noarch : Apache configuration tool
centos-ds.i386 : CentOS Directory, Administration, and Console Suite
httpd.i386 : Apache HTTP Server
httpd-devel.i386 : Development tools for the Apache HTTP server.
httpd-manual.i386 : Documentation for the Apache HTTP server.
mod_dav_svn.i386 : Apache server module for Subversion server.

3.1.2. 安裝 Apache。
root@ipv6day:~$ yum install httpd [Enter]

3.2 啟動 Apache

root@ipv6day:~$ /etc/init.d/httpd start [Enter]
Starting httpd:                                 [   OK   ]

3.3 Apache 測試

接下來就可以直接透過 Browser (瀏覽器)測試,要記得 IPv6 在 Browser 裡要使用中括號括起來。
http://[::1]                         # localhost
http://[2001:288:5000:17::26]

3.4 開機自行啟動 Apache

此步驟可於練習時跳過,若打算上線並長期提供,建議設為自動啟動,這樣重新開機後才不至於忘記。
# Apache 預設不會自行啟動。
root@ipv6day:~$ chkconfig httpd --list [Enter]
httpd   0:off   1:off   2:off   3:off   4:off   5:off   6:off

# 將 Apache 設為開機時自行啟動。
root@ipv6day:~$ chkconfig httpd on [Enter]

root@ipv6day:~$ chkconfig httpd --list [Enter]
httpd   0:off   1:off   2:on   3:on   4:on   5:on   6:off

簡單比較 redhat 與 Debian 的對應路徑,其中 DocumentRoot 為 預設網頁路徑,而 Configure 則是設定檔路徑。
     DocumentRoot   Configure  
  redhat     /var/www/html/     /etc/httpd/  
  Debian     /var/www/     /etc/apache2/  


延伸閱讀:
IPv6 種子培訓 - Linux 筆記 (1)
IPv6 種子培訓 - Linux 筆記 (2)
IPv6 種子培訓 - Linux 筆記 (3)

資料來源:
CF197: IPv6 web server

十二月 20, 2011
» IPv6 種子培訓 - Linux 筆記 (3)

2. 建置 Dual-Stack 網路環境 (IPv4/IPv6 共存)

要想駕馭 Linux 除了取得系統管理者權限(root)以外,還得要能上網才行,畢竟要是沒有套件庫伺服器在後面撐腰,要想額外裝些套件可是難上加難啊!這裡將以 Dual-Stack (IPv4/IPv6 共存) 的方案來建置網路環境,若找到支援 IPv6 的套件來源或許可省略此步驟
關於 setup。
網路環境設定的部份小麥老師早就很熱血的把相關步驟寫在 CF197: Linux上ipv6基本設定 一文,想當初尚未考取 RHCE 前凍仁也曾做過類似的動作,只是這樣一來容易出錯,二來必須得背更多的語法,關於直接編輯網路設定檔部份凍仁認為 Debian/Ubuntu 比較友善,其實在 RHEL/CentOS/Fedora 可以透過 setup 指令透過圖形化做些簡易的設定。

2.1 建置 IPv4 網路環境

請記得以下設定要與 Windows7(host) 同網段。
root@ipv6day:~$ setup [Enter]

1. 選擇 Network configuration (網路設定)。
2. 選擇 Edit Devices (編輯裝置)。
3. 選擇 eth0 (第一張有線網路的裝置代號)。
4. 預設使用 DHCP 的方式取得 IP。
5. 取消勾選後 DHCP 並設定 Static IP (靜態IP)、Netmask (子網路遮罩)以及 Default gateway IP (預設閘道IP)。
6. 重新啟動網路服務。
root@ipv6day:~$ /etc/init.d/networking restart [Enter]

7. 檢查是否取得 IPv4。
root@ipv6day:~$ ifconfig [Enter]
eth0 Link encap:Ethernet HWaddr 08:00:27:74:db:34
       inet addr:192.168.7.8 Bcast:192.168.7.255 Mask:255.255.255.0
...

2.2 建置 IPv6 網路環境

說穿了,凍仁是先透過 setup 先建立好 IPv4 環境之後再手動加入IPv6 的設定,相信少打個幾行可以減少些狀況。

1. 取得 IPv6 預設 Default Gateway 閘道位置。
root@ipv6day:~$ traceroute6 ipv6.google.com [Enter]
traceroute to ipv6.google.com (2404:6800:8005::63), 30 hops max, 80 byte packets
  1   2001:288:5000:17::1   2001:288:5000:17::1   4.123 ms   4.234 ms   4.345 ms
...

2. 編輯網卡設定。
root@ipv6day:~$ vi /etc/sysconfig/network-scripts/ifcfg-eth0 [Enter]
# Intel Corporation 82540EM Gigabit Ethernet Controller
DEVICE=eth0
BOOTPROTO=none
ONBOOT=yes
HWADDR=08:00:27:74:db:34
NETMASK=255.255.255.0
IPADDR=192.168.7.8
GATEWAY=192.168.7.254
TYPE=Ethernet

# IPv6 Configure
IPV6ADDR=2001:288:5000:17::26
IPV6_DEFAULTGW=2001:288:5000:17::1
IPV6INIT=yes

3. 啟用 IPv6。
root@ipv6day:~$ vi /etc/sysconfig/network [Enter]
NETWORKING=yes
NETWORKING_IPV6=yes # 預設為 no
HOSTNAME=ipv6day

4. 重新啟動網路服務。
root@ipv6day:~$ /etc/init.d/networking restart [Enter]

5. 檢查是否取得 IPv6。
root@ipv6day:~$ ifconfig [Enter]
eth0 Link encap:Ethernet HWaddr 08:00:27:74:db:34
       inet addr:192.168.7.8 Bcast:192.168.7.255 Mask:255.255.255.0
       inet6 addr:2001:288:5000:17::26/64 Scope:Global
...

6. IPv6 測試。
root@ipv6day:~$ ping6 -c 3 ipv6.google.com [Enter]
PING 2404:6800:8005::63(2404:6800:8005::63) 56 data bytes
64 bytes from 2404:6800:8005::63: icmp_seq=1 ttl=128 time=24.025 ms
64 bytes from 2404:6800:8005::63: icmp_seq=2 ttl=128 time=24.047 ms
64 bytes from 2404:6800:8005::63: icmp_seq=3 ttl=128 time=24.039 ms

--- 2404:6800:8005::63 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2001ms
rtt min/avg/max/mdev = 24.025/24.037/24.047/0.009 ms, pipe 2

延伸閱讀:
IPv6 種子培訓 - Linux 筆記 (1)
IPv6 種子培訓 - Linux 筆記 (2)
IPv6 種子培訓 - Linux 筆記 (4)

» IPv6 種子培訓 - Linux 筆記 (2)

1. 更改 root 預設密碼

能事先做好 CentOS 映像檔的確可省下不少時間,但相對的也得使用講師預設的密碼才可取得 root,其實只要於第一次開機時做以下動作就可以免去這個困擾。

1. 進入 Grub 後迅速按下任意鍵。

2. 於開機項目上按下 E
(預設選項為目前最新的 Kernel 版本)

3. 進入之後選取 kernel 這行,並按下 E 繼續編輯。

4. 進入 Grub 編輯模式後於最後補上 SPACE 1 並按下 Enter

5. 修改完成後如上圖所示,這時按下 B 來套用以上設定並進行開機動作。

6. 成功進入單人模式(Single)。

7. 修改 root 密碼。
sh-3.2# passwd root [Enter]
# 接著輸入兩次新密碼即可。

延伸閱讀:
IPv6 種子培訓 - Linux 筆記 (1)
IPv6 種子培訓 - Linux 筆記 (3)
IPv6 種子培訓 - Linux 筆記 (4)

八月 25, 2011
» IPv6 種子培訓 - Linux 筆記 (1)

一直以來自認對網路這塊還不錯的凍仁幸運的得到了今年由 TWNIC 主辦的 「IPv6 種子培訓營」的入場券,但上了課才發現根本不是這麼一回事。除一開始提到的 IPv4/IPv6 封包(packet)架構,以及 cisco 路由以外,還有 Windows Server 系統建置及服務應用,這些都是凍仁未曾摸索過的。

雖說 IPv4 封包的部份曾在大學時聽過相關課程,但當時也沒多深入鑽研,四天的課程裡就屬 Linux 系統建置與服務應用最為拿手,以下是凍仁在擁有 IPv6 address 的情形下於 CentOS(Guest) 的建置筆記。

  1. 更改 root 預設密碼
  2. 建置 Dual-Stack 網路環境 (IPv4/IPv6 共存)
  3. Web Server - Apache
  4. FTP Server - vsFTP
  5. DNS Server - Bind
  6. Mail Server - Postfix
  7. DHCP Server - Dibbler
  8. Firewall - ip6tables

資料來源:
台灣IPv6日 - 100 種子募集
[簡報]網路互通演進與網路應用講習
[簡報]IPv6路由設定與防火牆操作實習
[簡報]IPv6作業系統與應用服務建置實習(Linux)
[簡報]IPv6作業系統與應用服務建置實習(Windows)
IPv6作業系統與應用服務建置實習(Linux) - 小麥moodle網

support:

biggo.com.tw

biggo.sg

A Django site.