linux
Download
Skip this Video
Download Presentation
了解 Linux 系统服务

Loading in 2 Seconds...

play fullscreen
1 / 36

了解 Linux 系统服务 - PowerPoint PPT Presentation


  • 149 Views
  • Uploaded on

了解 Linux 系统服务. [email protected] Daemon. 本文的结构. 守护进程以及工作原理 超级服务器 inetd 以及配置 D.O.S. 与进程崩溃 网络文件系统 Web 服务系统 FTP 服务系统 E - mail 服务系统 其他服务举例. 守护进程. Linux 系统上提供的网络服务都是由运行于后台的守护进程来执行。 一个系统一般在后台同时存在好几个守护进程。 由于此类进程对前台的用户来说是透明的,不加干预情况下不会自动停止,有如系统服务的守护天使一般,称为守护进程。. 守护进程工作原理.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about '了解 Linux 系统服务' - daphne


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide3
本文的结构
  • 守护进程以及工作原理
  • 超级服务器inetd以及配置
  • D.O.S.与进程崩溃
  • 网络文件系统
  • Web服务系统
  • FTP服务系统
  • E-mail服务系统
  • 其他服务举例
slide4
守护进程
  • Linux系统上提供的网络服务都是由运行于后台的守护进程来执行。
  • 一个系统一般在后台同时存在好几个守护进程。
  • 由于此类进程对前台的用户来说是透明的,不加干预情况下不会自动停止,有如系统服务的守护天使一般,称为守护进程。
slide5
守护进程工作原理
  • 客户/服务器网络模型的网络程序连接方式是通过TCP端口之间连接实现的。服务器侦听(Listen)某个端口等待客户连接。连接成功后客户机和服务器才开始通信。
  • 守护程序的工作就是打开一个端口,并在该端口上等待连接请求。如果接受到客户端的连接请求,它就创建一个子进程来接受该连接。而父进程继续侦听端口。
  • 常见网络应用端口:
    • ftp-data: 20/ tcp|udp ftp: 21/ tcp|udp
    • ssh: 22/ tcp|udp telnet: 23/ tcp|udp
inetd
网络守护进程程序inetd ——超级服务器
  • 几乎所有的类Unix系统都运行一个超级服务器,它为许多服务创建套接字(socket),并用select系统调用同时监听所有端口。当远程系统连接服务器时,超级服务器接受请求,并调用该端口的服务程序。
  • 常用超级服务器有inetd(Internet Daemon),该程序在系统启动时被激活,并读取配置文件:/etc/inetd.conf。
  • inetd除了调用系统其他服务外,还处理一些内部服务(Internal Services),包括chargen(产生字符串)和daytime(返回系统日期时间)等。
  • inetd提供的具体服务由/etc/services指出。
etc services
/etc/services

#--------------------------------------------------------------

# Network Services, Internet Style

#--------------------------------------------------------------

daytime 13/tcp

daytime 13/udp

qotd 17/tcp

chargen 19/tcp

chargen 19/udp

ftp-data 20/tcp

ftp-data 20/udp

ftp 21/tcp

ftp 21/udp

ssh 22/tcp

ssh 22/udp

nameserver 42/tcp

slide8
inetd接到服务请求后,将根据/etc/inetd.conf文件
  • 调用服务程序。该文件行形式如下:
  • services type protocol wait user server cmdline
  • services是服务名称,通过/etc/services文件限定。
  • type为套接字,对tcp服务为stream,对udp为dgram。
  • protocol为协议,通过/etc/protocol限定。
  • wait字段可以为wait或者nowait,wait只能用于dgram。
  • user 为登陆用户。
  • server 给出执行服务器程序的路径名。
  • cmdline 传给服务器程序的命令行。
slide9
#/etc/inetd.conf

echo stream tcp nowait root internal

echo dgram udp wait root internal

daytime stream tcp nowait root internal

daytime dgram udp wait root internal

#chargen stream tcp nowait root internal

#chargen dgram udp wait root internal

#

#Standard Services bellow

#

ftp stream tcp nowait root in.ftpd -l -a

#ftp stream tcp nowait root wu.ftpd -l -I –a

telnet stream tcp nowait root in. telnetd

TIP:如果想终止某项服务,在服务前加“#”。

inetd1
Inetd的缺点
  • 如对服务量大的HTTP和FTP服务用 inetd
  • 启动将影响其他服务的运行和对请求服务的响应。
  • 系统服务也可以独立启动,如在/etc/rc.d/rc.local文件中加入服务器命令。
