快速实现基于Linux的Intranet
1、可实现的典型intranet
www 服务(apache)
在 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服务器
FTP 服务
在 redhat 系统的完全安装中,已经为你安装好了目前 internet 流行的 wu-ftp-2.4.2 server。它的匿名 访问目录在职 /home/ftpd/ 中,倘若在 ftp 客户端使用普通帐户登录,将直接进入该账户的主目录。它的配置文件主要有
/ect/ftpaccess.
dns 服务(bind-8.1.2)
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 完全不同的
dhcp 服务(dhcpd)
dhcp 的功能是动态分配 ip 地址。它的执行进程是 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.bb1pl/下有说明)详细的 格式可以使用 main 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
代理服务和防火墙(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
sql 数据库系统 (postgresql)
sql 数据库在目前的 intranet 环境中扮演着重要的角色,但windows nt 平台上运行的商品化 sql 数据库的 价格不菲 .linux 系统集成的 sql 数据库主要有 postgre 和 sqlmysql ,它们均实现了sql92标准,且提供在 windows 客户端的 odbc 驱动程序,是非常理想的后端数据库系统。 postgresql 是普遍使用的免费 sql 数据库系统之一,而且是一些商用 sql 数据库的原形。尽管它可能没有现在的某些商品化 sql 功能强大,但作为一般的 intranet web 数据库系统已经绰绰有余,并且能够处理中文。它还为编制 cgi 程序提供了方便的接口。要访问postgresql 可使用命令: psql 库名注意,缺省的管理员账号postgres 在安装后禁用,需要给予登录权限。为了让 web 客户访问数据库, 需要给 nobody 用户授权。
通用 cgi 包装盒(PHP)
微软的 ASP 技术作为 iis 的模块,可以简化 cgi 程序的编制,提高 web 服务器的效率,提供灵活的数据库 连接方法。linux 系统中的apache 也有相应的php模块,而 redhat5.1 要稍麻烦一些,需要编译 php的源程序。由于 linux 系统中包含有使用最广泛的 cgi 编程语言perl 5 ,可以轻松而高效地设计你的 cgi 程序。
2、linux 系统的特性
以上的介绍了利用 linux 系统包含的软件建立具有 windows nt server 4 所具有的基本 intrenet 框架。 实际上,linux 系统里还包含以下一些对构建 internet 环境特别有用的东西:
磁盘限额 (quota)
使用限额机制可以控制用户对资源的拥有量,防止非法上载,是多用户环境下必须具备的功能。 windows nt 5.0 将要提供 unix 环境具有的磁盘限额功能。 redhat 中启动磁盘限额方法很简单,只需要 使用linuxconf 中的相应选项即可。注意,你需要在实施限额的文件系统的根建立 quota.user 和 quota.group 两个空文件,并且,应该在安装完系统后立即启动该服务。
邮件服务(sendmail imapd)
linux 系统中包含的 sendmail 是 internet 电子邮件系统中主要的smtp 软件、imapd 软件是 pop3 邮件服务器,可以让你使用netscape或ie轻松收发电子邮件。 注意,你要在 /etc/sendmail.cw 中添加内部域 ,再将 /etc/sendmail.cf 中的f项修改为 fw/etc/sendmail.cw. 远程登录(telnet) 在 win95 环境中只提供的 telnet 客户程序用来访问 unix 主机,同样地你可以使用它来操作和控制你的服务器。同时,也可以为用户提供使用 unix 系统的环境,使用丰富的应用软件。
3、使用 linux 的注意事项
以上简单介绍了使用 linux 构建 intranet 的方法,要用好 linux 系统和它集成的软件,需要更为深入地了解它的服务提供的功能,并可以使用联机帮助。别忘了在 /usr/doc 中寻找更详细的帮助和示例,尤其是在 /usr/doc/howto 下许多经典文章,如《dos-to-linux-howto》、《net-3-howto》、《security-howto》。