如何在Linux中实现Intranet环境
时间:2007-02-17 来源:PHP爱好者
1.应用环境及硬件选择
----如果说在Windows环境下使用次数最多的是鼠标的点击,那么在Linux环境里使用得最多的可能就是键盘了。由于Linux 集成的软件不是来自于某一个或是几个公司,而是广大的教育机构和广大的爱好者,所以它在集成性上比 Windows还是要稍逊一筹,但是它作为Intranet服务器端的平台是完全能够胜任的。以下是笔者的应用环境图:
----由于笔者没有直接接入Internet,而是使用网卡连接到一个大的网络,假设连接外部网的地址为130.0.40.1 ,如果通过Modem直接接入Internet,那么到外部网的地址便是Modem获取的IP地址。笔者使用的Linux发行版本是RedHat 5.1,硬件平台是普通的联想奔腾微机。用户选择时应主要注意显示卡不要太好,因为一般的生产厂家还没有随卡提供Linux的X-Window驱动程序,但普通的S3卡有很好的支持。在选择网卡时还要注意Linux是否支持该设备,一般的Ne2000兼容网络卡、3Com和Intel的网卡是没有问题的,到/usr/src/linux下使用make menuconfig 可以查看系统核心源程序中的网卡支持,笔者使用的是Realtek的8219网络卡,需要重新编
译核心并运行。
2.可实现的典型Intranet服务
----WWW服务(apache)
----在RedHat 5.1系统的完全安装中,已经为大家安装好了目前在Internet网上使用得最多的HTTP服务器Apache,你只需要使用setup选择该服务,或者直接运行httpd。它的安装根目录是在/home/httpd/目录下,配置文件的目录在/etc/httpd下,只要使用浏览器按IP地址访问你的Web Server,就能够看到apache的说明文档。如果你要发行主页,只需要将它们也放在/home/httpd/html/下即可,或者是将httpd.conf中的文档根目录修改为你的Windows下的目录,这样既可以享受Linux的效率,也可分享基于Windows的页面制作工具的便利。只需注意Linux环境中要区分大小写,所以页面中的文件名最好统一使用小写。
----在Windows环境中的页面文件一般是.htm后缀,而缺省的Linux的浏览器Netscape或lynx解释的页面文件使用.html后缀,你只需要在/etc/mime.types中增加如下一行即可:
text/html html htm
----同样你也可以按照注释修改以下配置文件:
/etc/httpd/conf/httpd.conf
/etc/httpd/conf/access.conf
/etc/httpd/conf/srm.conf
----以建立更加强大而灵活的Web服务器。
----FTP服务(Wu-ftpd)
----在RedHat 5.1系统的完全安装中,已经为你安装好了目前Internet流行的Wu-FTP-2.4.2 Server。它的匿名访问目录在 /home/ftpd/中,倘若在FTP客户端使用普通账户登录,将直接进入该账户的主目录。它的配置文件主要有/etc/ftpaccess。
----DNS服务(bind-8.1.2)
----DNS的功能是把名字映射为具体的IP地址。在RedHat 5.1系统的完全安装中,已经为你安装好了目前Internet流行的域名服务器BIND,它来自著名的加州大学伯克利尔分校。它的执行进程是named,其配置文件有:
/etc/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 8完全不同。
----DHCP服务(dhcpd)
----DHCP的功能是动态分配IP地址。在RedHat 5.1系统的完全安装中,已经为你安装好了DHCP服务器,它的执行进程是dhcpd,它的配置文件有:
/etc/dhcpd.conf
/etc/dhcpd.leases(空文件)
/etc/dhcpd.leases~(空文件)
----注意在启动dhcpd之前,增加一项缺省的路由:
----/sbin/ route add -host 255.255.255.255 dev eth0(在/usr/doc/dhcp-2.0.b1pl/下有说明)详细的dhcpd的格式可以使用man dhcpd得到。
----RAS服务(PPP)
----笔者感觉配置PPP是Linux系统中最复杂的一项工作,在此使用《PPP Server的安装方法》中介绍的方法,效果很好。它的主要配置文件有:
/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。新手可以先不启动该服务。
----网络邻居(smbd、nmbd)
----微软的网上邻居是局域网内直接而简便的资源共享方法,但它采用的是Netbeui协议。而Linux系统采用的主要是TCP/IP协议簇,它提供的Samba可以方便地完成网上邻居的功能,让你的Win95客户从网上邻居中看到你的服务器和资源。其主要配置文件有:
/etc/smb.conf
/etc/smbusers
----在Win95环境下使用smb,需要设置好TCP/IP协议。
----代理服务和防火墙(routed、 Ipmasquerade、ipfwadm)
----在Windows NT中也有route命令,但要实现共享IP地址却要使用专门的代理软件,如Proxy Server、Wingate、Winproxy等。在这方面,Linux利用核心支持的ipmasquerade功能,配合route和 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
----SQL数据库系统(postgresql)
----SQL数据库在目前的Intranet环境中扮演着重要的角色,但Windows NT平台上运行的商品化SQL数据库的价格不菲。Linux系统中集成的SQL数据库主要有PostgreSQL和mySQL,它们均实现了SQL92标准,且提供在Windows客户端的ODBC驱动程序,是非常理想的后端数据库系统。PostgreSQL是普遍使用的免费SQL数据库系统之一,而且是一些商用SQL数据库的原形。尽管它可能没有现在的某些商品化SQL 功能强大,但作为一般的Intranet Web 数据库系统已经绰绰有余,并且能够处理中文。它还为编制CGI程序提供了方便的接口。完全安装RedHat 5.1后,已经安装好了postgresql6.3.2,要访问postgreSQL可使用命令:
----psql库名
----注意,缺省的管理员账号是postgres 在安装后被禁用,需要给予登录权限。为了让Web客户访问数据库,需要给nobody用户授权。
----通用CGI包装盒(php)
----微软的ASP技术作为IIS的模块,可以简化 CGI程序的编制,提高Web服务器的效率,提供灵活的数据库连接方法。Linux系统中的Apache也有相应的php模块,而RedHat 5.1要稍微麻烦一些,需要编译php的源程序。由于Linux 系统中包含有使用得最广泛的CGI编程语言PERL 5,可以轻松而高效地设计你的CGI程序。
3.Linux系统的特性
----以上介绍了利用Linux系统包含的软件建立具有Windows NT server4所具有的基本Intranet框架。实际上,Linux系统里还包含以下一些对于构建Intranet环境特别有用的东西:
----磁盘限额(quota)
----使用限额机制可以控制用户对资源的拥有量,防止非法上载,是多用户环境下必须具备的功能。 Windows NT 5.0将要提供UNIX环境具有的磁盘限额功能。RedHat中启动磁盘限额的方法很简单,只需要使用linuxconf中的相应选项即可。注意,你需要在实施限额的文件系统的根建立quota.user和 quota.group两个空文件,并且,应该在安装完系统后立即启动该服务。
----邮件服务(sendmail、imapd)
----在Intranet环境中,可能由于不能购买专业的邮件服务器软件而无法启动电子邮件服务。Linux系统中包含的sendmail是Internet电子邮件系统中主要的SMTP软件,imapd软件是 POP3邮件服务器,可以让你使用Netscape或IE轻松收发电子邮件。
----注意,你要在/etc/sendmail.cw中添加内部域,再将/etc/sendmail.cf中F项修改为Fw/etc/sendmail.cw。
----远程登录(Telnet)
----在Win95环境中只提供的telnet客户程序用来访问UNIX主机,同样你可以使用它来操作和控制你的服务器。同时,也可以为用户提供使用UNIX系统的环境,使用丰富的应用软件。
4.使用Linux的注意事项
----以上简单介绍了使用Linux构建Intranet 的方法,要用好Linux系统和它集成的软件,需要更为深入地了解它的服务提供的功能,并可以使用联机帮助。别忘了在/usr/doc/中寻找更详细的帮助和示例,尤其是在/usr/doc/HOWTO下的许多经典文章,如《DOS-to-Linux-HOWTO》、《NET-3-HOWTO》、《Security-HOWTO》等。同样,别忘了亲自上机试一试,如果你是一名Linux系统的新手,千万别因为害怕重新安装系统而疏远了Linux,实际上目前Linux的安装界面已经比较友好,主要缺点是在设置安装点时容易出问题。另外,新手安装系统时最好选择完全安装。
----在用Linux构建Intranet环境的过程中,笔者深刻地体会到了它的强大功能,阻碍笔者使用它的可能是笔者自己的惰性和长期形成的微软的思维模式,在越来越强调降低信息费用的今天,Linux系统的确带给笔者新的思考。实际上,推广使用Intranet处理方式的初衷便是利用C/S模式降低信息处理和共享的费用。
php爱好者站 http://www.phpfans.net dreamweaver|flash|fireworks|photoshop.
----如果说在Windows环境下使用次数最多的是鼠标的点击,那么在Linux环境里使用得最多的可能就是键盘了。由于Linux 集成的软件不是来自于某一个或是几个公司,而是广大的教育机构和广大的爱好者,所以它在集成性上比 Windows还是要稍逊一筹,但是它作为Intranet服务器端的平台是完全能够胜任的。以下是笔者的应用环境图:
----由于笔者没有直接接入Internet,而是使用网卡连接到一个大的网络,假设连接外部网的地址为130.0.40.1 ,如果通过Modem直接接入Internet,那么到外部网的地址便是Modem获取的IP地址。笔者使用的Linux发行版本是RedHat 5.1,硬件平台是普通的联想奔腾微机。用户选择时应主要注意显示卡不要太好,因为一般的生产厂家还没有随卡提供Linux的X-Window驱动程序,但普通的S3卡有很好的支持。在选择网卡时还要注意Linux是否支持该设备,一般的Ne2000兼容网络卡、3Com和Intel的网卡是没有问题的,到/usr/src/linux下使用make menuconfig 可以查看系统核心源程序中的网卡支持,笔者使用的是Realtek的8219网络卡,需要重新编
译核心并运行。
2.可实现的典型Intranet服务
----WWW服务(apache)
----在RedHat 5.1系统的完全安装中,已经为大家安装好了目前在Internet网上使用得最多的HTTP服务器Apache,你只需要使用setup选择该服务,或者直接运行httpd。它的安装根目录是在/home/httpd/目录下,配置文件的目录在/etc/httpd下,只要使用浏览器按IP地址访问你的Web Server,就能够看到apache的说明文档。如果你要发行主页,只需要将它们也放在/home/httpd/html/下即可,或者是将httpd.conf中的文档根目录修改为你的Windows下的目录,这样既可以享受Linux的效率,也可分享基于Windows的页面制作工具的便利。只需注意Linux环境中要区分大小写,所以页面中的文件名最好统一使用小写。
----在Windows环境中的页面文件一般是.htm后缀,而缺省的Linux的浏览器Netscape或lynx解释的页面文件使用.html后缀,你只需要在/etc/mime.types中增加如下一行即可:
text/html html htm
----同样你也可以按照注释修改以下配置文件:
/etc/httpd/conf/httpd.conf
/etc/httpd/conf/access.conf
/etc/httpd/conf/srm.conf
----以建立更加强大而灵活的Web服务器。
----FTP服务(Wu-ftpd)
----在RedHat 5.1系统的完全安装中,已经为你安装好了目前Internet流行的Wu-FTP-2.4.2 Server。它的匿名访问目录在 /home/ftpd/中,倘若在FTP客户端使用普通账户登录,将直接进入该账户的主目录。它的配置文件主要有/etc/ftpaccess。
----DNS服务(bind-8.1.2)
----DNS的功能是把名字映射为具体的IP地址。在RedHat 5.1系统的完全安装中,已经为你安装好了目前Internet流行的域名服务器BIND,它来自著名的加州大学伯克利尔分校。它的执行进程是named,其配置文件有:
/etc/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 8完全不同。
----DHCP服务(dhcpd)
----DHCP的功能是动态分配IP地址。在RedHat 5.1系统的完全安装中,已经为你安装好了DHCP服务器,它的执行进程是dhcpd,它的配置文件有:
/etc/dhcpd.conf
/etc/dhcpd.leases(空文件)
/etc/dhcpd.leases~(空文件)
----注意在启动dhcpd之前,增加一项缺省的路由:
----/sbin/ route add -host 255.255.255.255 dev eth0(在/usr/doc/dhcp-2.0.b1pl/下有说明)详细的dhcpd的格式可以使用man dhcpd得到。
----RAS服务(PPP)
----笔者感觉配置PPP是Linux系统中最复杂的一项工作,在此使用《PPP Server的安装方法》中介绍的方法,效果很好。它的主要配置文件有:
/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。新手可以先不启动该服务。
----网络邻居(smbd、nmbd)
----微软的网上邻居是局域网内直接而简便的资源共享方法,但它采用的是Netbeui协议。而Linux系统采用的主要是TCP/IP协议簇,它提供的Samba可以方便地完成网上邻居的功能,让你的Win95客户从网上邻居中看到你的服务器和资源。其主要配置文件有:
/etc/smb.conf
/etc/smbusers
----在Win95环境下使用smb,需要设置好TCP/IP协议。
----代理服务和防火墙(routed、 Ipmasquerade、ipfwadm)
----在Windows NT中也有route命令,但要实现共享IP地址却要使用专门的代理软件,如Proxy Server、Wingate、Winproxy等。在这方面,Linux利用核心支持的ipmasquerade功能,配合route和 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
----SQL数据库系统(postgresql)
----SQL数据库在目前的Intranet环境中扮演着重要的角色,但Windows NT平台上运行的商品化SQL数据库的价格不菲。Linux系统中集成的SQL数据库主要有PostgreSQL和mySQL,它们均实现了SQL92标准,且提供在Windows客户端的ODBC驱动程序,是非常理想的后端数据库系统。PostgreSQL是普遍使用的免费SQL数据库系统之一,而且是一些商用SQL数据库的原形。尽管它可能没有现在的某些商品化SQL 功能强大,但作为一般的Intranet Web 数据库系统已经绰绰有余,并且能够处理中文。它还为编制CGI程序提供了方便的接口。完全安装RedHat 5.1后,已经安装好了postgresql6.3.2,要访问postgreSQL可使用命令:
----psql库名
----注意,缺省的管理员账号是postgres 在安装后被禁用,需要给予登录权限。为了让Web客户访问数据库,需要给nobody用户授权。
----通用CGI包装盒(php)
----微软的ASP技术作为IIS的模块,可以简化 CGI程序的编制,提高Web服务器的效率,提供灵活的数据库连接方法。Linux系统中的Apache也有相应的php模块,而RedHat 5.1要稍微麻烦一些,需要编译php的源程序。由于Linux 系统中包含有使用得最广泛的CGI编程语言PERL 5,可以轻松而高效地设计你的CGI程序。
3.Linux系统的特性
----以上介绍了利用Linux系统包含的软件建立具有Windows NT server4所具有的基本Intranet框架。实际上,Linux系统里还包含以下一些对于构建Intranet环境特别有用的东西:
----磁盘限额(quota)
----使用限额机制可以控制用户对资源的拥有量,防止非法上载,是多用户环境下必须具备的功能。 Windows NT 5.0将要提供UNIX环境具有的磁盘限额功能。RedHat中启动磁盘限额的方法很简单,只需要使用linuxconf中的相应选项即可。注意,你需要在实施限额的文件系统的根建立quota.user和 quota.group两个空文件,并且,应该在安装完系统后立即启动该服务。
----邮件服务(sendmail、imapd)
----在Intranet环境中,可能由于不能购买专业的邮件服务器软件而无法启动电子邮件服务。Linux系统中包含的sendmail是Internet电子邮件系统中主要的SMTP软件,imapd软件是 POP3邮件服务器,可以让你使用Netscape或IE轻松收发电子邮件。
----注意,你要在/etc/sendmail.cw中添加内部域,再将/etc/sendmail.cf中F项修改为Fw/etc/sendmail.cw。
----远程登录(Telnet)
----在Win95环境中只提供的telnet客户程序用来访问UNIX主机,同样你可以使用它来操作和控制你的服务器。同时,也可以为用户提供使用UNIX系统的环境,使用丰富的应用软件。
4.使用Linux的注意事项
----以上简单介绍了使用Linux构建Intranet 的方法,要用好Linux系统和它集成的软件,需要更为深入地了解它的服务提供的功能,并可以使用联机帮助。别忘了在/usr/doc/中寻找更详细的帮助和示例,尤其是在/usr/doc/HOWTO下的许多经典文章,如《DOS-to-Linux-HOWTO》、《NET-3-HOWTO》、《Security-HOWTO》等。同样,别忘了亲自上机试一试,如果你是一名Linux系统的新手,千万别因为害怕重新安装系统而疏远了Linux,实际上目前Linux的安装界面已经比较友好,主要缺点是在设置安装点时容易出问题。另外,新手安装系统时最好选择完全安装。
----在用Linux构建Intranet环境的过程中,笔者深刻地体会到了它的强大功能,阻碍笔者使用它的可能是笔者自己的惰性和长期形成的微软的思维模式,在越来越强调降低信息费用的今天,Linux系统的确带给笔者新的思考。实际上,推广使用Intranet处理方式的初衷便是利用C/S模式降低信息处理和共享的费用。
php爱好者站 http://www.phpfans.net dreamweaver|flash|fireworks|photoshop.
相关阅读 更多 +