slide11
Dos
  • Linux服务最经常遇到的问题:

Dos(Deny of Services)

  • 守护进程受到不正常连接而不能提供正常服务的现象称为拒绝服务,Dos。如一个socket程序以发非常快的速度不断连接系统的telnet端口,inetd将处于安全性考虑停止该服务十分钟。
  • 另外一类Dos跟服务客户端连接数量有关,如 HTTP服务访问量超过服务器所支持,httpd将拒绝服务。
  • 引起Dos的因素很多,以inetd服务为例,避免日常Dos的维护文件有/etc/hosts.allow跟 /etc/hosts.deny。
slide12
#/etc/hosts.deny

ALL: localhost

ALL: .edu.cn

ALL: 166.111.

ALL: 211.26.

ALL: 162.105.

ALL: 202.113.

ALL: 202.96.

In.telnetd: 127.

In.ftp: 202.115.

ALL: 202.116

#End OF host.deny

/etc/hosts.allow的文件格式跟hosts.deny一样,hosts.allow先

与hosts.deny检查。

两文件所指服务由inetd文件指定。

slide13
进程崩溃
  • 进程崩溃由程序异常或者系统环境引起,如内存过于紧张时守护进程无法运行导致整个系统崩溃。此种情况最好的解决办法是什么??
  • 对于单独的服务进程,可以将启动进程的命令方式写入/etc/inittab文件,当进程异常退出的时候,操作系统会自动重新启动进程。
slide14
网络文件系统
  • 网络文件系统是计算机间共享信息的一种发式,只是使用者感觉不到自己在操作远程不同系统上的文件。只要有两个,即NFS与samba。
  • NFS(Network File System),该系统由Sun Microsystem公司研发,它能使不同操作系统,不同体系结构的计算机之间共享系统文件。
  • NFS两个重要概念:放置被其他计算机安装的文件系统的计算机称为服务器,安装其他计算机文件系统的计算机即为客户端。服务器的文件系统被其他计算机安装,又称为文件系统输出。
slide15
NFS如何工作

XDP

RPC

RPC数据传送模式

  • NFS建立在XDR/RPC协议上
      • XDP: eXternal Data Representation(外部数据表示)
      • RPC: Remote Procedure Calls(远端进程呼叫)
  • XDR把计算机数据转化成独立与计算机的外部标准格式。客户端发送RPC包给服务器请求服务。
slide16
NFS的守护进程
  • inetd如前面所述。
  • portmap的主要功能是将TCP/IP的端口号转换成RPC的程序进程号。
  • nfsd依据用户端对文件系统的需求启动文件系统请求守护进程(file system request daemon)来应答客户端请求。
  • mountd程序启动后,它会读取/etc/xtab文件,查看客户端正在安装本服务器的那个文件夹,并为其提供安装路径。
  • 该进程可以用showmount命令查看。
slide17
安装网络文件系统
  • 手工安装命令:

mount [-t nfs] [-o specific-options] 文件系统 安装点

例:mount -t nfe –o timeo=40,rw senlocal:/home /home

  • 系统启动时自动安装:

在/etc/fstab文件中添加如下格式命令:

服务器文件系统 安装点 文件系统类型 选项

例如: senlocal:/home /home nfs timeo=40,rw

samba windows
samba与windows系统共享资源
  • 安装完samba后,在ined.conf文件内添加以下命令行:

netbios-ssn stream tcp nowait root /usr/sbin/smbd

netbios-ns dgram udp wait root /usr/sbin/nmbd

  • 在/etc/rc.d/ 目录下建立rc.samba文件:

#rc.samba: Start the samba server

if [ -x /usr/sbin/smbd –a –x /usr/sbin/nmbd ];then

echo “Starting samba……”

/usr/sbin/smbd –D

/usr/sbin/nmbd –D

fi

#End of file

  • samba 的配置文件是:/etc/smb.conf .
apache web
使用Apache建立Web站点
  • Apache原来意思为 A patchy Server,意思是对原先一个Wed服务器程序NCSA httpd做出的修补。现在Apache已经成为Internet上面使用最为广泛的Wed服务器程序。
  • Apache的开发由世界各地的志愿者组成,他们被称为Apache group,现在应发展为Apache Software Foundation.
apache
Apache 源代码的安装

tar –xzvf apache-1.3.11.tar.gz

#cd apache-1.3.11

#./configure //编译前准备,生成makefile

#make

