gcin 的 dports
今天在小白上用 DarwinPorts 1.0 順利成功編譯好了 gcin
並可以使用
因此,就想,乾脆弄個 gcin 的 dports 吧
於是…
參考了一些範例及問了一些人
Portfile 終於生出來了,然後再加上一個 patch file
目前等 digdog 有空時幫忙看一下,沒問題再 commit 再進 dports
今天在小白上用 DarwinPorts 1.0 順利成功編譯好了 gcin
並可以使用
因此,就想,乾脆弄個 gcin 的 dports 吧
於是…
參考了一些範例及問了一些人
Portfile 終於生出來了,然後再加上一個 patch file
目前等 digdog 有空時幫忙看一下,沒問題再 commit 再進 dports
6 月 24 日(星期五) 晚上 18:00 – 22:00
「伯朗咖啡 南京東路旗艦店」三樓
地址:台北市南京東路二段222號 三樓(從咖啡廳一樓搭乘電梯)
電話:(02) 25167669


18:00 – 19:00 進場、報到,與自由交誼;團購商品展示
19:00 – 19:30「Mac 專用 Mail/Blog 系統」網絡商數科技 葉家昇 (ascent) 主講
19:30 – 19:50「如何進行 Shareware 中文化」網絡商數科技 王盛森 (pit) 主講
19:50 – 20:05「數位相機白平衡的利器 — expo disc」陳士恩 (ross_tt) 主講
20:05 – 20:25「iPod 與汽車音響的終極結合」丘雲凱 (吉米丘) 主講
20:25 – 20:45「高壓咖啡爐的咖啡烹煮示範」Little Italy 李先生 (阿諾) 主講(兼中場休息)
20:45 – 21:45「GarageBand 的應用」德誼數位 Eddie 主講
21:45 – 22:00「團購商品討論」芝廣數位 梁尊謙 主持
已報名,我會過去看看
地點選的真好,就在我公司隔壁,下班後走路過去,不用一分鐘 :)
從 FC3 起,就有提供 howl 套件來支援 Apple 的 Bonjour (原稱為 Rendezvous)
安裝完 howl 套件後,會提供兩個服務 nifd 及 mDNSResponder
設定檔為 /etc/howl/mDNSResponder.conf
例如我要加三個服務進去,把底下三行加進設定檔內:
“[dns] SSH” _ssh._tcp local. 22
“[dns] HTTP” _http._tcp local. 80
“[dns] SMB” _smb._tcp local. 445
啟動 nifd 及 mDNSResponder
$ /etc/init.d/nifd start
$ /etc/init.d/mDNSResponder start
現在,改到我的小白上來測試看看
如下圖,在 Bonjour 書籤裡出現了 “[dns] HTTP”

執行終端機後,選取選單列上的 “檔案” — “連接伺服器…”
然後就會出現如下圖的畫面,有看到了 “[dns] SSH”:

