摘要
这里以www.Linuxaid.com.cn为实例,指导在以服务器模式安装redhat以后,如何以最快的速度建设一个如同www.linuxaid.com.cn的服务器。在这里网站服务器上运行有以下服务器软件:FTP、DNS、WWW、mysql、Sendmail。(2002-07-02 12:32:53)
--------------------------------------------------------------------------------
By 处处
这里以www.linuxaid.com.cn为实例,指导在以服务器模式安装redhat以后,如何以最快的速度建设一个如同www.linuxaid.com.cn的服务器。在这里网站服务器上运行有以下服务器软件:Ftp、DNS、WWW、Mysql、Sendmail。
1.服务器安全
安装完Linux服务器以后,首先要对服务器进行初步的安全设置,一般来讲要考虑下面这些安全问题:安装服务器结束以后,缺省的各种服务器都是打开的,所以,首先需要关闭那些不需要的服务,因为这些服务可能会对系统安全造成威胁。首先需要关闭以下服务:finger、talk、ntalk、shell、login、pop3、tftp、linuxconf、ftp、telnet。这些服务的特点是他们都是由inetd进程启动的,也就是说这些服务并不直接启动,而是有inetd代其监听自己的服务端口,当有服务请求到来以后,inetd才会启动真正的服务进程,处理请求。而inetd的配置文件/etc/inetd.conf则指定了哪些服务需要从inetd来启动。因此如果需要关闭不需要的服务则应该编辑该文件,在相应的服务前加上注释符号 “#”例如,需要关闭finger服务,将:
finger stream tcp nowait nobody /usr/sbin/tcpd in.finger
修改为:
# finger stream tcp nowait nobody /usr/sbin/tcpd in.finger
对其他的服务可以采取同样的措施。
而对于那些不是从inetd启动的服务,则通过命令来关闭,例如需要关闭sendmail服务,则:
/etc/rc.d/init.d/sendmail stop
然后再设置其不在系统启动时启动:
chkconfig –level 12345 sendmail off
也可以使用ntsysv命令来设定是否自启动某个服务。
一般来讲,服务器上应当只启动必须的服务,对于那些不需要的服务,必须关闭。可以使用命令netstat –l –n来查看本机开放了那些服务:
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 ins:domain *:* LISTEN
tcp 0 0 ns:domain *:* LISTEN
tcp 0 0 www:domain *:* LISTEN
tcp 0 0 *:www *:* LISTEN
tcp 0 0 *:ftp *:* LISTEN
udp 0 0 *:1036 *:*
udp 0 0 ins:domain *:*
udp 0 0 ns:domain *:*
udp 0 0 www:domain *:*
raw 0 0 *:icmp *:* 7
raw 0 0 *:tcp *:* 7
Active UNIX domain sockets (only servers)
Proto RefCnt Flags Type State I-Node Path
从上面的输出可以看到,这台机器开放了dns、www、ftp、1036、icmp、tcp端口,可以查看/etc/service来确定数字表示的端口具体都是什么服务。
[1] [2] [3] 下一页
这里关闭了telnet服务,那么如何登录服务器进行配置呢?这里推荐使用SSH,因为telnet协议是采用明文方式传输密码和用户名,因此这些信息可能在传输过程中被窃听,而SSH是telnet的一种替代品,它的服务器和客户端之间的所有数据传输都进行了加密,因此提高了安全性。
若某个系统帐号用户不允许登录系统,而只允许其修改自己的密码,则需要修改起shell,也就是编辑/etc/passwd文件。举例如下,若不允许ideal登录系统则需要编辑passwd文件,修改:
ideal:x:500:500:ideal:/home/ideal:/bin/bash
为:
ideal:x:500:500:ideal:/home/ideal:/usr/bin/passwd
这样当该用户登录进入系统以后,只能修改自己的密码,修改完毕以后,系统会自动断开连接。
2.设置DNS服务器
我们首先为服务器设置dns服务器。这里假定www.linuxaid.com.cn的服务器ip地址为202.99.11.120,该服务器除了要解析linuxaid.com.cn的区信息以外,还要解析longshine.com.cn的区信息。也就是说本机要负责解析两个区的域名信息。这里假设www.longshine.com.cn的IP地址是202.99.12.120。
第一步:
编辑系统已经存在的/etc/resolv.conf文件,设置内容如下:
domain linuxaid.com.cn.
nameserver 202.99.11.120
该文件定义了本地域名和缺省域名服务器,可以根据自己的实际情况修改该文件。
第二步:
编辑系统已经存在的/etc/named.conf文件,初始内容为:
options {
Directory "/var/named";
};
zone "." {
type hint;
file "named.ca";
};
zone "0.0.127.in-addr.arpa" {
type master;
file "named.local";
};
修改内容如下:
options {
directory "/var/named";
};
zone "." {
type hint;
file "named.ca";
};
zone "linuxaid.com.cn"{
type master;
file "linuxaid.com.cn";
};
zone "longshine.com.cn"{
type master;
file "longshine.com.cn ";
};
zone "0.0.127.in-addr.arpa"{
type master;
file "named.local";
};
zone “12.99.202.in-addr.arpa"{
type master;
file "12.99.202";
};
zone “11.99.202.in-addr.arpa"{
type master;
file "11.99.202";
};
其中,type指定了该域的性质,hint指根域,master表示本机对该域是权威的主域名服务器。
第三步:
创建/var/named下的名为linuxaid.com.cn文件内容如下:
@ IN SOA ns. linuxaid.com.cn. root. linuxaid.com.cn. (
2000080701 ; serial
28800 ; refresh
7200 ; retry
604800 ; eXPire
86400 ; default_ttl
)
@ IN A 202.99.11.120
@ IN NS ns. linuxaid.com.cn.
@ IN MX 10 mail. linuxaid.com.cn.
localhost IN A 127.0.0.1
www IN A 202.99.11.120
mail IN A 202.99.11.120
ns IN A 202.99.11.120
ftp IN A 202.99.11.120
上一页 [1] [2] [3] 下一页
该文件是linuxaid.com.cn的域数据信息文件,其中定义了各种服务器的IP vs 域名的对应信息。其中:
@ IN A 202.99.11.120
一行定义域名linuxaid.com.cn对应的IP地址为201.99.11.120,当对linuxaid.com.cn进行通常的域名解析(这里指不是进行MX—邮件网关域名解析)时将会返回IP地址202.99.11.120的应答。
第四步:
创建/var/named目录下的名为longshine.com.cn文件内容如下:
@ IN SOA ns. longshine.com.cn. root. longshine.com.cn. (
2000080701 ; serial
28800 ; refresh
7200 ; retry
604800 ; expire
86400 ; default_ttl
)
@ IN A 202.99.12.120
@ IN NS ns. longshine.com.cn.
@ IN MX 10 longshine.com.cn.
localhost IN A 127.0.0.1
www IN A 202.99.12.120
mail IN A 202.99.12.120
ns IN A 202.99.12.120
ftp IN A 202.99.12.120
该文件是longshine.com.cn的域数据信息文件,其中定义了各种服务器的IP vs 域名的对应信息。
第五步:
创建/var/named目录下的名为named.local的文件内容如下:
@ IN SOA localhost. root.localhost. (
1997022700 ; serial
28800 ; refresh
14400 ; retry
3600000 ; expire
86400 ; default_ttl
)
@ IN NS localhost.
1 IN PTR localhost.
该文件定义了本地回路的域名反向解析信息。
第五步:
创建/var/named目录下的名为11.99.202的文件,内容如下:
@ IN SOA ns.linuxaid.com.cn. root.linuxaid.com.cn. (
2000080501 ; serial
28800 ; refresh
7200 ; retry
604800 ; expire
86400 ; default_ttl
)
@ IN NS ns.linuxaid.com.cn.
;
; SERVER SECTION
;
120 IN PTR www.linuxaid.com.cn.
120 IN PTR mail.linuxaid.com.cn.
120 IN PTR ns.linuxaid.com.cn.
120 IN PTR ftp.linuxaid.com.cn.
该文件定义了202.99.11网络的域名反向解析信息。
第六步:
创建/var/named目录下的名为12.99.202的文件内容如下:
@ IN SOA ns.longshine.com.cn. root.longshine.com.cn. (
2000080501 ; serial
604800 ; expire
86400 ; default_ttl
)
@ IN NS ns.linuxaid.com.cn.
;
; SERVER SECTION
;
120 IN PTR www.linuxaid.com.cn.
120 IN PTR mail.linuxaid.com.cn.
120 IN PTR ns.linuxaid.com.cn.
120 IN PTR ftp.linuxaid.com.cn.
该文件定义了202.99.11网络的域名反向解析信息。
第六步:
创建/var/named目录下的名为12.99.202的文件内容如下:
@ IN SOA ns.longshine.com.cn. root.longshine.com.cn. (
2000080501 ; serial