#make install

  • Apache 的默认安装路径为/usr/local/apache,可以在编译前准备时修改默认安装路径:

./configure --prefix=/www

apache1
Apache 的基本配置
  • Apache的配置文件放在其安装目录的子目录conf/ 下,对于redhat一般在/etc/httpd/conf,而slackware则是/var/local/apache/conf .
  • Apache的配置文件一般有三个:http.conf、srm.conf、和access.conf。1.3.x以后的版本将配置信息都写入http.conf,保留srm.conf和access.conf,但是不写入信息。
  • #http.conf 文件范本

ServerType standalone

ServerRoot “/usr/local/apache”

Port 80

User nobody

Group nogroup

slide22
ServerAdmin [email protected]

ServerName senlocal.phys.nankai.edu.cn

DocumentRoot “/usr/local/apache/htdocs”

Options None

AllowOverride None //make the .htaccess have no permit

Order deny,allow

Deny from all

Options FollowSymlinks MultiViews

AllowOverride None

Order allow,deny

Allow from all

DirectoryIndex index.html index.htm //error ID. 403

#End of file----------

apache2
启动与停止Apache
  • 如果Apache随系统一起安装,启动时Apache将一起启动,脚本文件各个系统不同,redhat是/etc/rc.d/init.d/http.init,Slackware是/etc/rd.d/rc.httpd.
  • Apache的可执行文件名字为httpd,自行安装时一般放在安装目录下的bin或者sbin子目录,如/www/bin、/usr/local/Apache/bin等。要手工启动Apache,可与运行命令:
    • #/www/bin/httpd
  • 正常启动时可看到:
    • /www/bin/apachectl start: httpd started
  • 可以用Kill -9 强制停止Apache,先用ps –A|grep “http”查看所有http进程,找到为root用户所运行的httpd的进程ID,然后杀死进程。
slide24
FTP服务器
  • FTP:File Transfer Protocol(文件传输协议)
  • 客户端向服务器发出连接请求时,首先请求服务器的FTP控制端口21,并告知服务器自己的端口号,服务器使用自己的文件传输端口20跟用户提供的端口建立连接。
  • 授权访问与匿名访问
    • 服务器一般分不同权限赋予不同用户,每个用户可以拥有不同的权限与密码。
    • 匿名用户权限最小,一般只有read权限和/incoming目录的write权限。
ftp wu ftpd
FTP服务软件wu-ftpd
  • 简介:wu-ftpd是Wuarchive-ftpd的简称,目前Internet上最为流行的一个FTP服务程序,最初由美国Washington大学的Bryan D. O’Connor为Unix系统开发的,现在由其维护小组WU-FTP Development Group 继续开发维护。
  • 特征:
      • 遵守GPL协议,源代码公开;
      • 支持平台丰富,包括绝大部分Unix和类Unix平台;
      • 由世界各地开发者协同维护和更新;
      • 非商业,历史悠久。
  • 源代码获得:

ftp://ftp.wu-ftpd.org/pub/wu-ftpd/

  • 各个linux发布版本都有套件.
wu ftpd
wu-ftpd的配置

#/etc/ftpaccess 范本

class all real,guest,anonymous, * //classify the user

limit all 10 Any /etc/msgs/msg.dead

readme README* login

readme README* cwd= *

message /welcome.msg login

message .message cwd= *

compress yes all

tar yea all

log commands real

log transfers anonymous,real inbound,outbound

anonymous-root /home/ftp

shutdown /etc/shutmsg

email [email protected]

slide27
如果wu-ftpd守护进程由inetd进程来调用,则要在inetd.conf文件添加以下命令行:

ftpstream tcp nowait root /usr/sbin/tcpd wu.ftpd –l –a

//假设wu-ftpd安装在/usr/sbin目录下。参数“-l”表示每次客户端连接的信息都记录在syslog文件,参数“-a”表示wu-ftpd启动时读取/etc/ftpaccess配置文件,因为缺省情况下,wu-ftpd是不读取ftpaccess文件的。所以要特别加入。其他参数可用man ftpd读取。

  • 基本配置完后,可以测试自己的ftp:

#ftp senlocal

10.*.*.* FTP server(version wu-2.6.0(3) Sat May 8 10:05:04)ready

Name(localhost:sen):

311 password reqired for sen:

230 User sen logged in.

Romote system type is UNIX

Using binary mode to transfer files

wu ftpd1
wu-ftpd附带工具简介:
  • ftpshut: 停止ftp服务。
  • ftprestart: 重开ftp服务。
  • ckconfig: 程序查漏。
  • ftpcount: 显示登录人数。
  • ftpwho: 显示所有用户当前状态。
