第13章 Linux网络应用与服务
【知识要点】
1.常用命令与配置文件。
2.Squid服务器。
3.Samba服务器。
4.BIND服务器。
5.DHCP服务。
6.FTP服务。
7.APACHE服务器。
8.SENDMAIL服务器。
【学习内容】
13.1常用命令与配置文件
13.1.1 用户和组管理
在Linux系统中,每个文件和程序必须属于某一个“用户”,每个用户对应一个账号。超级用户root承担了系统管理的一切任务,可以控制所有的程序,访问所有文件,使用系统中的所有功能和资源。Linux系统中其他的用户都是由root用户创建。
Linux系统中用户和组群的管理是通过对有关的系统文件的修改和维护实现的,与用户和组相关的管理维护信息都存储在一些系统文件中,其中较为重要的文件包括/etc/passwd、/etc/shadow和/etc/group。
/etc/passwd对所有用户都是可读的。每个用户在/etc/passwd文件中都有一行对应的记录。/etc/shadow只有超级用户root才能读取,该文件保护系统中所有用户及其口令等相关信息。/etc/group用于对用户组进行管理。
13.1.2 文件和目录管理
Linux文件系统一般包括普通文件、目录文件、链接文件、设备文件、管理文件盒套接字文件。
普通文件是用户和系统存放数据、程序等信息的文件,分为文本文件和二进制文件。目录文件是文件系统中一个目录所包含的目录项组成的文件,包括文件、子目录及其指针。用户进程可以读取目录文件,但是不能进行修改。链接文件通过在不同的文件系统之间建立链接关系实现对文件的访问,提供了一种共享文件的方法。设备文件是一种用于与I/O设备进行连接的文件,分为字符设备文件和块设备文件。管道文件主要用于在进程间传递数据。套接字文件通常用在网络数据连接中。
在Linux文件系统中,目录和文件可以根据实际的需要设置读取、写入和执行等权限。
13.1.3 常见网络配置文件
常见网络配置文件如下:
/etc/sysconfig/network-scripts/ifcfg-ethn,与网卡相关的参数位于该文件中。
/ect/sysconfig/network,这是一个用来指定服务器上的网络配置信息的文件,包含了控制和网络有关的文件、守护程序行为的参数。
/etc/hostname,该文件包含系统的主机名称,完整的域名等信息。
etc/host,该文件中包含IP地址和主机名称之间的映射,以及主机名的别名。
/etc/host.confg,该文件相当于一个缓存,用于存储域名查询结果。
/etcresolv.confg,配置DNS客户,包含了主机的域名搜索顺序和DNS服务器的地址。
13.2 Squid服务器
对于Web用户来说,Squid是一个高性能的代理缓存服务器,可以提高内网用户访问Internet的速率。
Squid由主服务程序Squid、DNS查询程序dnsserver,以及重写请求和执行认证的程序、管理工具等组成。当Squid启动以后,可以派生出指定书目的dnsserver进程,用于执行DNS查询。
Squid的主要功能包括:代理和缓存HTTP、FTP和其它URL请求;代理SSL请求;支持ICP、HTCP、CARP等缓存摘要;支持多种方式的访问控制和全部请求的日志记录;提供HTTP服务器加速;能够缓存DNS查询。
Squid代理服务器的配置信息存放在/etc/Squid/Squid.conf文件中。主要配置项有:监听地址和端口;内存缓冲区大小;日志文件;管理参数;超时控制。
13.3 Samba服务器
Samba是基于TCP/IP的SMB协议在Linux中的实现。从Windows的角度看,通过Samba共享的Linux资源就像在另一台Windows上一样,无须其它的桌面客户软件就可以实现访问。
Samba的配置文件一般存放在/etc/samba目录中,主配置文件名为smb.conf。主要配置项有:网络服务设置;启动项设置;记录文件;全局参数;共享资源。
13.4 BIND服务器
BIND是在Linux系统中实现的域名解析服务软件包。BIND是一个C/S系统,客户端的转换程序负责生成域名信息的查询,并将这类信息发送给服务器端;服务器端是一个称为named的守护进程,负责回答转换程序的查询。
作为DNS客户端,第一步是在用户的计算机上配置客户端程序,即向域名服务器获得域名解析服务。在进行域名解析时,DNS客户端首先根据本机上/etc/hosts.confg文件的内容,决定查询顺序。
在DNS域名空间中,BIND服务器有三种类型:主域名服务器、辅助域名服务器和缓存域名服务器。
BIND的主配置文件是/etc/named.conf,配置内容有:设置根区域、正向解析区域和反向解析区域。
13.5 DHCP服务
Linux系统中使用/etc/dhcpd.conf文件配置DHCP服务器,使用/var/lib/dhcp/dhcpd.leases文件存储客户租约数据。
DHCP服务器的配置内容主要有:设置IP作用域,即地址池;设置客户端的IP选项,包括默认网关、子网掩码和DNS服务器、广播地址;设置租用期限。
13.6 FTP服务
目前在Linux系统中使用的FTP服务器软件主要有Wu-FTPD、ProFTPD、vsFTPd和Pure-FTPd。FTP服务器的配置内容主要有:监听地址和控制端口、FTP模式与数据端口、负责控制、超时选项、用户登录控制等。
13.7 Apache服务器
Apache服务器的所有配置信息都存储在httpd.conf文件中。在httpd.conf文件中有一系列标记,这些标记指示Apache Web服务器应该如何配置它本身和模块。httpd.conf文件的内容可以分为三个基本部分:全局配置、主服务器配置和虚拟主机配置。
全局配置控制Apache进程整体操作的命令。
主服务器配置定义主服务器或默认服务器的参数。
虚拟主机使得Web请求可以发送到不同的IP地址或主机名中,但是由相同的Apache进程处理。
Apache还提供了access.confg文件用于配置服务器的访问权限,srm.conf文件用于进行资源映射,例如告诉服务器各种文件的MIME类型,以及如何支持这些文件。
13.8 Sendmail服务器
Sendmail是一个广泛使用的报文传输代理MTA,建立在SMTP协议上,负责把邮件从用户代理UA传送到接收者的信箱里。Sendmail别名机制能够将收信人地址映射成新的地址,增强电子邮件系统的功能和便捷性。Sendmail根据文件/etc/nsswitch.conf指定的顺序访问/etc/mail/aliases、NIS+aliases和NIS aliases。
Sendmail服务器的配置文件主要有/etc/sendmail.cf、sendmail.mc、access.db、aliases.db、/etc/mail/local-host-names等。