手邊裝好了一台 x86 版的 FC4,拿來做測試及包裝 RPM 用
而 cle.linux.org.tw 主機部份,FC4 也 mirror 完畢
同時,我也把 FC4 的 Apt/Yum Repository 差不多都弄好了
目前包含有 Fedora Core 4 、Fedora Extras 4 以及 cle (我打包的套件)
至於 freshrpms dag atrpms … 等其他的 Apt/Yum Repository 目前則是還沒放進去
等他們都把 FC4 的 Repository 弄好後,再來 mirror
整理了一下相關資訊如下:
由於 FC4 安裝光碟裡就包含了 Yum,所以就先從 Yum 講起,至於 Apt 套件則是被放到 Extras 裡去了,待另外再安裝(用 Yum 裝)
安裝好 FC4 後,要先稍微設定一下 Yum,把 Repository 指向到 CLE 主機,所以要修改 /etc/yum.repos.d/ 下的各個檔案,如下:
[base]
name=Fedora Core $releasever – $basearch – Base
baseurl=ftp://cle.linux.org.tw/apt/stentz/yum/os/RPMS.os
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora
[updates-released]
name=Fedora Core $releasever – $basearch – Released Updates
baseurl=ftp://cle.linux.org.tw/apt/stentz/yum/updates/RPMS.updates
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora
[extras]
name=Fedora Extras $releasever – $basearch
baseurl=ftp://cle.linux.org.tw/apt/stentz/yum/extras/RPMS.extras
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-extras
gpgcheck=1
底下是我打包的 CLE 相關套件 (如 gcin)
RPM-GPG-KEY-cle 檔案可以在 這裡 下載
下載回去後,把它放到 /etc/pki/rpm-gpg/ 目錄底下即可
[cle-released]
name=Fedora Core $releasever – $basearch – Released cle
baseurl=ftp://cle.linux.org.tw/apt/stentz/yum/cle/RPMS.cle
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-cle
底下三個是測試開發版本,所以預設是不啟用的
[development]
name=Fedora Core $releasever – Development Tree
#baseurl=http://download.fedora.redhat.com/pub/fedora/linux/core/development/$basearch/
mirrorlist=http://fedora.redhat.com/download/mirrors/fedora-core-rawhide
enabled=0
gpgcheck=0
[updates-testing]
name=Fedora Core $releasever – $basearch – Test Updates
baseurl=ftp://cle.linux.org.tw/apt/stentz/yum/extras/RPMS.updates-testing
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-test
[extras-development]
name=Fedora Core $releasever – Development Tree
baseurl=ftp://cle.linux.org.tw/apt/stentz/yum/extras/RPMS.extras-testing
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-extras
gpgcheck=0
修改好設定檔後,執行 yum update 即可更新套件
新版的 yum 執行起來的效率已經比起前版的好太多了(不用浪費一大堆時間在抓 headers)
接下來,先用 yum 把 apt 給裝起來,因為 apt 套件是放在 Extras 裡,預設是沒有安裝的
$ yum install apt
安裝好後,接下來就是修改 apt 的設定檔
第一次執行 apt-get 時,會發生錯誤
那是因為 miror-select.conf 裡的 mirrors-URL 是指到 fedora.us 去
但從 FC3 以後,fedora.us 就已經不再獨自維護了,已經移轉到 Extras 去了
所以,我們要略過 mirror-select 的步驟
請修改 /etc/apt/apt.conf,在最後面加上一行:
Apt::State::FirstRun “false”;
這樣就可以了
再來就是修改 sources.list 的設定,指向 CLE 主機上的 APT Repository
# Fedora Core 4 — stentz
# Core — os updates cle
rpm ftp://cle.linux.org.tw/apt/stentz Fedora os updates cle
rpm-src ftp://cle.linux.org.tw/apt/stentz Fedora os updates cle
# Extras
rpm ftp://cle.linux.org.tw/apt/stentz Fedora extras
rpm-src ftp://cle.linux.org.tw/apt/stentz Fedora extras
# Testing — updates-testing extras-testing
#rpm ftp://cle.linux.org.tw/apt/stentz Fedora updates-testing extras-testing
#rpm-src ftp://cle.linux.org.tw/apt/stentz Fedora updates-testing extras-testing
接下來就是:
apt-get update
apt-get install {packages}
…
今天把 fink 更新到 tiger 版 (0.8.0),順便做一下筆記
Fink for tiger
http://fink.sourceforge.net
$ sudo rm -Rf /sw
or
$ sudo mv /sw /sw.old
Fink 0.8.0 Binary Installer:
http://prdownloads.sourceforge.net/fink/Fink-0.8.0-Installer.dmg?download
點兩下 Fink-0.8.0-Installer.dmg 掛載磁碟映像檔
然後再點選裡面的 Fink 0.8.0 Installer.pkg 進行安裝
然後會自動執行 pathsetup utility
或是之後手動執行 /sw/bin/pathsetup.sh
會在 ~/.profile 中加入一行: (在 X11 下要加在 ~/.bashrc 才會生效)
“test -r /sw/bin/init.sh && . /sw/bin/init.sh”
fink scanpackages; fink index
fink selfupdate
fink update-all
fink list
fink install packages
fink remove packages
fink cleanup
sudo apt-get update
sudo apt-get install packages
sudo apt-get remove packages
sudo apt-get install appleotffonts applesystemfonts
sudo apt-get install autocutsel dialog dosunix ethereal expat expect
sudo apt-get install gnupg hexcurse lftp lynx lzo mc pine svn svn-client
sudo apt-get install unrar w3m wget
sudo apt-get install rxvt-ml
sudo apt-get install gtk+2-dev glib2-dev pkgconfig pango1-xft2-dev atk1
sudo apt-get clean
再來就是把 gcin mrxvt mlterm p7zip ov 等編譯好並安裝
嗯,一切過程順利
/sw.old 可以砍掉了
我 5/21 一大早就去登記了,直到今天 6/15
我小白的新電池還不知道在哪裡流浪?
昨天終於忍不住打 0800 去 Apple 那裡哭么了一下
結果,新加坡人跟我說還不知道整個狀況如何,要查一查
不管有沒有消息,今天會給我回電話
剛剛接到電話,他們說我郵寄的地址是郵政信箱,結果是被退回了 (ooxx)
我有寫第二個公司地址,所以請他們改寄到公司給我
但現在他們也不知道電池被退回後到底流落何方
還是一樣,要再查一查,不管結果如何,明天會再給我回電…Orz
快沒力了……..
之前有玩了一下 OpenVPN,不過沒搞定,就沒再摸了
昨天(6/14)在台大有場 Arne OpenVPN 的心得分享
回家後再給它試一次,終於試成功了
其實 OpenVPN 的應用方式有很多種,也要慢慢去試出來
不管是 Linux Windows 或是 Mac OS X,都有現成的 Binary 套件可以使用
請到 OpenVPN 網站 下載合適的版本回去安裝
OpenVPN GUI for Mac 請到 這裡 下載 Tunnelblick 回去安裝
OpenVPN GUI for Windows 請到 這裡 下載 Install Packages 回去安裝
我的 Server 系統用的是 FC3,因此,去抓 DAG 的 binary RPM
下載回來後執行下列指令安裝:
$ rpm -ivh openvpn-2.0-1.1.fc3.rf.i386.rpm
我是在 FC3 Server 下來建立所有相關的 CA certificate 及 keys
$ cd /usr/share/doc/openvpn-2.0/easy-rsa
ease-rsa 底下的一些 scripts (clean-all build-* 等等) 記得到先 chmod 755 讓它們可以執行
主要是設定最後面的 KEY_COUNTRY KEY_PROVINCE KEY_CITY KEY_ORG KEY_EMAIL 等參數
$ vi vars
$ . vars
$ ./clean-all
$ ./build-ca
會產生 keys/ca.*
$ ./build-key-server server
會產生 keys/server.*
$ ./build-dh
會產生 keys/dh1024.pem
$ openvpn –genkey –secret ta.key
會產生 ta.key
$ mv ta.key keys/
$ ./build-key ibook
會產生 keys/ibook.*
$ ./build-key macmini
會產生 keys/macmini.*
$ ./build-key fujitsu
會產生 keys/fujitsu.*
$ ./build-key ns
會產生 keys/ns.*
$ ./build-key fedora
會產生 keys/fedora.*
我總共產生了五台 Clients 機器的 keys (ibook macmini fujitsu ns fedora)
所有的 CA certificate 及 keys 都建好後,接下來就是根據不同的狀況來設立不同的設定檔
底下為目前我個人成功在使用的例子:
在 NAT Server 上架 OpenVPN Server(家裡的 NAT Server),然後 OpenVPN Client 則是架設在外面的任一台電腦上(我的 ibook)
這樣,我在公司或者是在外面的網咖上網時,就可以利用 OpenVPN 連上家裡的 Server 以及家裡 NAT 底下的其他機器(192.168.1.x/24)
Server 端:
eth0: a.b.c.d (Real IP)
eth1: 192.168.1.254/24
tap0: 192.168.2.1/24
Client 端:
eth0: e.f.g.h (Real IP or Virtual IP)
tap0: 192.168.2.x/24
我的 Server 是 FC3
首先,要把 Server 端相關的 CA certificate 及 keys 複製到 Server 機器的 /etc/openvpn/ 目錄底下
主要有 ca.crt ta.key dh1024.pem 及 server.*
$ cd /usr/share/doc/openvpn-2.0/easy-rsa/keys
$ cp ca.crt ta.key dh1024.pem server.* /etc/openvpn/
接下來就是設定檔部份了,先複製一份範例檔來修改
$ cd /usr/share/doc/openvpn-2.0/sample-config-files
$ cp server.conf /etc/openvpn/
$ vi /etc/openvpn/server.conf
—————————————-
local a.b.c.d ; Server 的 Real IP
port 1194
proto tcp ; 使用 tcp or udp
dev tap ; 使用 tap or tun
ca ca.crt ; 底下幾行指定 ca.crt 及各 key 的位置
cert server.crt
key server.key
dh dh1024.pem
server 192.168.2.0 255.255.255.0 ; OpenVPN 所使用的網段
ifconfig-pool-persist ipp.txt ; client Virtual IP 的對照表
push “route 192.168.1.0 255.255.255.0″ ; 讓 OpenVPN client 也可以連 192.168.1.x 網段
client-to-client ; 讓各個 OpenVPN client 也可以互連
keepalive 10 120
tls-auth ta.key 0 ; Server 要設 0 Client 設 1
comp-lzo
max-clients 10
user nobody
group nobody
persist-key
persist-tun
status openvpn-status.log
verb 3
—————————————-
都設定好後,就可以啟動 OpenVPN 了
$ /etc/init.d/openvpn start
成功啟動後,你就會看到系統多了一個 tap0 的裝置,IP 為 192.168.2.1
先為我的 ibook (Mac OS X) 做設定
首先,還是要先從 Server 上把 ca.crt ta.key 及 ibook.* 這幾個檔案都複製到 ibook 上
預設是放在 ~/Library/openvpn/ 底下
然後編輯 ibook client 端的設定檔
$ vi ~/Library/openvpn/openvpn.conf
或是直接執行應用程式裡的 Tunnelblick,然後會在選單列上看到圖示,選擇 “Edit Config File…”

