12020年1月19日第7章常用网络服务的使用与配置22020年1月19日网络服务管理工具•/etc/services文件列出了Linux系统支持的所有服务的名称•介绍三种不同的管理工具•网络进程服务程序xinetd,32020年1月19日图形界面的管理工具•在XWindow下执行【主菜单/系统配置/服务器设置/服务】42020年1月19日文本界面的管理工具在终端中输入命令ntsysv52020年1月19日命令行界面的管理工具•命令chkconfig用于检查和设置系统的各种服务–添加指定的新服务:chkconfig--add服务名–删除指定服务:chkconfig--del服务名–显示所有或指定服务,以及他们在每个运行级别是否启动等:chkconfig--list或chkconfig--list[服务名]–检查指定服务的状态:chkconfig服务名–改变服务的运行级别及启动信息:chkconfig[--level运行级]服务名[状态]62020年1月19日•终端命令service用于设置网络服务的当前状态:service服务名[start|stop|restart]•管理员可以通过查看当前的进程树命令pstree来获知系统正在运行哪些服务:pstree72020年1月19日超级服务器xinetd•支持对TCP、UDP、RPC服务的管理•可以实施基于时间段的访问控制•功能完备的log功能,可以记录连接成功、连接失败的行为•能够有效地防止拒绝服务(DoS)的攻击•能够限制同时运行的同一类型的服务器的数目•能够限制log文件大小•能够将某个服务绑定在特定的系统接口上,从而实现只能允许私有网络访问某项服务。•能够实现作为其它系统的代理。82020年1月19日超级服务器xinetd•需要配置文件:–/etc/xinetd.conf:控制xinetd程序运行的配置文件。其中,提供了所有服务的缺省配置。–/etc/xinetd.d/*:该目录包括所有由xinetd程序启动的服务的配置文件,每个服务都有自己单独的配置文件,配置文件名与服务名一致。92020年1月19日系统默认的/etc/xinetd.conf文件内容如下:#Simpleconfigurationfileforxinetd##Somedefaults,andinclude/etc/xinetd.d/defaults{Instances=60log_type=SYSLOGauthprivlog_on_success=HOSTPIDlog_on_failure=HOSTcps=2530}102020年1月19日/etc/xinetd.d目录servicetelnet{disable=no#表示允许xinetd启动本项服务flags=REUSE#表示当中断或重启xinetd时,TCP/IPSocket可重用socket_type=stream#表示使用TCP的Socket类型wait=no#表示该服务提供多线程功能user=root#设置进程的UID,由root用户操作server=/usr/sbin/in.telnetd#设置服务程序文件log_on_failure+=USERID#表示当连接失败时,系统除记录/etc/xinetd.conf文件中设置的内容外,还需记录用户ID。}112020年1月19日Apache服务器•最早版本于1995年4月公布发行•根据2005年2月Netcraft(news.netcraft.com)所作的调查,Internet上超过68%的web站点都在使用Apache•Apache主要特性包括:–几乎可以运行在所有的计算机平台上。–支持最新的HTTP/1.1协议。–简单而且强有力的基于文件的配置(HTTPD.CONF)。–支持通用网关接口(CGI)。–支持虚拟主机。–支持HTTP认证。–集成PERL。–集成的代理服务器。–可以通过WEB浏览器监视服务器的状态,可以自定义日志。–支持服务器端包含命令(SSI)、支持安全SOCKET层(SSL)、具有用户会话过程的跟踪能力、支持FASTCGI、支持JAVASERVLETS。122020年1月19日•安装–获取最新版本的Apache源代码–将源代码解压缩–./configure–-prefix=/home/myapache–执行编译命令:make–执行安装命令:makeinstall•启动132020年1月19日配置•Apache服务器的主要配置文件是httpd.conf,默认安装时在目录/etc/httpd/conf/下•listen:指定Apache在哪一个TCP端口进行侦听,HTTP服务默认端口为80listen12.34.56.78:80•User与Group:设置Apache运行时的权限UserapacheGroupapache•ServerRoot:这是Apache配置文件和日志文件所在的目录,系统默认安装的目录是“/etc/httpd”。•ServerName:设置一个不同于Apache服务器主机名的“别名”•DocumentRoot:指Apache存放网页的根文档目录,默认的根文档目录是“/var/”142020年1月19日应用实例/建立个人主页•第一步:部署主页文件•第二步:修改Apache的配置•第三步:重新启动Apache服务器,使新的配置生效。•第四步:在客户机中浏览个人主页。152020年1月19日应用实例/使用SSL加密通讯•安装mod_ssl•安装SSL后必须重新启动Apache服务器•将服务器的数字证书文件/etc/httpd/conf/ssl.key/server.crt加载到客户机的浏览器中•在浏览器的地址栏中输入的URL需要以“https://”开头162020年1月19日vsFTPd服务器•FTP是一种文件传输协议,它实现了服务器与客户机之间的文件传输和资源的共享。•vsFTPd(verysecureFTPdaemon)是一个功能强大的FTP服务器,能运行在大部分UNIX类作系统上,支持很多其他的FTP服务器不支持的特征:–支持虚拟IP–支持虚拟用户–可以独立操作或者由xinetd管理–可以对每个用户进行配置–带宽限制–支持IPv6–支持通过SSL的加密–高速172020年1月19日安装•下载源代码文件,并将文件解压缩•编译源代码:make•为vsftpd的运行准备条件mkdir/var/ftp/useradd-d/var/ftpftpchownroot.root/var/ftpchmodog-w/var/ftp•将可执行文件安装到Linux的系统目录中182020年1月19日启动•vsFTPd也可以工作在两种模式:一种是自己启动运行的独立工作模式,另一种是借助xinetd管理的工作模式。•独立工作模式:在vsFTPd的配置文件/etc/vsftpd/vsftpd.conf中,设置选项“listen=YES”,使用服务管理工具操作vsftpd程序了。•借助xinetd管理的工作模式:将前面的选项设置为“listen=NO”,并配置/etc/xinetd.d/vsftpd文件192020年1月19日•vsFTPd的配置文件有三个:•/etc/vsftpd/vsftpd.conf:vsFTPd的主配置文件•/etc/vsftpd.ftpusers:vsFTPd的访问控制•/etc/vsftpd.user_list:202020年1月19日vsftpd.conf•anonymous_enable=YES//允许匿名登录•local_enable=YES//允许本地用户登录•write_enable=YES//开放本地用户的写权限•dirmessage_enable=YES//当切换目录时,显示该目录的信息。•connect_from_port_20=YES//使用FTP数据端口20的连接请求•userlist_enable=YES//与前面介绍的vsftpd.user_list配置文件有关,后面介绍•listen=YES//是否允许vsFTPd运行在独立启动模式;如果值为NO,则需要使用其它软件启动vsFTPd。•tcp_wrappers=YES212020年1月19日应用实例•匿名登录:anonymous_enable=YES•本地用户登录:1)允许登录为使用FTP的用户在本地建立账号在vsftpd.conf中设置配置项:local_enable=YES2)上传文件:在vsftpd.conf中设置配置项:write_enable=YES222020年1月19日3)访问控制•限制指定的本地用户不能访问,而其它本地用户可以访问。userlist_enable=YESuserlist_deny=YESuserlist_file=/etc/vsftpd.user_list•限制指定的本地用户可以访问,而其它本地用户不可以访问。userlist_enable=YESuserlist_deny=NOuserlist_file=/etc/vsftpd.user_list•无论何时都禁止指定的本地用户访问服务器在/etc/vsftpd.ftpusers配置文件中保存了一个用户列表,如果哪个用户名在这个列表中,它就不能通过网络进行FTP登录。232020年1月19日Samba服务器•SMB(ServerMessagesBlock,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议。•SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源•通过设置“NetBIOSoverTCP/IP”使得Samba不但能与局域网络主机分享资源,还能与全世界的电脑分享资源。242020年1月19日Samba的主要功能如下•提供WindowsNT风格的文件和打印机共享:Windows各个版本的主机可据此共享UNIX等其他操作系统的资源,使得外表看起来和共享NT的资源没有区别。•解析NetBIOS名字:在Windows网络中,为了能够利用网上资源,同时自己的资源也能被别人所利用,各个主机都定期地向网上广播自己的身份信息。而负责收集这些信息、为别的主机提供检索情报的服务器被称为浏览服务器,Samba可以有效地完成这项功能。在跨越网关时Samba还可以作WINS服务器使用。•提供SMB客户功能:利用Samba提供的smbclint程序,可以从UNIX下以类似于FTP的方式访问Windows的资源。•备份PC上的资源:利用名为smbtar的shell脚本,可以使用tar格式备份和恢复一台远程Windows上的共享文件。•提供一个命令行工具,在其上可以有限制地支持NT的某些管理功能。252020年1月19日•安装•启动:Samba服务的守护程序是smb•配置262020年1月19日•[global]•workgroup=MYGROUP#设置工作组名称•serverstring=SambaServer#设置服务器字符串,说明服务器用途。•printcapname=/etc/printcap#设置打印机配置文件•loadprinters=yes#设置是否自动在网络中共享打印机•printing=cups#设置打印机系统类型,包括:bsd,sysv,plp,lprng,cups等•logfile=/var/log/samba/%m.log#设置独立的日志系统保存连接记录•maxlogsize=0#设置日志文件大小,以KB计算。•security=user#设置安全级别,由低到高为:share、user、server、domain四级。•encryptpasswords=yes#设置是否加密口令•smbpasswdfile=/etc/samba/smbpasswd#设置保存加密口令的文件272020年1月19日•comment:共享资源的说明•path:指定共享路径•browseable:当共享资源为私人目录时是否允许其它用户浏览•write