1、第一单元,服务,任课讲师:_,服务,网络服务,根据其使用的方法来分,可以被分为三类 由init控制的服务 由System V 启动脚本启动的服务 由xinetd 管理的服务,由init控制的服务,配置在/etc/inittab中 可以设置respawn参数在服务每次被关闭时自动重启 inittab文件被改变后,可以用init q来使改动生效,由System V启动的服务,由/etc/rc.d/init.d/目录下的System V脚本启动 /etc/rc.d/init.d/script start | stop | restart 也可以用service命令来执行脚本。 在不同运行级别下的默认
2、开关可以不同 用chkconfig来管理 在有些地方也被称为standalone的服务,由xinetd管理的服务,由xinetd管理 xinetd daemon 服务管理文件放在/etc/xinetd.d/目录下 编辑服务文件来开关服务 重启xinetd,chkconfig,System V: 决定在切换入某个运行级别下时,服务打开还是关闭 xinetd: 在xinetd服务正在运行的情况下,直接开启或关闭基于xinetd的服务,第二单元,DNS,任课讲师:_,DNS,DNS:Domain Name Service/域名服务 支持将计算机的域名解析成IP地址(正向搜索) 支持将IP地址解析成计
3、算机的域名(反向搜索) 允许计算机根据逻辑组合成一个一个名字域,区、域及授权,一个域(domain)包含一个完整的分级域名下层树 一个区(zone)则是域的一部分,被一个具体详细的服务器所管理 子域可以被授权成为附加的域 一个区可以直接管理子域,英特网上的分级DNS,根域名服务器 作为区认证域名服务器的最高级别域名服务器存在 为递归查询提供权威解释 区认证域名服务器 区的划分与认证 主域名服务器与从域名服务器,主域和从域,主域服务器 拥有一个域的主复制数据 从域服务器 为主服务器提供自动数据备份 每一个从服务器都会自动从主服务器处同步更新数据,客户端DNS,客户端产生对IP与主机名解析的需求,
4、通常DNS客户端上有许多程序运行时需要解析 客户端检索本地数据文件的相关记录 客户端将无法自行解释的需求,通过53端口送给指定的DNS服务器 收回的数据也许并不权威,服务端DNS,服务端接受请求 如果自己无法给出回答,则可能将请求转发给上级服务器,或直接询问根域名服务器 其上级服务器有可能给出回答,或进一步转交给其他域名服务器 一个服务器上可以记录多个域的数据,BIND,BIND:Berkeley Internet Name Daemon BIND是在Internet上应用最为广泛的DNS服务器 提供稳定与可信赖的下层结构以提供域名与IP地址的转换,BIND服务一览,后台进程:named 脚本
5、:/etc/rc.d/init.d/named 使用端口:53(tcp,udp) 所需RPM包:bind,bind-utils 相关RPM包:bindconf,caching-nameserver 配置文件:/etc/named.conf 相关路径:/var/named/*,/etc/sysconfig/named,named进程被System V脚本激活后,会根据此文件的参数决定其运行参数: 例如: OPTION=“-d 5” (将debug等级设为5),/etc/named.conf,named.conf是BIND使用的默认配置文件 在每一次named启动与挂起时都会被读取 一个简单的文本
6、文件,其中记录的可以包括options(全局参数)、zone(区域定义)、access control lists(访问控制列表)等,option,在/etc/named.conf的options段中被宣告 常用的参数包括 directory:指定zone file的存放位置 forwarders:指定其上级域名服务器 allow-query:指定允许向其提交请求的客户 allow-transfer:指定允许复制zone数据的主机,主域,由一个zone段在/etc/named.conf中宣告 type master; file:存放该zone数据的文件名 必须存在于options段中提及的目录
7、之下 文件名可以随意 allow-update:允许动态更新该zone数据的客户机,从域,由一个zone段在/etc/named.conf中宣告 type slave; master:指定其主域名服务器 对应的主域名服务器必须承认并存放有该区域的数据 file:本地用于存放zone数据的文件 从域名服务器总是试图与其master联系并获取一份当前数据的副本,反解析域,域的名字必须用.in-addr.arpa来结尾 由一个zone段在/etc/named.conf中宣告 反解析域一般对应到一个具体的IP段 反解析域同样可以配置为从域 许多服务会尝试进行反解析,根域,根域“.” zone “.“
8、IN type hint;file “named.ca“; ;,zone文件,文件通常存放在/var/named目录下 用于存放指定域内的各种资源与数据 第一段资源记录被成为起始授权记录(SOA) 每一个在/etc/named.conf中定义的zone都应该对应一个具体的zone文件,资源记录,SOA:定义起始授权 NS:指定域名服务器 MX:指定邮件服务器 A:将一个域名解析成其后的IP CNAME:将一个域名设置为另一个域名的别名 PTR:将一个IP地址指向一个域名,SOA记录,SOA(Start of Authority):起始授权 每一个域文件中都应该有一个SOA 段 IN SOA l
9、ocalhost. root.localhost. (1997022700 ; Serial28800 ; Refresh14400 ; Retry3600000 ; Expire86400 ) ; Minimum,NS记录,NS(name server):域名服务器 每一个主域名服务器和从域名服务器都应该拥有一条NS记录,以防止主服务器在出现故障后,从服务器不能及时提供服务 IN NS . IN NS .,资源记录,A记录 用于将主机名对应成IP地址 CNAME记录 用于定义某一个地址的别名 PTR记录 用于将IP地址对应成一个主机名,MX与HINFO记录,MX:用于定义某一个域里负责的邮
10、件服务器每一条MX记录前都需要指定优先级别 IN MX 5 mail HINFO记录提供解析时对一台主机做补充注释 server1 IN HINFO master server,Round Robin,利用复数A记录来均衡数台服务器的访问负载www 0 IN A 192.168.0.3 www 0 IN A 192.168.0.4 www 0 IN A 192.168.0.5,r n d c,域名服务器控制程序 安全防范,远程控制运行的域名服务器 使用TSIG 安全 例如:root stationxx root# rndc reload rndc 默认只监听本地loopback端口,BIND
11、语法检查工具,在BIND出错时使用如下工具:named-checkconf默认检查的配置文件是 /etc/fnamed-checkzone检查一个Zone文件的配置,redhat-config-bind,图形界面下的BIND配置工具 简单清晰地完成BIND配置 可对应多个版本的BIND 配置文件存放在/etc/alchemist/namespace/dns/local.adl,第三单元,Samba,任课讲师:_,SAMBA 原理概述,SAMBA:Send Message Block 整合了SMB协议及Netbios协议,使其运做在TCP/IP上。 能够让Unix based的机器与window
12、s互动。 SAMBA服务有两个进程: smbd:SMB服务器 nmbd:netbios名字服务器,SAMBA 服务一览,后台进程:smbd,nmbd 脚本:/etc/rc.d/init.d/smb 使用端口:137,138,139 所需RPM包:samba,samba-common,samba-client 相关RPM包:samba-swat 配置文件:/etc/samba/smb.conf,SAMBA 的配置,samba的配置文件:/etc/samba/smb.conf 由数个将配置文件分成数段,例如: global:一些全局配置 homes:让用户可以访问其主目录 printers:定义共
13、享的打印机资源 图形界面下的配置工具 SWAT(Samba Web Admin Tool) redhat-config-samba,全局设置,全局设置写在global段内,主要是指samba服务器的一些全局设定 workgroup server string hosts allow security encrypt passwords smb passwd file,共享段,共享段用于在samba服务器上开放共享目录 一般每一个 表示一个指定的共享目录, 内写的是目录的共享名,测试samba服务,用户可以利用testparm指令来检查smb.conf文件的语法。 只能检查关键字段的拼写错误。对
14、于配置值错误需要结合日志文件来判断。 用户可以用service smb status判断samba服务的开启状况 用户可以用nmblookup来检查本机上的samba服务是否正确开启,管理smb用户,samba服务支持用户级别的共享限制 使用smbadduser添加可以使用smb服务的用户。 语法:smbadduser linux帐号:windows帐号 使用smbpasswd改变用户的密码。 用户密码存放在/etc/samba/smbpasswd文件中 用户映射存放在/etc/samba/smbuser文件中,smbclient,可以用来向服务器请求samba服务资源列表 smbclient
15、 L 主机名 可以用来象一个ftp客户端一样访问samba共享资源 smbclient -U student%XXX /server1/tmp,smbmount,smbmount可以将远端的一个window共享目录,或Unix系统通过samba服务共享出来的目录,挂载到自己的Linux文件系统上。 语法:smbmount /server1/tmp /mnt/tmp o username=student,password=XXX 用于替代mount t smb,第四单元,电子邮件服务,任课讲师:_,邮件发送模型,邮件用户代理(MUA)将信息传送给邮件传输代理(MTA) 邮件传输代理决定信息送至目
16、的地的路由,然后根据情况决定是否还需要将信息交给中介邮件传输代理 域邮件传输代理将邮件送至邮件投递代理(MDA) 用户收到邮件,SMTP协议,SMTP:Simple Mail Transfer Protocol/简单邮件传送协议 定义邮件传送 基于TCP服务的应用层 RFC0821 明文传送,SMTP协议的使用,SMTP协议使用25端口 SMTP协议命令 HELO:通报来访者地址 MAIL FROM:发件人地址 RCPT TO:收件人地址 DATA:输入正文内容,用单独的.为行结束 QUIT:连线结束,安全与反垃圾邮件策略,安全策略 拒绝从无法解析的域送来的邮件 建立各种基于主机、用户、域的访
17、问控制 默认配置仅允许本地收发 不再使用setuid的工具 反垃圾邮件策略 默认情况下不做转发 建立访问数据库 检查邮件信头,sendmail,sendmail是使用十分广泛的邮件提交工具(MSP) 在邮件模型中承担着MTA及MDA的作用 支持多种类型的邮件地址寻址 支持虚拟域及虚拟用户 允许用户及主机伪装 提供在投递失败后自动重发等多种错误应对策略,sendmail服务一览,后台进程:sendmail 脚本:/etc/init.d/sendmail 使用端口:25(smtp) 所需RPM包:sendmail,sendmail-cf,sendmail-doc 配置文件:/etc/sendmai
18、l.cf,/etc/aliases,/etc/mail/,/usr/share/sendmail-cf/ 相关服务:procmail,sendmail的主要配置文件,/etc/sendmail.cf是默认的sendmail主要配置文件 包含域别名段,信头格式段,转发规则等数据 很少被直接修改 /etc/mail/submit.cf被用于每次sendmail被一个用户工具所调用的时候 通常不需要修改,用m4生成sendmail.cf,m4是UNIX下使用的传统宏处理器 sendmail.cf可以由一个宏文件经m4处理后得到 Red Hat默认使用/etc/mail/sendmail.mc为/et
19、c/sendmail.cf的宏文件 m4 /etc/mail/sendmail.mc /etc/sendmail.cf 我们推荐使用m4处理sendmail.mc来得到sendmail.cf,编辑sendmail.mc,每一个sendmail.mc宏应该定义了操作系统类型、文件位置、请求特征及邮件发送工具、用户列表 在每一行的开头添加dnl表示注释 默认情况下,sendmail服务器只侦听本地的连接 注释 DAEMON_OPTION(PORT=smtp,Addr=127.0.0.1,Name=MTA),其他有用的配置,FEATURE(accept_unresolvable_domains) 接
20、受无法反向解析的域来的邮件 FEATURE(dnsbl) 支持根据dns黑洞列表来拒绝垃圾邮件 FEATURE(relay_based_on_MX) 自动接受DNS中MX记录来源的邮件转发 FEATURE(blacklist_recipients) 允许使用黑名单查禁收件人,/etc/mail/access,用于定义接受或拒绝的邮件来源: 格式: IP/域名 设定值 设定值: REJECT:拒绝 OK:无条件接受 RELAY:允许转发 DISCARD:丢弃,/etc/mail/virtusertable,允许在邮件服务中使用虚拟域及虚拟用户并自动映射: joe wenhua.org root
21、wenhua.org eddywenhua.org,/etc/aliases,定义本地用户的别名 别名后的映射对象可以是: 一个本地用户 多个本地用户(用逗号分隔) 本地文件(需要指出路径) 指令(需要管道) 另一个email地址 设定完/etc/aliases后,需要运行newaliases更新aliases.db,邮件收取,MDA将收到的信件根据用户存放在/var/spool/mail下 /var/spool/mail目录下每一个文件对应与文件名同名的用户 用户使用mail等工具阅读完信后,未被删除的邮件会自动转存到用户主目录下的mbox文件中,POP3协议,POP3:Post Offi
22、ce Protocol 3/邮局协议第三版 POP3协议适用于不能时时在线的邮件用户。支持客户在服务器上租用信箱,然后利用POP3协议向服务器请求下载 基于TCP/IP协议与客户端/服务端模型 POP3的认证与邮件传送都采用明文,使用pop3协议,POP3协议使用110端口 POP3协议命令 USER:通报用户名 PASS:输入密码 LIST:列出所有邮件大小 RETR:阅读邮件 DELE:删除邮件 QUIT:连线结束,配置pop3服务器,pop3服务一般是基于xinetd的服务可以通过两种方式开启和关闭服务 编辑/etc/xinetd.d/ipop3并重启xinetd 使用chkconfig
23、来开启或关闭服务,IMAP,IMAP:Internet Message Access Protocol/英特网信息存取协议 另一种从邮件服务器上获取邮件的协议 与POP3相比,支持在下载邮件前先行下载邮件头以预览邮件的主题来源 基于TCP/IP 使用143端口,邮件接收工具,mozilla-mail mozilla下的邮件接收工具 采用netscape mail的风格 evolution GNOME下的默认邮件接收工具 采用windows下的outlook风格 kmail kde下的邮件接收工具 fetchmail 字符界面下的邮件接收工具,配置fetchmail,fetchmail支持多种邮
24、件接收协议 fetchmail的配置文件是用户主目录下的.fetchmailrc文件 “.fetchmailrc”中每一行代表一个邮件信箱 范例:poll protocol pop3 username “kevinzou“ password “nopass“,procmail,procmail是一个非常强大的邮件转发工具 可以用来: 对收到来信进行排序,并送入不同目录 预处理邮件 在收到一封邮件后激活一个事件或程序 自动转发邮件给其他用户 默认情况下sendmail会将procmail设定为本机转发邮件工具 有可能在短时间内产生大量转发邮件,因此配置时应小心谨慎,简单配置procmail,p
25、rocmail的配置文件是用户主目录下的 ”.procmailrc” 如需将来自kevinz关于linux的邮件转发给todd,并复制入linux目录: :0 *From.*kevinz *Subject:.*linux :0 c ! toddwenhua.org :0 linux ,邮件读写工具,图形界面下的邮件接受工具一般也可以用来读写邮件 字符界面下的邮件读写工具 mail 非常简单地邮件读写工具 pine 支持添加附件 支持将已读文件存入指定目录,第五单元,WEB服务器,任课讲师:_,http 服务原理,超文本传送协议 基于客户端服务端模型 协议流程: 连接:客户端与服务端建立连接 请
26、求:客户端向服务端发送请求 应答:服务端响应,将结果传给客户端 关闭:执行结束后关闭,web服务器 apache,应用广泛的web服务器 支持进程控制 在需要前自动复制进程 进程数量自动使用需求 支持动态加载模块 不需重编译就可扩展其用途 支持虚拟主机 允许使用一台web服务器提供多个web站点的共享,apache服务一览,后台进程:httpd 脚本:/etc/rc.d/init.d/httpd 使用端口:80(http),443(https) 所需RPM包:apache,apache-devel,apache-manual 相关RPM包:apacheconf 配置路径:/etc/httpd/
27、*,/var/www/*,apache的配置文件,配置文件储存为/etc/httpd/conf/httpd.conf 设置标准网络服务器参数、虚拟主机、模块 定义文件名与mime类型 访问控制 默认的html存放位置 /var/www/html,全局配置,ServerType:选择系统激活服务器的方式。可以是inetd或standalone ServerRoot:设定Apache安装的绝对路径 TimeOut:设定服务器接收至完成的最长等待时间 KeepAlive:设定服务器是否开启连续请求功能 MaxKeepAliveRequests:设定服务器所能接受的最大连续请求量,全局配置(二),Ke
28、epAliveTimeout:使用者 连续 请求的等待时间上限 MinSpareServers:设定最小闲置子进程数 MaxSpareServers:设定最大闲置子进程数 StartServers:设定激活时所需建立的子进程数 MaxClients:设定同时能够提供使用者的最大服务请求数,主机配置,Port:设定http服务的默认端口。 User/Group:设定服务器程序的执行者与属组 ServerAdmin:设定站点管理者的电子邮件 ServerName:设定服务器的名称 DocumentRoot:设定服务器的共享路径 DirectoryIndex:设定默认调用文件顺序 ErrorLog:
29、设定错误记录文件名称,虚拟主机,在同一台服务器上配置多个共享服务 在虚拟主机中未指定的配置即采用主机配置ServerName DocumentRoot /var/www/virtual ,访问控制,Apache提供目录级别与文件级别的基于主机的多种访问控制 Apache提供目录级别基于用户密码的访问控制,.htaccess,Apache支持在需要限制访问的目录下,建立 .htaccess文件来实行访问限制。 用户可以根据httpd.conf中记录的AllowOverride内容,在 .htaccess文件添加访问控制语句以取代在httpd.conf中的记录。 改变 .htaccess文件设置不
30、需要重启httpd,CGI,CGI程序只能放在有设定ScriptAlias的目录下才可以使用。 ScriptAlias /cgi-bin/ /cgi-bin/ Apache 可以通过加载模块来倍化CGI程序的速度,Apache加密网站,Apache用443端口提供https服务 需要加载mod_ssl模块 相关配置文件在/etc/httpd/conf.d/ssl.conf 加密配置 认证:conf/ssl.crt/server.crt 私钥:conf/ssl.key/server.key 认证/钥匙生成 /usr/share/ssl/certs/Makefile 个人签名认证:make tes
31、tcert 认证签名需要:make certreq,Squid Web Proxy Cache,Squid支持为FTP、HTTP等其他数据流做代理 Squid会将SSL请求直接转给目标服务器或另一个代理 Squid提供诸如访问控制列表、缓存管理及HTTP服务器加速,第六单元,NFS、FTP和DHCP,任课讲师:_,NFS,NFS:Network File System/网络文件系统 Linux与Linux之间的文件共享 提供远端读存文件的服务,NFS 原理概述,建立在RPC协议上的服务,使用时需要打开portmap 基于客户端服务器端模型 服务端为多个客户端提供服务 客户端也可以从多个服务端处
32、获得文件目录,NFS 服务一览,后台进程:nfsd,lockd,rpciod,rpc.mounted,rpc.rquotad,rpc.statd 脚本:/etc/init.d/nfs,/etc/init.d/nfslock 使用端口:由portmap (111)分配 所需RPM包:nfs-utils 相关RPM包:portmap(必需) 配置文件:/etc/exports,NFS 客户端策略,检查服务端的nfs共享资源 showmount -e server 将服务端开放的nfs共享目录挂载到本机上的一个目录 mount -t nfs server:/share /mnt/nfs,NFS 服务
33、端配置,编辑/etc/exports文件以配置开放路径 路径 对象(方式) 确保portmap服务已开启 打开或重启nfs服务 service nfs start/restart,FTP,vsftpd是RedHat Linux默认使用的ftp服务端软件 vsftpd 不再依赖于xinetd服务 允许匿名或本地用户访问 匿名访问不须额外的RPM包 /etc/vsftpd/vsftpd.conf是默认的配置文件,ftp服务一览,后台进程:vsftpd 类型:System V 服务 使用端口:20(ftp-data),21(ftp) 所需RPM包:vsftpd 配置文件:/etc/vsftpd/vs
34、ftpd.conf/etc/vsftpd.ftpusers/etc/pam.d/vsftpd 日志:/var/log/vsftpd.log,FTP用户控制,/etc/vsftpd.ftpusers/etc/vsftpd.user_list,FTP测试工具,ftpwho:查看当前使用ftp的用户 ftpcount:查看当前连线数目,DHCP,DHCP:动态主机配置协议 使用服务端的dhcpd来提供服务 dhcpd可以同时为DHCP及BOOTP客户端提供服务,dhcp服务一览,后台进程:dhcpd 脚本:/etc/rc.d/init.d/dhcpd 使用端口:67(bootps),68(bootp
35、c) 所需RPM包:dhcpd 相关RPM包: 配置文件:/etc/ftpaccess,/etc/ftphosts,/etc/ftpusers 日志:/var/log/xferlog,配置dhcp服务,/etc/dhcpd.conf 范例: subnet 192.168.0.0 netmask 255.255.255.0 range 192.168.0.2 192.168.0.253;default-lease-time 21600;max-lease-time 43200;option domain-name “”;option routers 192.168.0.254;option do
36、main-name-servers 192.168.0.254; ,常用dhcp配置参数,subnet X.X.X.X netmask X.X.X.X 指定dhcp服务工作网段 range 指定分配地址段 default-lease-time 默认租期(请求续租时间) max-lease-time 最大租期,常用dhcp配置参数(二),option routers 分配路由器 option domain-name 分配域名 option domain-name-servers 分配DNS server,IP绑定,host 为绑定主机起名(并不是分配给对方的名字) hardware ethern
37、et 指定硬件地址 fixed-address 指定IP地址或主机名 支持为绑定主机单独分配其他网络数据,第七单元,安全及策略,任课讲师:_,安全术语,什么是安全? 加密 数据完整 可用 系统安全由系统中最小的安全组件决定(木桶原理),基础网络安全,大多数的计算机都连接到网络上局域网、广域网或者Internet由于连接在网络上,增加了对操作系统和后台服务的危胁,常用术语的定义,黑客 破解者(骇客) 拒绝服务 缓冲溢出 病毒 特洛伊木马 蠕虫,安全策略,物理上的安全性 用户限制 服务限制 网络限制 加密,安全策略 (续),安全策略是为了加强对系统安全特性和管理而定义的规则 审核 让我们检查使用的
38、安全工具 实际中使用的安全策略,审核,分析 目前的情况 了解 安全需求 确定 如何实现它们 实施 安全机制 测试 安装,入侵检测,工具 嗅探器(sniffers) 渗透检测器 记录 日志 日志工具,发现入侵后的措施,反应,保护,镜像,恢复,搜索,报告 第一步:反应 第二步:保护,发现入侵后的措施 续1,反应,保护,镜像,恢复,搜索,报告 第三步:镜像 第四步:恢复,发现入侵后的措施 续2,反应,保护,镜像,恢复,搜索,报告 第五步:搜索 第六步:报告,备份策略,一个好的备份策略可以使你从灾难中恢复出来 通常备份策略由以下组成: 一次定期的完全备份 每日增量备份 备份媒体远距离存储,第八单元,N
39、IS,任课讲师:_,什么是NIS服务,NIS:Network Information Service 基于客户端服务端模型 公用资料集中存放在服务端管理 提供复数的客户端访问使用 基于RPC协议,NIS服务一览,服务类型:SystemV 后台进程:ypserv,ypbind,yppasswdd 使用端口:由portmap (111)分配 所需RPM包:ypserv,ypbind,yp-tools 相关RPM包:portmap 服务端配置文件:/etc/ypserv.conf/var/yp/*,NIS服务端与客户端,NIS客户端的后台进程是ypbind,服务端的后台进程是ypserv 服务端支持
40、NIS协议第一版与第二版 客户端还多支持NIS+(v3) NIS的局限性 安全性差 可扩展性不足 unix-only,NIS客户端基础,NIS客户端工具ypbind可以通过两种方式获知其域内的服务器是谁 在NIS域内广播 通过/etc/yp.conf读取本域内NIS服务器的位置 使用工具配置客户端 使用authconfig将本机添加入一个NIS域 指定一个NIS服务器,/etc/nsswitch.conf,nsswitch.conf记录了系统查询用户密码、组、主机名等资源的遵循顺序 确定nsswitch.conf文件中需要向服务器查询数据的资源顺序中包含NIS项 查询资源可以是: files:
41、本地文件 dns:域名服务器 nis/nisplus:NIS服务器 ldap:ldap服务器 db:数据库,NIS服务器布局,扁平结构 一个主服务器负责一个域 一个主服务器可以带领多个从服务器 提供容错 负载均衡,配置NIS服务端,在/etc/sysconfig/network中设定一个NIS domain:NISDOMAIN=mydomain 修改/var/yp/Makefile决定需共享的数据 在/var/yp/securenets中指定许可共享的网段 执行/usr/lib/yp/ypinit -m 执行service ypbind start 执行service ypserv start
42、,配置NIS从服务器,将所有从服务器名放在/var/yp/ypservers文件中 在每一个从服务器上安装ypserv 使用以下指令: /usr/lib/yp/ypinit s 主服务器名,NIS工具,ypcat:列出来自NIS server的map信息 ypinit:建立并安装NIS database ypwhich:列出NIS server的名称 ypset:强制指定某台机器当NIS server makedbm:创造NIS map的dbm档,第九单元,系统安全,任课讲师:_,监视文件系统,监视文件系统可以防止: 硬盘空间被占满 可能造成安全问题的错误权限 监视文件系统包括: 数据正确性检
43、验 搜寻不需要或可能造成系统破坏的文件,常规搜寻,搜寻所有设置了强制位的文件 find / -type f perm +6000 搜寻可以被任何用户写入的文件 find / -type f perm 2 搜寻不属于任何用户与组的文件 find / -nouser o -nogroup,Tripwire,系统文件应该时时处于周密的监视下 配置文件被更改可能造成服务的启动与运行故障 可执行文件被更改可能造成更大的问题 tripwire可以根据配置监测文件/目录的大小、更改时间、inode状态、所属用户/组及一系列属性,配置与使用tripwire,安装tripwire RPM包 编辑twcfg.tx
44、t与twpol.txt,根据安装情况来定义配置与监视策略 运行/etc/tripwire/twinstall.sh 用tripwire init在/var/lib/tripwire/下建立原始数据库$HOSTNAME.twd 用tripwire -check来根据数据库检查系统 用twprint m r twrfile 文件名来阅读监视报告,为Boot Loader加密,LILO 密码明文存放在/etc/lilo.conf中 可以应用于全局及局部 用于防止用户进入操作系统 GRUB 密码经过md5加密 可以应用于全局及局部 用于防止用户更改启动参数,插装型认证模块(PAM),/lib/secu
45、rity 动态可加载库 集中安全管理 配置在模块被调用时即生效 /etc/pam.d 为PAM 客户配置文件 选择需要的库 满足所有条件通过认证或失败,PAM 配置,/etc/pam.d/system-auth 控制标志 决定PAM如何使用模块调用后的返回值 required,sufficient,或optional /etc/security/下包含了部分配置文件,核心PAM模块,pam_env:环境变量初始化 pam_unix 标准unix认证 允许更改密码 pam_cracklib:强制使用好密码,常用的pam模块,pam_nologin 如果/etc/nologin存在,则除了root
46、用户,任何用户不能登录 pam_securetty 在/etc/securetty文件中存放的,是root用户可以登录的终端 不限制用户登录完成后用su切换成root,常用的pam模块(二),pam_access 用一个简单的配置文件完成基于用户、组、及来源的访问限制 使用/etc/security/access.conf为其配置文件 pam_listfile 允许用户针对某一服务单独建立文件来建立基于用户、组、本地终端、远端主机的限制,常用的pam模块(三),pam_limits 允许在许可用户使用服务后,对用户的使用资源,进行各种设置 pam_time 使用一个简单的配置文件,来建立基于时
47、间的服务访问限制 使用/etc/security/time.conf为配置文件,sudo,让一般用户有可能使用root才可以使用的系统管理指令 需要配置/etc/sudoers文件,来定义哪些用户可以使用哪些指令,以及使用时是否需要密码 用visudo编辑/etc/sudoers文件 用sudo 系统指令执行系统指令,第十单元,防火墙和IP伪装,任课讲师:_,iptables,iptables是Red Hat Linux里默认使用的防火墙 iptables提供多个设定参数可以用来定义过滤规则,包括IP/MAC地址、协议、端口、子网掩码 iptables支持在路由算法发生前后进行网络地址转换,i
48、ptables结构,iptables将防火墙的功能分成多个tables filter:数据包过滤 NAT:Network Address Translation/网络地址转换 tables又包含多个chains 5条默认基础操作chains 允许用户自行定义chains,iptables语法,iptables -t table pattern -j target action包括: -A chain:在chain中增添一条规则 -D chain:在chain中删除一条规则 -L chain:列出chain中的规则 -F chain:清空chain中的规则 -P chain:为chain指定新的
49、默认策略,可以是: ACCEPT:未经禁止全部许可 DROP:未经许口全部禁止,iptables语法(二),pattern包括: -s :来源地址 -d :目标地址 -p :指定协议,可以是tcp/udp/icmp -dport :目标端口,需指定-p -sport :来源端口,需指定-p target包括: DROP:禁止 ACCEPT:许可,filter table,用于过滤数据包的接送 chain INPUT: 设定远端访问主机时的规则 来源是远端访问者,目标是本地主机 chain OUTPUT: 设定主机访问远端主机的规则 来源是本地主机,目标是远端被访问主机 chain FORWARD: 设定主机为其他主机转发数据包时的规则 来源是请求转发的主机,目标是远端被访问的主机,