淺談基于Linux的Intranet環境建造
2024-07-21 02:37:44
供稿:網友
張永鳴 劉正陽
在建設傳統的Intranet網絡環境的時候,我們一般是基于Windows NT Server系統的,在它的基礎上實現一系列的服務。 現在的linux系統中也包含了很多基于網絡建設的軟件服務,基本上我們是完全可以利用Linux系統建立與Windows NT Server所具有的基本Intranet框架相同的框架。并且還可以在這個基礎上發展具有Linux系統自身特點的Intranet環境,在某種程度上其性能還優于Windows NT Server系統。
我們先假設一個基于Linux系統局域網的網絡構架。首先,建議使用轉換器把Internet接口轉換為雙絞線,直接連接到一臺雙網卡Server上。該Server的另外一塊網卡和其他的Server及Client連接到一個Hub上面,成為一個局域網。雙網卡的服務器作為防火墻和網關,控制內部網和Internet連接的安全。我們在其上面還可以運行其他的服務,例如文件服務器、代理服務器、郵件服務器和Web服務器等。另外一臺服務器可以作為數據庫服務器,在其上主要運行數據庫服務。
雙網卡中對外的網卡必須有正式的ip,另外一塊網卡和其他計算機的網卡可以使用私有IP,范圍從“192.168.1~192.168.254”自由分配,其他計算機的網關地址都指向防火墻網關服務器的內部IP。防火墻網關服務器的網絡配置要根據申請的IP地址來具體設置。
一般地,我們要求的Intranet環境應該是提供最基礎的WWW服務、FTP服務、DNS服務、網上鄰居等服務項,下面我們就一一簡單地介紹一下。
1.WWW服務
首先我們要實現WWW服務,我們以在RedHat系統的完全安裝中為例,這里系統已經為大家安裝好了目前在Internet上使用得最多的HTTP服務器Apache, 你只需要使用“setup”命令選擇該服務,或者直接運行“httpd”即可。它的安裝根目錄是在/home/httpd/目錄下的,只要使用瀏覽器按照“IP地址”訪問你的Web server,就能夠看到Apache的說明文檔。假如你要發行自己的主頁,只需要將這些文檔放在/home/httpd/Html/下即可,或者是將httpd.conf中的文檔根目錄修改為你的Windows系統下的目錄,這樣既可以享受Linux的效率,也可享受Windows的頁面制作工具的便利。但是我們要注重在Linux環境中要區分大小寫,所以頁面中的文件名最好統一使用大小寫。在Windows環境中的頁面文件一般是.htm后綴,而缺省的Linux系統的瀏覽器Netscap或lyxn解釋的頁面文件是以.html為后綴的,你只需要在/etc/mime.types中增加如下一行即可:text/html html htm。同樣,你也可以按照注釋修改以下配置文件:
/etc/httpd/conf/httpd.conf
/etc/httpd/conf/access.conf
/etc/httpd/conf/srm.conf 以建立更加強大而靈活的WEB服務器。
2.FTP服務
接著讓我們看看FTP服務的實現,我們依然是在RedHat系統的完全安裝中,RedHat系統已經為你安裝好了目前Internet流行的WU-FTP-2.4.2 Server。它的匿名訪問目錄在/home/ftpd/中,假如是在FTP客戶端使用普通帳戶登錄,那么我們將直接進入該賬戶的主目錄。它的配置文件主要是:
/ect/ftpaccess。
域名服務(DNS服務)的功能是把我們取的名字映射為具體的IP地址。目前Internet流行的域名服務器BIND,它的執行進程是“named”,其配置文件有:
/ect/named.conf
/etc/resolv.conf
/var/named/named.ca
/var/named/named.local
/var/named/named.hosts(自建)
/var/named/named.rev
其中的自建文件需要符合“named”配置文件的格式,我們從已有的文件中cp即可,尤其注重BIND 4的配置文件格式和BIND 8p是完全不同的,假如使用的版本不同的話,請查閱其具體的配置文件。
3.RAS服務
RAS服務(PPP)也是傳統的服務之一,配置PPP在Linux系統中是比較復雜的一項工作。它的主要配置文件有:
/etc/mgetty+sendfax/mgetty.config
/etc/mgetty+sendfax/loging.config
/etc/inittab
/etc/ppp/options
/etc/ppp/ppplogin
/etc/ppp/options.ttyS2
/etc/ppp/pap-secrets
/etc/hosts
提醒大家的是假如使用Win95的撥號適配器的話,它的網關為撥號服務器的IP,DNS為內部網的DNS Server的IP,設置遠程自動配置IP,新手可以先不啟動該服務。
4.DHCP功能
DHCP的功能是動態分配IP地址。注重在啟動dhcpd之前,增加一項缺省路由:/sbin/route add -host 255.255.255.255 dev eth0具體的格式可以使用“main dhcpd”得到。它的執行進程是“dhcpd”,它的配置文件有:
/etc/dhcpd.conf /etc/dhcpd.leases(空文件)
/etc/dhcpd.leases~(空文件夾)
5.網上鄰居
網上鄰居(smbd nmbd)也是我們很關心的功能,微軟的網上鄰居是局域內直接而簡便的資源共享方法,但它采用的是Netbeui協議。而Linux系統采用的主要是TCP/IP協議,它提供的Samba可以方便地完成網上鄰居的功能,讓你的用戶通過網上鄰居看到你的服務器和共享的資源。其主要配置文件有:
/etc/smb.conf
/etc/smbusers
代理服務和防火墻(routed lpmasquerdde ipfwadm)的設置對于一些用戶也是必要的。在Windows NT中也有“routed”命令,但要實現共享IP地址卻要使用專門的代理軟件,如PRoxy Server、 Wingate、Winproxy等。在這方面,Linux利用核心支持的“ipmasquerad”功能,配合“routet”和“ipfwadm”則可以輕松地實現這一功能,并且在使用瀏覽器時還不需要指定代理服務器,同時利用“ipfwadm”確定接收和發送數據包的規則,并且還可以提供基于包過濾的防火墻設施。它的主要配置命令有:
/sbin/ipfwadm -F -P deny
/sbin/ipfwadm -F -a m -s 192.168.0.0/16 -D 0.0.0.0/0
/sbin/route add -net 192.168.0.0 netmask 255.255.255.0 gw 130.0.40.1
6.SQL數據庫系統
SQL數據庫系統(postgresql)在目前的Intranet環境中是越來越重要了,但在Windows NT平臺上運行的商品化的SQL數據庫價格不菲。Linux系統集成的SQL數據庫主要有Postgre和SQLMySQL,它們均達到了SQL92的標準,并且提供在 Windows系統的客戶端的ODBC驅動程序,是非常理想的后端數據庫系統。PostgreSQL是普遍使用的免費SQL數據庫系統之一,而且是一些商用SQL數據庫的原形。盡管它可能沒有現在的某些商品化SQL功能強大,并且能夠處理中文,作為一般的Intranet Web數據庫系統,使用它已經是綽綽有余了。它還為編制CGI程序提供了方便的接口。要訪問postgreSQL可使用命令“psql”,缺省的治理員賬號“postgres”是在安裝后禁用的,需要給予登錄權限。為了讓Web客戶能夠訪問數據庫,我們需要給“nobody”用戶授權。
微軟的asp技術作為IIS的模塊,可以簡化CGI程序的編制,提高Web服務器的效率,提供靈活的數據庫連接方法。Linux系統中的Apache也有相應的php模塊,由于Linux系統中包含有使用最廣泛的CGI編程語言PERL 5,所以我們可以輕松而高效地設計CGI程序。
7.其他實現
Linux系統里還有一些對構建Intranet環境比較有用的東西,比如磁盤限額(quota)服務,使用限額機制可以控制用戶對資源的擁有量,防止非法上載,是多用戶環境下必須具備的功能。我們還是以RedHat為例,RedHat中啟動磁盤限額方法很簡單,只需要使用Linuxconf中的相應選項即可。但是你需要在實施限額的文件系統的根目錄下建立“quota.user”和“quota.group”兩個空文件,并且,應該在安裝完系統后立即啟動該服務,linuxconf程序不光可以動態配置系統,而且具有多種工作界面,極大地方便了用戶配置與治理系統。為了能夠運行linuxconf,我們必須以根(root)用戶的身份登錄Linux系統。假如你不是以根用戶的身份登錄系統,那么可在系統提示符下執行“su”命令,變成根用戶。常見的linuxconf工作界面有:命令行界面、字符單元界面(使用了像RedHat Linux安裝時的用戶界面形式)、基于XWindow的界面(提供易于使用的“點擊”樹狀菜單)。
我們以RedHat Linux 6.0系統為例,想要linuxconf在Web瀏覽器環境工作,必須進行以下設置:
* 在gnome-linuxconf對話框中,打開“Config/Networking/Misc/Linuxconf network access”分支,選中“Enable netwoork access”選項。
* 在對話框中輸入任何答應使用Linuxconf的計算機的主機名,包括用戶主機名字。
* 選擇“Accept”按鈕,并按空格鍵,單擊“Quit”按鈕。
* 啟動Netscape瀏覽器,在URL欄鍵入:http://〈hostname〉:98/ 〈cr〉。其中,必選項“hostname”應換成用戶計算機的主機名。
* 選擇瀏覽器頁面底部的“Start”按鈕,在彈出的口令驗證框中,分別輸入根用戶的名字“root”和相應的口令。假如口令正確,則進入基于Web的linuxconf工作界面。該界面主要由Config和Control兩部分組成,它們各自均含有5個具有超鏈接特性的選項,用戶單擊具體的選項,即可打開對應的頁面,完成相應的配置。
Linux系統中包含的“sendmail”是Internet電子郵件系統中主要的SMTP軟件,“imapd”軟件是POP3郵件服務器,可以讓你使用Netscape或IE輕松收發電子郵件。注重,你要在/etc/sendmail.cw中添加內部域名,再將/etc/sendmail.cf中的F項修改為Fw/etc/sendmail.cw.遠程登錄(Telnet)。
現在有很多的關于Linux系統方方面面的文章,所以假如是要建立一個基于Linux系統的Intranet環境,還有很多的參考,而且要是想讓你的Intranet環境完美起來,還有很多的服務等你實現。