Download presentation
Presentation is loading. Please wait.
1
Linux操作系统 网络管理 Acegene IT Co. Ltd.
2
内容简介 1 C/S模型 2 路由管理 3 ppp 配置 4 VPN Acegene IT Co. Ltd.
3
1 C/S模型 C/S介绍 守护进程xinetd RPC Acegene IT Co. Ltd.
4
1 xinetd守护进程 xinetd(eXtended InterNET services daemon)提供类似于inetd+tcp_wrapper的功能,但是更加强大和安全。它能提供以下特色: * 支持对tcp、ucp、RPC服务(但是当前对RPC的支持不够稳定) * 基于时间段的访问控制 * 功能完备的log功能,即可以记录连接成功也可以记录连接失败的行为 * 能有效的防止DoS攻击(Denial of Services) * 能限制同时运行的同意类型的服务器数目 * 能限制启动的所有服务器数目 * 能限制log文件大小 * 将某个服务绑定在特定的系统接口上,从而能实现只允许私有网络访问某项服务 * 能实现作为其他系统的代理。如果和ip伪装结合可以实现对内部私有网络的访问 它最大的缺点是对RPC支持的不稳定性,但是可以启动protmap,与xinetd共存来解决这个问题 Acegene IT Co. Ltd.
5
1 编译安装 www.xinetd.org下载xinetd configure 选项:
--with-libwrap :根据tcpd配置文件(/etc/hosts.{allow, deny})来进行访问控制 --with-loadavg:在系统负载过重时关闭某些服务进程,来实现某些DoS攻击。 --with-inet6 : 使用该选项xinetd将支持IPv6 Acegene IT Co. Ltd.
6
1 配置文件 配置方式: /etc/xinetd.conf 和 /etc/xinetd.d 基本格式:
Service service_name { .. } 其中是属性表,每个属性可指定一个值,使用=,部分属性支持+=,-=实现在原有的基础上加、减某值。 属性表: Socket_type 使用的TCP/IP socket类型,值可能为stream(TCP), dgram(UDP), raw和seqpacket(可靠的有序数据报) protocol 指定该服务使用的协议,其值必须是在/etc/protocols中定义的。如果不指定,使用该项服务的缺省协议。 Server 要激活的进程,必须指定完整路径 Server_args 指定传送给该进程的参数,但是不包括服务程序名 Port 定义该项服务相关的端口号。如果该服务在/etc/services中列出,它们必须匹配 Wait 这个属性有两个可能的值。如果是yes,那么xinetd会启动请的进程并停止处理该项服务的请求直到该进程终止。这是个单线程服务。如果是no,那xinetd会为每个请求启动的一个进程,而不管先前启动的进程的状态。这是个多线程服务 User 设置服务进程的UID,但是若xinetd的有效UID不是0,该属性无效 Group 设置进程的GID。若xinetd的有效UID不是0,这个属性无效 Nice 指定进程的nice值 Id 该属性被用来唯一地指定一项服务。因为有些服务的区别仅仅在于使用不同的协议,因此需要使用该属性加以区别。默认情况下服务id和服务名相同。如echo同时支持dgram和streama服务。设置id=echo_dgram和id=echo_streams来分别唯一标识两个服务 Type 可以是下列一个或多个值:RPC(对RPC服务),INTERNAL(由由xinetd自身提供的服务,如echo),UNLISTED(没有列在标准系统文件如/etc/rpc或/etc/service中的服务) Access_time 设置服务可用时的时间间隔。格式是hh:mm_hh:mm; 如08:00-18:00意味着从8A.M到6P.M.可使用这项服务 Banner 无论该连接是否被允许,当建立连接时就将该文件显示给客户机 Flags 可以是以下一个或多个选项的任意组合: REUSE:设置TCP/IP socket可重用。也就是在该服务socket中设置SO_REUSEADDR标志。当中断并重新启动xinetd是特别有用 INTERCEPT:截获数据报进行访问检查,以确定它是来自于允许进行连接的位置。不能和INTERNAL服务和多线程服务不可使用该属性值 NORETRY:如果fork失败,不重试 IDONLY: 只有在远程端识别远程用户时才接受该连接(也就是远程系统必须运行ident服务器),该标记只适用于面向连接的服务。若没有使用USERID记录选项则该标记无效,必须设定log_on_success和/或log_on_failure属性设置USERID值以使该值生效。仅用于多线程的流服务 NAMEINARGS:允许server_args属性中的第一个参数是进程的完全合格路径,以允许使用TCP_Wrappers NODELAY:若服务为tcp服务,并且NODELAY标记被设置,则TCP_NODELAY标记将被设置。若服务不是tcp服务则该标记无效 Rpc_version 指定RPC版本号或服务号。版本号可以是一个单值或者一个范围中如2-3 rpc_number 如果RPC程序号不在/etc/rpc中,就指定它 Env 用空格分开的VAR=VALUE表,其中VAR是一个shell环境变量且VALUE是其设置值。这些值以及xinetd的环境都在激活时传送给服务程序。这个属性支持=和+=操作符 Passenv 用空格分开的xinetd环境中的环境变量表,该表在激活时传递给服务程序。设置no就不传送任何变量。该属性支持所有操作符 Only_from 用空格分开的允许访问服务的客户机表。如果不为该属性指定一个值,就拒绝访问这项服务。该属性支持所有操作符。 No_access 用空格分开的拒绝访问服务的客户机表。该属性支持所有操作符 Instances 接受一个大于或等于1的整数或UNLIMITED。设置可同时运行的最大进程数。UNLIMITED意味着xinetd对该数没有限制。 Log_type 指定服务log记录方式,可以为: SYSLOG facility[level]: 设置该工具为daemon,auth,user或loca10-7。设置level是可选的,可以的level值为emerg,alert,crit,err,warning,notice, info, debug,默认值为info file[soft[hard]]: 指定file用于记录log,而不是syslog。限度soft和hard用KB指定(可选)。一旦达到soft限,xinetd就登记一条消息。一旦达到hard限,xinetd停止登记使用该文件的所有服务。如果不指定hard限,它成为soft加1%,但缺省时不超过20MB.缺省soft限是5MB Redirect 该属性语法为redirect=Ipaddress port。它把TCP服务重定向到另一个系统。如果使用该属性,就忽略server属性 Bind 把一项服务绑定到一个特定端口。语法是bind=Ipaddress。这样有多个接口(物理的或逻辑的)的主机允许某个接口但不是其他接口上的特定服务(或端口) Log_on_success 指定成功时登记的信息。可能值是 PID: 进程的PID。如果一个新进程没被分叉,PID设置为0。 HOST: 客户机主机IP地址 USERID: 通过RFC1413高用捕获客户机用户的UID。只可用于多线程流服务。 EXIT:登记进程终止和状态 DURATION: 登记会话持续期,缺省时不登记任何信息。该属性支持所有操作符 Log_on_failure 指定失败时登记的信息。总是登记表明错误性质的消息。可能值是: ATTEMPT:记录一次失败的尝试。所有其他值隐含为这个值。 HOST:客户机主机IP地址 USERID:通过RFC1413调用捕获客户机用户的UID。只可用于多线程流服务。 RECORD:记录附加的客户机信息如本地用户,远程用户和终端的类型。缺省时不登记任何信息。该属性支持所有操作符。 Disabled 只可用于defaults项(参看本小节后面的defaults项),指定被关闭的服务列表,是用空格分开的不可用服务列表来表示的。它和在/etc/xinetd.conf文件中注释掉该服务项有相同的效果。 Log_on_success Log-on_failure Only_from No_access Passenv 可以用=操作符改写或用+ =或 - =操作符修改 Instances Log_type 可以用=操作符改写 disabled 可注释掉的服务,但disabled属性可用于某个服务项内 Acegene IT Co. Ltd.
7
1 servers 实现提供当前运行在服务器上的进程表 ,以及有关这些进程的确切信息 ,如:
Service servers { type = INTERNAL UNLISTED Socket_type = stream Protocol = tcp Port = 9997 Wait = no Only_from = Wait = no } Acegene IT Co. Ltd.
8
1 Services services特定项的目的是提供可用服务的列表
Service services { type = INTERNAL UNLISTED Socket_type = stream protocol = tcp port = 8099 wait = no Only_ from = topcat } Acegene IT Co. Ltd.
9
1 Xadmin 这个特定服务项提供以交互方式获得services特定服务所提供信息的方法
Service xadmin { type = INTERNAL UNLISTED socket_type = stream protocol = tcp port = 9967 wait = no Only_from = topcat } Acegene IT Co. Ltd.
10
2 Linux路由实现 路由器简介 用Linux主机作静态路由 用GateD实现动态路由 Acegene IT Co. Ltd.
11
2 路由器简介 路由器的基本概念 路由器的原理与作用 路由器的功能 Linux的路由种类 Acegene IT Co. Ltd.
12
路由器的基本概念 路由和路由器 路由器和交换机的区别 路由器的分类:硬路由器和软路由器 Acegene IT Co. Ltd.
13
路由器的原理与作用 路由选路的方式有两种:静态(Static)路由和动态(Dynamic)路由 。 Acegene IT Co. Ltd.
14
静态路由 静态路由是指从每一个源地址到目的地址的传输都具有固定的路径。一般是根据网络的配置情况,预先添加到路由表里的。如果网络设置发生了变化不会自动更新,需要手动进行更改。 Acegene IT Co. Ltd.
15
动态路由 常用的动态路由协议 : RIP协议 OSPF协议 BGP协议 Acegene IT Co. Ltd.
16
路由器的功能 数据转发 路由选择 协议转换 多种协议的路由选择 流量控制 分段和组装功能 网络管理功能
Acegene IT Co. Ltd.
17
Linux的路由种类 1.在局域网和外部网之间进行数据包转发 。 2.分割子网并实现各个逻辑子网间数据包的转发。
3.用普通PC机来作通常意义上的路由器,也就是架设软路由器。 Acegene IT Co. Ltd.
18
硬件准备——实例(网络拓扑图 ) Acegene IT Co. Ltd.
19
设置服务器IP地址 eth0设置外部网络的IP地址 ,其余四个网络接口分别设置如下内部IP地址:
# ifconfig eth netmask broadcast # ifconfig eth netmask broadcast # ifconfig eth netmask broadcast # ifconfig eth netmask broadcast # ifconfig eth netmask broadcast 或编辑/etc/sysconfig/network-scripts/目录下的启动脚本文件 。 Acegene IT Co. Ltd.
20
设置路由 # route add -net netmask dev eth0 #route add -net netmask dev eth1 #route add -net netmask dev eth2 #route add -net netmask dev eth3 # route add -net netmask dev eth4 最后指定默认网关 : # route add default gw Acegene IT Co. Ltd.
21
配置客户端和检测路由设置 1.在一个子网内的一台客户机上,检测能否连通本子网的网关。
2.在一个子网内的一台客户机上,检测能否连通另一个子网的网关。 3.在一个子网的一台客户机上,检测是否能够连通另一个子网内的一台客户机。 4. 最后在一个子网的一台客户上,检测是否能够连通外部网络。 Acegene IT Co. Ltd.
22
用GateD实现动态路由 GateD简介 配置GateD实现RIP Acegene IT Co. Ltd.
23
GateD简介 GateD是一个基于路由协议之间交换信息产生的路由数据库,来处理动态路由的软件。它采用了模块化的设计,包括核心服务程序、路由信息数据库、以及多种协议的支持模块。GateD支持的路由协议主要有:RIP、DCN HELLO、OSPF、EGP和BGP。GateD最初是被用来连接NSFNET(美国国家科学基金会NSF资助的关于主干网)网络之间的交界区域。 Acegene IT Co. Ltd.
24
rip简介 rip报文类型: RIP使用520端口发送和接收,每个数据报最大为512字节 请求报文:查询相邻RIP设备,获得它们的距离向量表
响应报文:公告它的本地距离向量表中的信息 在以下情况下发出: 每隔30秒发送一次 对另一个RIP结点产生的请求报文的响应 如果支持触发式,则在本地距离向量表发生变化时被发出。 RIP使用520端口发送和接收,每个数据报最大为512字节 Acegene IT Co. Ltd.
25
rip分类 rip-1: rip-2: rippng: RIP协议缺点: 支持CIDR和VLSM 支持组播 支持认证 支持rip-1
支持IPV6的认证 支持IPV6地址 使用521端口 RIP协议缺点: 路径代价限制和收敛时间长 Acegene IT Co. Ltd.
26
Rip配置 rip yes |no|off [ { }]; broadcast; nobroadcast; nocheckzero;
preference preference; defaultmetric metric; query authentication [none|[[simple|md5]paswd]]; interface interface_list [noripin]|[ripin] [noripout]|[ripout] [metricin metric] [version1]|[version2[multicast|broadcast]] [[secondary]authentication[none|[[simple|md5]password]]; trustedgateways gateway_list; sourcegateways gateway_list; traceoptions trace_options; }]; Acegene IT Co. Ltd.
27
Gated.conf配置 Broadcast:指定rip包被广播发送 Nobroadcast:在绑定的接口上不广播rip包
Nocheckzero:指定rip不处理RIP包中的保留域 Preference [n]:设置rip路由的preference,默认为100 Metric [n]:尺度(默认为16) Query authentication:设置身份认证方式 Interface interface_list:针对接口进行参数设定 Trustedgateways gateway_list:定义接收更新包的网关 Sourcegateways gateway_list:直接发送rip的路由器列表 Traceoptions trace_options:设置RIP跟踪选项 Acegene IT Co. Ltd.
28
INTERFACE_LIST选项 noripin:忽略指定接口接收到的RIP包 ripin:默认的设置参数
noripout:指定接口上不向外发送rip包 ripout:默认的设置参数 metricin metric:加入核心路由表前,增加的尺度 metricout metric:在指定的接口发出rip包前,增加的尺度 version 1:发送第一个版本的rip协议的数据包 version 2:指定发送第二个版本的rip 协议的数据包。 multicast:在指定接口上的发送第二版本的RIP包用组播方式 broadcast:指定在特定的接口上,使用广播方式来发送 Acegene IT Co. Ltd.
29
配置GateD实现RIP rip yes { broadcast ; defaultmetric 5 ;
interface eth1 version 2 multicast ; } ; static { default gateway preference 140 retain ; Acegene IT Co. Ltd.
30
3 ppp http://www.samba.org/ppp/
一、编译内核 要建立PPPOE服务器,除了内核要支持PPP以外还需要内核支持PPPOE,不过在2.4.18里需要打开内核的不成熟代码才可以选择,内核的配置如下: code maturity level options——>[*] prompt for development and/or incomplete code/drivers networking options——>[*] packet socket[*] packet socket:mmapped io network device support——>[*] ppp (point-to-point protocol) support[*] ppp multilink support (experimental)[*] ppp filtering[*] ppp support for async serial ports[*] ppp support for sync tty ports[*] ppp deflate compression[*] ppp bsd-compress compression[*] ppp over Ethernet (experimental) character devices——>[*] non-standard serial port support[*] hdlc line discipline support 编辑/etc/modules.conf,加入以下几行: • alias char-major-108 ppp_generic • alias /dev/ppp ppp_generic • alias tty-ldisc-3 ppp_async • alias tty-ldisc-13 n_hdlc • alias tty-ldisc-14 ppp_synctty • alias ppp-compress-21 bsd_comp • alias ppp-compress-24 ppp_deflate • alias ppp-compress-26 ppp_deflate Acegene IT Co. Ltd.
31
3 ppp 使用configure •使用make编译PPPD,这里有几个参数比较重要,要支持windows的客户端,应该在编译时加上选项USE_MS_DNS=1,如果你的系统shadow的话,你应该使用make HAS—SHADOW=1表示支持shadow密码 •编译完成后,将生成pppd、pppdump、chat和pppstats这几个文件,使用make install安装这些文件 启动PPPOE进程: pppoe-server –L –R –N 64 -u -L: 指定PPPOE服务器的IP地址 -R: 指定PPPOE拨入服务器分配给客户端的IP地址段 -N: 允许客户端同时拨入的数量(默认是64 最大是65534) 修改/etc/ppp/options,查看有没有以下几行,没有就加进去: local repaire-pap login auth defaultroute hide-password ipcp-accept-local ipcp-accept-remote : netmask ms-dns 修改/etc/ppp/pppoe-server-options,将所有的行都注释掉 添加用户到/etc/ppp/pap-secrets中,例如添加用户test,密码为123456,允许从任何位置拨入: #client server secret ip addresses test * “123456” * Acegene IT Co. Ltd.
32
4 vpn freeswan Acegene IT Co. Ltd.
33
Q & Q U E S T I O N S A N S W E R S A
Similar presentations