雖然公司已經有一個對外的專屬網站,也有專屬的人員在維護。
不過我總覺得,可以的話,我們資訊部門是不是也能自已架個站,
除了練練架站功力之外,也提供自已資訊人員交流學習的網站天地。
像是自已部門的新聞公告、討論區、檔案分享等等...
於是我利用之前籌備處的對外專線,找了一台電腦,開始準備我的架站大業!
機器用Debian Linux裝好後,我啓動了dhcp、squid一些對內的服務功能。
再利用xampp這個整合好的軟體包,啓動了apache、mysql、php等網頁的服務功能。
再接下來,找了xoops這個已經相當有名的CMS,來做出一個專屬的網站內容。
這裡要幫tad兄打個廣告,他的書和網站,很有參考價值。
http://tad.tnc.edu.tw
OK!現在網站用XOOPS做出雛形了。看看放到網際網路上的效果如何吧!
糟!原來之前籌備處的對外專線,現在己經改成一般浮動IP制的ADSL了。
那如何用浮動IP架站和管理呢?非得用動態DNS才能解決這樣的問題了。
嘿嘿嘿!還好有幾家提供這種服務的網路公司,而且免費耶,好好來利用吧。
http://www.no-ip.com
https://www.dyndns.com
本來我以為那台接在籌備處ADSL的IP分享器,Lemel IS6500。
有內建提供使用DynDNS的DNS指向浮動IP的服務,應該很容易解決說。
沒想到,在DynDNS註冊了帳號,也申請了它免費的Domain name,
然後讓機器成功的使用了我申請的Dynamic DNS。
但卻三天兩頭發生被鎖住停用的情形,心想!SHIT,免費的服務果然不穩。
後來我才找到解決的方法!
在我的機器上安裝它的client端軟體ddclient來用!
對了,client的安裝作業是在我架站的機器上進行,不是安裝在IP分享器,不要弄混了。
便何況,你應該沒辦法安裝軟體到IP分享器吧,對吧!
下載成功後,解開它:
[root@bullock ~]# wget http://cdn.dyndns.com/ddclient.tar.gz
[root@bullock ~]# tar xzvf ddclient.tar.gz
解開後,裡頭有個README文字檔。
[root@bullock ~]# cd ddclient-3.7.3/
[root@bullock ddclient-3.7.3]# vi README
找到以下的安裝說明!藍色文字是我另外加的註解。
+-------------------------------------+
INSTALLATION:
cp ddclient /usr/sbin/
mkdir /etc/ddclient
cp sample-etc_ddclient.conf /etc/ddclient/ddclient.conf
vi /etc/ddclient/ddclient.conf
-- and change hostnames, logins, and passwords appropriately
##如何修改帳密和相關設定,在這份文件裡的下方,有附幾個範例。
##但我的案例是要自已架站的主機,透過IP分享器連上網際網路,並使用DynDNS的服務。
##可以利用它官網上提供的一個精靈,來產生附合網路環境需求的設定檔。相當方便!
##https://www.dyndns.com/support/tools/clientconfig.html
##請登入成功後再使用精靈。
## For those using Redhat style rc files and using daemon-mode:
cp sample-etc_rc.d_init.d_ddclient /etc/rc.d/init.d/ddclient
##上面的指令是針對rpm系統,
##deb套件系統的路徑則是 /etc/init.d/ddclient 少了rc.d那層。
##Debian 版:cp sample-etc_rc.d_init.d_ddclient /etc/init.d/ddclient
## enable automatic startup when booting
/sbin/chkconfig --add ddclient
##Debian 版本的linux不適用以上指令。
## start the first time by hand
/etc/rc.d/init.d/ddclient start
##啓動服務用的指令。
+-------------------------------------+
以下連結提供了設定檔的內容和範例。
https://www.dyndns.com/support/kb/using_ddclient_with_dyndns_services.html
似乎使用了ddclient之後,最好還是要設定在crontab的服務中,才能真正解決困擾。
因為IP分享器所分配到的IP還是會三天兩頭被更新,若是ddclient不能真正隨時去更新的話,
DynDNS還是不會指到你的浮動IP的,這個問題,我認為是client軟體本身的問題吧!
也可能是我沒有真正搞懂設定檔,所以只能用crontab強制ddclient更新。
[root@bullock ~]# crontab -e
加入一行,內容如下:
30 23 * * * /usr/sbin/ddclient
每天晚上11點半,強制更新真實IP。
Dynamic DNS一旦穩定,如此一來,我就能透過網際網路,
來使用XOOPS的後台管理,繼續改造我的XOOPS了。
再進一步,如果我能再好好設定那台IP分享器的NAT部份,
那麼就算是我人不在公司,不管到那裡,
只要有網際網路,就也能處理公司裡的作業,
這不就是網管人員的理想嗎!看來,我快要實現它了。
以下是我在那台Lemel IS6500 IP分享器之下的網路環境,
放置在我一台ubuntu 7.10的主機裡,所使用的設定檔。
如果環境相似,那麼複製起來,記得改帳密就好!
有類似需求的朋友可以參考看看!
######################################################################
#From https://www.dyndns.com/support/tools/clientconfig.html
## ddclient configuration file
daemon=600 # check every 600 seconds
syslog=yes # log update msgs to syslog
mail-failure=bullock@mail.niceplaza.com.tw # Mail failed updates to user
pid=/var/run/ddclient.pid # record PID in file.
## Detect IP with our CheckIP server
use=web, web=checkip.dyndns.com/, web-skip='IP Address'
## DynDNS username and password here
login=***npmis***
password=***password***
## Default options
protocol=dyndns2
server=members.dyndns.org
## Dynamic DNS hosts
npmis.dynalias.org
######################################################################
而在我實作的經驗中,我發現設定檔中的daemon參數好像沒有作用?
這也是為何我要建議還要再利用crontab去強制執行ddclient的原因。
還有,那個protocol參數,定義的原理,是我困惑的地方,
到底dyndns2是什麼樣的一個協定,是屬TCP還是UDP?使用那一個port?
我查過/etc/services和/etc/protocols內容,都沒有相關的設定?
最後,針對文中有提到NAT的部份,我要再附帶提一下相關說明。
在IP分享器的網路環境下,要讓你的網頁伺服器能對外提供服務的話。
那麼你的IP分享器,一定要有可以設定NAT服務的地方,
一般網頁服務是用主機IP 加TCP 80 port來構成網頁瀏覽的通訊協定HTTP。
所以只要把IP分享器的TCP 80 port導向網頁伺服器的TCP 80 port。
那麼你原本在私有(內部)網路的網頁伺服器,便能對外提供服務了。
沒有留言:
張貼留言