slide29
架设电子邮件服务器
  • 邮件在internet上的存储与转发是通过邮件传输代理(MTA:Mail Transfer Agent)来完成。比较有名的MTA有 sendmail与qmail等。
  • 架设前准备:
    • 域名:
    • 例如物理院邮件服务器域名:phys.nankai.edu.cn
    • 服务器邮件要求:
    • 邮件服务器的帐户越多,系统负载越重,邮件服务器
    • 一般要求大内存,大硬盘,大带宽,而对CPU没有特别要求。
sendmail
通用邮件服务器sendmail
  • sendmail是Unix世界最为重要的MTA,同时也是最强大,配置最复杂的MTA。

O’ Reilly and Associates 出版的权威著作《sendmail》有1000页左右

流行说法:只有完全编辑过sendmail.cf文件的人才是一个真正的Unix系统管理员

  • sendmail的主页是:http://www.sendmail.org 可以在该站下到最新的sendmail。

#tar –xzvf sendmail-8.9.3.tgz

#cd sendmail-8.9.3/src

#sh Build //sendmail 自带的编译工具,不必使用make

#sh Build install

默认情况下,sendmail安装在/usr/sbin/ 目录下,自动生成的sendmail.cf 在/etc/sendmail.cf

m4 sendmail cf
M4工具生成sendmail.cf
  • 先进入sendmail-8.9.3./cf/cf/ 目录建立m4的配置文件,假设取名为linux.mc,在该文件中加入如下配置信息:

#---- m4 config file ----------

OSTYPE(mklinux)

FEATURE(nouucp)

FEATURE(use_cw_file)

define(‘STATUS_FILE’, ‘/etc/sendmail.st’)

MAILER(local)

MAILER(smtp)

#---- End Of File --------------

#m4 ../m4/cf.m4 linux.mc > sendmail.cf

#cp /etc/sendmail.cf > /etc/sendmail.cf.bak && cp sendmail.cf /etc

slide32
M4配置文件参数说明
  • OSTYPE:指定系统类型。Sendmail为各种系统提供缺省的m4文件, linux系统的配置文件为linux.m4
  • FEATURE:指定sendmail各个特性,如
    • FEATURE(nouucp)指不支持uucp形式的邮件地址;
    • FEATURE(use_cw_file)表示在/etc/sendmail.cw文件中读取本机域名;
    • FEAYURE(local_promail)表示sendmail作为本机邮件传递程序。
  • MAILER:指定支持的邮件传递服务类型,如
    • MAILER(local)表示支持本机邮件投递;
    • MAILER(smtp)表示支持用SMTP协议投递邮件。
  • defile:定义一些宏变量,如
    • defile(‘STATUS_FILE’, ‘/etc/sendmail.st’)指定/etc/sendmail.st 作为sendmail的状态记录文件。该命令定义的宏变量可以用undefile撤销。
slide33
其他网络服务简介——防火墙

功能:

  • 所有交通网内外的数据包,都要通过它;
  • 只有符合防火墙上的系统本身不能受到影响。
  • 防火墙一般由两部分组成:网关器和过滤器。过滤器是工作于网络层的一段程序,负责分析过滤流经防火墙的数据包。
  • 网关器工作于传输层和应用层,决定数据包的传输方向。
  • 系统管理员在防火墙主机上第一包过滤策略,防火墙将依照该策略工作。过滤策略一般包括:源IP地址,目的IP地址,源TCP/IP端口,目的TCP/IP端口,防火墙也是依据各个数据包的以上信息工作的。
slide34
其他网络服务简介——透明网关
  • 工作原理与防火墙相似,配置透明网关的网关器需要一个合法IP,子网内用虚拟IP。所有流经透明网关的数据包将被改写信息头,内外交通数据包不被过滤掉。
  • 可以选择ipchains制作

linux的防火前或者网关。

slide35
其他网络服务简介——代理服务器——共享IP
  • 代理服务器:
    • 包过滤器有选择的传送某一特定服务器,防火墙可以用软件实现HTTP和FTP这样服务的的代理访问。
    • 一般用Squid。
  • 共享IP
    • 网关器的内部网络配置成内部虚拟IP(192.168.1.X),网关器绑定一个配置成合法IP,可以共享外部网络。
slide36

谢谢收看

2004.5

PHYS SCHOOL of NKU

[email protected]

ad