—————————————-
client ; 表示這是 client 端的設定
dev tap
proto tcp
remote a.b.c.d 1194 ; a.b.c.d 為 Server 的 IP
resolv-retry infinite
nobind
user nobody
group nobody
persist-key
persist-tun
ca ca.crt
cert ibook.crt
key ibook.key
tls-auth ta.key 1 ; client 端要設成 1
comp-lzo
verb 3
—————————————-
編輯好後儲存
然後再選取選單列上的 Tunnelblick 裡的 “Connect”
這樣就連上了
執行 ifconfig 來看,會多了一個 tap0 IP 為 192.168.2.2
接著來測試看看
$ ping 192.168.2.1
$ ping 192.168.1.254
$ ping 192.168.1.x
都 ping 的到,那恭喜了
同樣的方式,我可以在公司的 Server 上再架一個 OpenVPN 的 Server
這樣我的 ibook 就可以同時連上家裡及公司內的各台機器了
不過,Mac OS X 上的這個 Tunnelblick 程式,目前只支援連一台 Server
若是想一次連到多個 OpenVPN server,可以不要用 GUI,直接用 command line
同樣先複製所需的 CA certificate 及 keys 到 ~/Library/openvpn/ 底下
然後,同樣在 ~/Library/openvpn/ 底下建立各個設定檔,如 client1.conf client2.conf
然後手動執行:
$ sudo openvpn –config client1.conf &
要連線到第二個 OpenVPN Server,再執行:
$ sudo openvpn –config client2.conf &
依此類推,或是乾脆直接寫個 script 來啟動多個設定檔:
startOpenVPN.sh
——————————————
#!/bin/bash
sudo pwd
cd ~/Library/openvpn/
for i in *.conf
do
sudo /usr/local/sbin/openvpn –config $i &
done
——————————————
然後在終端機下直接執行 sh startOpenVPN.sh 即可
再來設定我的 Fujitsu Notebook (Windows XP)
設定檔放在 C:\Program Files\OpenVPN\config\ 目錄底下
相關的 CA certificate 及 keys 一樣是複製到 C:\Program Files\OpenVPN\config\ 目錄底下
(包含 ca.crt ta.key fujitsu.*)
設定檔可以直接複製 C:\Program Files\OpenVPN\sample-config\ 裡的 client 再來修改即可
—————————————-
client
dev tap
proto tcp
remote a.b.c.d 1194 ; a.b.c.d 為 Server 的 IP
resolv-retry infinite
nobind
user nobody
group nobody
persist-key
persist-tun
ca ca.crt
cert fujitsu.crt
key fujitsu.key
tls-auth ta.key 1
comp-lzo
verb 3
—————————————-
再來就是點選狀態列裡的 “OpenVPn GUI” 選擇 “Connect”
在家裡及公司的 Server 上各架一台 OpenVPN Server
同時,兩台 OpenVPN Server 也各自再跑一個 OpenVPN Client,互相連對方
這樣,在公司內的任何一台機器,就可以利用 OpenVPN 連上家裡的 Server 以及家裡 NAT 底下的其他機器(192.168.1.x/24)
同樣的,在家裡的任何一台機器,也可以連上公司內部網路裡的任一台機器(10.0.0.x/24)
家裡 Server 端:
eth0: a.b.c.d (Real IP)
eth1: 192.168.1.254/24
tap0: 192.168.2.1/24
tap1: 192.168.3.x/24
公司 Server 端:
eth0: e.f.g.h (Real IP)
eth1: 10.0.0.254/24
tap0: 192.168.3.1/24
tap1: 192.168.2.x/24
產生 CA certificate 及 kyes 並複製到各個 Servers 及 Clinets (請參考之前的做法)
設定檔的部份如下:
$ vi /etc/openvpn/server.conf
—————————————-
local a.b.c.d ; 家裡 Server 的 Real IP
port 1194
proto tcp
dev tap
ca ca.crt
cert server.crt
key server.key
dh dh1024.pem
server 192.168.2.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push “route 192.168.1.0 255.255.255.0″
client-to-client
keepalive 10 120
tls-auth ta.key 0
comp-lzo
max-clients 10
user nobody
group nobody
persist-key
persist-tun
status openvpn-status.log
verb 3
—————————————-
$ vi /etc/openvpn/client.conf
—————————————-
client
dev tap
proto tcp
remote a.b.c.d 1194 ; a.b.c.d 為公司 Server 的 IP
resolv-retry infinite
nobind
user nobody
group nobody
persist-key
persist-tun
ca ca.crt
cert ns.crt
key ns.key
tls-auth ta.key 1
comp-lzo
verb 3
—————————————-
$ vi /etc/openvpn/server.conf
—————————————-
local a.b.c.d ; 公司 Server 的 Real IP
port 1194
proto tcp
dev tap
ca ca.crt
cert server_office.crt
key server_office.key
dh dh1024.pem
server 192.168.3.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push “route 10.0.0.0 255.255.255.0″
client-to-client
keepalive 10 120
tls-auth ta.key 0
comp-lzo
max-clients 10
user nobody
group nobody
persist-key
persist-tun
status openvpn-status.log
verb 3
—————————————-
$ vi /etc/openvpn/client.conf
—————————————-
client
dev tap
proto tcp
remote a.b.c.d 1194 ; a.b.c.d 為家裡 Server 的 IP
resolv-retry infinite
nobind
user nobody
group nobody
persist-key
persist-tun
ca ca.crt
cert fedora.crt
key fedora.key
tls-auth ta.key 1
comp-lzo
verb 3
—————————————-
www.flickr.com
|