第7章 Linux网络管理 计算机学院 潘 薇 panwei117@qq.com.

Similar presentations


Presentation on theme: "第7章 Linux网络管理 计算机学院 潘 薇 panwei117@qq.com."— Presentation transcript:

1 第7章 Linux网络管理 计算机学院 潘 薇

2 Linux操作系统作为网络操作系统,最主要的功能就是提供各种网络服务
TCP/IP协议是Linux缺省支持的协议。 Linux网络管理主要包括配置TCP/IP、提供的TCP/IP应用服务和TCP/IP接口管理。

3 本章要点 7.1 配置TCP/IP网络 7.2 配置TCP/IP应用服务 7.3 TCP/IP接口管理

4 7.1 配置TCP/IP网络

5 7.1 配置 TCP/IP 网络 ifconfig命令用于指定以太网端口参数,即与网卡有关的IP地址、子网掩码和网关信息等参数。
该配置方法需要系统管理员权限,配置后即刻生效,但是,在关机重新启动后配置的信息失效。 该命令的格式为: ifconfig 以太网端口号 IP地址 掩码 例 配置IP地址为 ,掩码为 # ifconfig eth netmask

6 7.1 配置 TCP/IP 网络 route命令用于添加和删除网关
该命令的格式为:route (add|delete) [host|net] destination [gw gateway] [metric count] 其中选项和参数为: add:增加(默认)网关。 delete:删除(默认)网关。 net:指出目标为一个网络。当目标地址为一个网络地址时使用这个参数。 host:指定目标为一个主机。

7 7.1 配置 TCP/IP 网络 destination:指出数据包会被发送到的主机或网络的IP地址。destination可以为一个主机名,一个网络名,一个Internet地址,或者关键词“default”。 如果指定了“default”关键词,默认的网关条目会变为gateway。如果数据包的目标地址与路由表中的任何一个地址都不匹配,就会被送到gateway指定的地址。 gateway:指出到达目标需要通过的网关节点。这个地址必须是IP地址或者一个主机名。

8 7.1 配置 TCP/IP 网络 count:是一个整数,指明到达目的地址可以经过多少个路由器。
route命令同ifconfig命令一样,需要系统管理员权限,当系统重新启动后所作的修改就不生效。 例1:增加一条到主机( )的路由,网关为 : #route add -host gw

9 7.1 配置 TCP/IP 网络 例2:增加一条到网络(202.48.15.0)路由,网关为11.11.2.9:
#route add -net netmask gw 例3:增加一条默认路由,默认网关为 : #route add default gw

10 7.1 配置 TCP/IP 网络 例4:分别删除前面增加的三条路由:
#route del –host gw #route del -net netmask gw #route delete default gw

11 7.1 配置 TCP/IP 网络 用命令route flush可以刷新内核路由选择表中所有的静态、动态路由 #route flush
default done e loopback done #

12 7.1 配置 TCP/IP 网络 在Linux系统文件/etc/sysconfig/network-scripts/ifcfg-eth0中包含有网卡的配置信息,可以通过修改该文件信息达到配置IP地址、掩码和路由信息的目的。

13 7.1 配置 TCP/IP 网络 该文件的模板如下: DEVICE=eth0 BOOTPROTO=none
HWADDR=00:4E:5D:6F:E9:47 ONBOOT=yes TYPE=Ethernet NETMASK= IPADDR= USERCTL=no PEERDNS=yes GATEWAY= IPV6INIT=no

14 7.1 配置 TCP/IP 网络 文件中IPADDR为IP地址设置 NETMASK为子网掩码设置 GATEWAY为网关设置。
当对该文件修改成功并保存后,需要用命令/etc/init.d/network reload 或/sbin/service network restart重新加载该文件,则所作的修改即刻生效,并且关机重新引导后设置的这些信息仍然生效。

15 7.2 配置TCP/IP应用服务

16 7.2 配置 TCP/IP 应用服务 在Linux提供的TCP/IP应用服务主要包括: Web服务(http服务) DNS服务(域名服务)
Telnet服务(远程登录) FTP服务(远程文件传输) SMTP服务(简单邮件传输协议) SNMP(简单网络管理协议) ICMP(Internet控制信息协议) 作为网络服务器,Linux系统需要配置一系列系统文件。

17 7.2 配置 TCP/IP 应用服务 /etc/sysconfig/network用于指定主机的名称
/etc/sysconfig/network显示系统的主机名称,即完全的域名,如:pridna.siwor.com

18 7.2 配置 TCP/IP 应用服务 Linux所提供的网络服务都是由进程inetd控制,该进程是监视网络请求的守护进程,根据网络请求来调用相应的服务进程来处理请求,该进程也被称为“超级服务器”。 系统进程inetd对应的系统文件为/etc/inetd.conf。所以,Linux提供的服务由文件/etc/inetd.conf来决定。 文件inetd.conf告诉进程inetd监听哪些网络端口,为每个端口启动相应的服务。 比较新版本的linux用文件/etc/xinetd.conf。

19 7.2 配置 TCP/IP 应用服务 /etc/hosts文件中包含有主机名到IP地址的映射表。
只有超级用户才有权修改该文件。

20 7.2 配置 TCP/IP 应用服务 该文件的模板如下: # Internet host table 127.0.0.1 localhost
mailsvr2adm loghost mailcls2 mailsvr2 router catng storsv mailsvr1adm mailsvr1 mailsvr2v

21 7.2 配置 TCP/IP 应用服务 一个IP地址可以对应多个主机名,第一个是正式主机名,后面的是别名。
第一行localhost是本地主机项,是配置在机器中的回送网络接口,用于允许主机上运行的客户/服务器应用相互通信,不能修改或删除。 从文件中可以看到IP地址 对应的主机名是mailsvr2adm和loghost。 虽然loghost是别名,但是必须在该文件中定义,这是系统进程syslogd要求的。

22 7.2 配置 TCP/IP 应用服务 系统进程syslogd主要负责为系统作日志,将消息发给名为loghosts的主机,主机在日志文件/var/adm/messages中记录消息内容。 当某台主机的IP地址或域名变化后,必须通知相应的域名服务器修改该文件。

23 7.2 配置 TCP/IP 应用服务 在需要域名解析时,用域名服务器(DNS)作为文件/etc/hosts中主机的域,同时还要查找文件resolv.conf,因为该文件指定网络上的域名服务器。 文件resolv.conf的格式为: domain siwor.com nameserver nameserver nameserver

24 7.2 配置 TCP/IP 应用服务 文件第一行表示主机所在的域,即默认值,为siwor.com。域中任何用户主机名解析的结果均会加上siwor.com。 如某一个用户主机名为pridna,则解析后为pridna.siwor.com。 通常会配置两个服务器做域名解析,一个为主,另一个为辅。按顺序依次查询。

25 7.2 配置 TCP/IP 应用服务 Linux通过/etc/hosts来获得主机名对应的IP地址,但是文件/etc/host.conf用于指定如何解析主机名。 下面是一个“/etc/host.conf”的模板: order bind,hosts multi on nospoof on

26 7.2 配置 TCP/IP 应用服务 文件中第一行“order bind,hosts”指定主机名查询顺序,这里规定先使用DNS来解析域名,然后再查询“/etc/hosts”文件(也可以相反)。 第二行“multi on”指定是否“/etc/hosts”文件中指定的主机可以有多个地址,拥有多个IP地址的主机一般称为多穴主机。 第三行“nospoof on”指不允许对该服务器进行IP地址欺骗。IP欺骗是一种攻击系统安全的手段,通过把IP地址伪装成别的计算机,来取得其它计算机的信任。

27 7.2 配置 TCP/IP 应用服务 文件/etc/sysconfig/network用来指定服务器上的网络配置信息。
下面是该文件的一个模板: NETWORK=yes/no FORWARD_IPV4=yes/no HOSTNAME=hostname GAREWAY=gw-ip GAREWAYDEV=gw-dev

28 7.2 配置 TCP/IP 应用服务 其中: NETWORK:表示网络是否被配置; FORWARD_IPV4:表示是否开启IP转发功能;
HOSTNAME:表示服务器的主机名,此处应该与/etc/hostname和/etc/hosts等文件中的主机名相同; GAREWAY:表示网络网关的IP地址; GAREWAYDEV:表示网关设备名,如:etho等。

29 7.2 配置 TCP/IP 应用服务 /etc/services文件用于指出本系统所包含的TCP服务名、TCP端口号和用于连接服务器的TCP协议清单。 该文件在每一台主机上都存在,使得服务器和客户端的程序能够把服务的名字转成端口号,TCP端口号在协议RFC 1700中有详细的定义。 为了提高安全性,可以给这个文件加上保护以避免没有经过授权的删除和改变。

30 7.2 配置 TCP/IP 应用服务 下面是该文件的一个模板: # # tcp services. Sockets and so on
echo /udp echo /tcp discard 9/udp sink null systat /tcp daytime 13/udp daytime 13/tcp netstat /

31 7.2 配置 TCP/IP 应用服务 tcp ftp data 20/tcp ftp 22/tcp telnet 23/tcp
smtp /tcp time /tcp time /udp name /udp whois /udp domain /udp hostname /tcp

32 7.2 配置 TCP/IP 应用服务 文件/etc/securetty用于超级用户(root)登录系统时,配合登录程序“/bin/login”验证超级用户是否从允许规定的终端(TTY)设备登录。 该文件的一个模板如下: tty1 #tty2 #tty3 #tty4 在该文件中列出来的tty设备都是允许登录的,注释掉或是在这个文件中不存在的都是不允许超级用户登录的。

33 7.2 配置 TCP/IP 应用服务 文件/etc/hosts.deny和/etc/hosts.allow用于指定哪些主机不可以使用的服务和可以使用的服务。 当某一主机的服务请求到达服务器时,TCP wrapper就按照下列顺序查询服务器的这两个文件,直到遇到一个匹配为止:

34 7.2 配置 TCP/IP 应用服务 1.当在/etc/hosts.allow里面有一项与请求服务的主机地址项匹配,那么就允许该主机获取该服务; 2.否则,如果在/etc/hosts.deny里面有一项与请求服务的主机地址项匹配,就禁止该主机使用该项服务; 3.如果相应的配置文件不存在,访问控制软件就认为是一个空文件,允许所有的主机。 因此,可以通过删除或者移走这两个文件实现清除所有设置。

35 7.2 配置 TCP/IP 应用服务 配置这两个文件是通过一种简单的访问控制语言来实现的 访问控制语句的基本格式为:
程序名列表指定一个或者多个提供相应服务的程序的名字,名字之间用逗号或者空格分割。 主机名/IP地址列表指定允许或者禁止使用该服务的一个或者多个主机的标识,主机名之间用逗号或空格分隔。

36 7.2 配置 TCP/IP 应用服务 程序名和主机地址都可以使用通配符,实现方便的指定多项服务和多个主机。如:
1.一个以“.”起始的域名串,如 .pridna.siwor.com,那么 2.以“.”结尾的IP串如   那么IP地址包括  的主机都与这一项匹配 3.格式为n.n.n.n/m.m.m.m表示网络/掩码,如果请求服务的主机的IP地址与掩码的位与的结果等于n.n.n.n 那么该主机与该项匹配

37 7.2 配置 TCP/IP 应用服务 4.EXPECT表示除去后面所定义的主机。如:list_1 EXCEPT list_2,表示list_1主机列表中除去List_2所列出的主机 5.LOCAL表示匹配所有主机名中不包含“.”的主机 6.ALL表示匹配所有可能性。

38 7.3 TCP/IP接口管理

39 7.3 TCP/IP接口管理 在Linux系统中,如果安装有多个网卡,则有多个网络接口,每个接口在系统中都有一个接口号(接口名)。
常用于以太网的接口名有eth,如以太网端口0的接口名为eth0。 用命令ifconfig 查看网络接口参数。

40 7.3 TCP/IP接口管理 用命令ifconfig带参数a可以查看所有网络接口参数。 #ifconfig –a
eth0: flags=849<UP,LOOPBACK,RUNNING,MULTICAST> mtu 8232 inet netmask ff000000 ge0: flags=863<UP,BROADCAST,NOTRAILERS,RUNNING,MULTICAST> mtu 1500 inet netmask broadcast #

41 7.3 TCP/IP接口管理 命令ifconfig –a输出行中: 最左面的为接口号(接口名),如eth0。
LOOPBACK表示该接口是机器的回送接口。 BROADCAST表示接口正在发送和接收广播。 RUNNING表示网卡驱动程序和流模块正在运行。 MULTICAST表示接口支持多目广播预约。 UP表示接口在线。 inet、netmask、broadcast后分别是接口的IP地址、掩码和广播地址。 mtu是数据链路接口的最大传输单元。

42 7.3 TCP/IP接口管理 命令ifconfig可以立刻改变网络接口参数,但系统重新引导后所修改的网络接口参数不再生效。要长期生效必须修改配置文件。 命令格式:ifconfig interface-name para 例:设置接口eth0的IP地址为 ,掩码为 ,在线。 #ifconfig eth0 inet netmask up 使接口eth0离线: #ifconfig ge0 down

43 7.3 TCP/IP接口管理 命令netstat -a用于查看网络连接状态,输出信息非常丰富。 $netstat -a
Active Internet connections (including servers) Proto Recv-Q Send-Q Local Address Foreign Address (state) tcp ibm.telnet ESTABLISHED tcp *.www *.* LISTEN tcp localhost *.* LISTEN tcp *.smux *.* LISTEN tcp *.dtspc *.* LISTEN tcp * *.* LISTEN

44 7.3 TCP/IP接口管理 tcp4 0 0 *.time *.* LISTEN
tcp *.daytime *.* LISTEN tcp *.chargen *.* LISTEN tcp *.discard *.* LISTEN tcp *.echo *.* LISTEN tcp *.exec *.* LISTEN tcp *.klogin *.* LISTEN tcp *.login *.* LISTEN tcp *.kshell *.* LISTEN tcp *.shell *.* LISTEN tcp *.telnet *.* LISTEN

45 7.3 TCP/IP接口管理 tcp 0 0 *.ftp *.* LISTEN tcp4 0 0 *.sunrpc *.* LISTEN
tcp * *.* LISTEN tcp * *.* LISTEN udp *.snmp *.* udp * *.* udp *.time *.* udp *.daytime *.* Active Linux domain sockets SADR/PCB Type Recv-Q Send-Q Inode Conn Refs Nextref Addr 7005d400 dgram /dev/SRC fc0

46 7.3 TCP/IP接口管理 可见,命令netstat –a的输出分为UDP、TCP和激活UNIX域的套接字三个部分。
7004c200 dgram e8a /dev/.SRC-unix /SRCVjcBMc 70057d40 7004f800 dgram f f00 70057d80 7004a600 dgram /dev/.SRC-unix /SRC_lcBMd 70057d00 # 可见,命令netstat –a的输出分为UDP、TCP和激活UNIX域的套接字三个部分。

47 7.3 TCP/IP接口管理 在UDP输出中 Local Address是所连主机的IP地址或名称、正在使用的端口号或服务名,“*”表示有一个驻守进程在监听端口,但没有建立连接。 State表示连接的状态,有Idle(空闲)、Unbound(非捆绑)。

48 7.3 TCP/IP接口管理 在TCP输出中 Local Address是所连主机的IP地址或名称、正在使用的端口号或服务名,“*”表示有一个驻守进程在监听端口,但没有建立连接。 Foreign Address是远程主机的IP地址或名称、端口号或服务名,“*”表示IP地址或名称不详。 State表示连接的状态,有: BOUND(捆绑) UNBOUND(非捆绑) IDLE(闲置状态)

49 7.3 TCP/IP接口管理 CLOSED(套接字不在使用) LISTEN(监听进入连接) SYN_SENT(激活尝试建立连接)
SYN_RECEIVED(正在进行连接的初始化同步) ESTABLISHED(建立连接) CLOSED_WAIT(远程连接关闭并等待关闭套接字) FIN_WAIT_1(套接字关闭并且正在关闭连接) LAST_ACK(正在等待上一个应答) FIN_WAIT_2(套接字关闭正在等待远程主机关闭)

50 7.3 TCP/IP接口管理 命令netstat –i显示主机每个接口的统计信息。 $ netstat –I
Name Mtu Network Address Ipkts Ierrs Opkts Oerrs Coll eth link# eth localhost eth :: en link# a.fc.c en ibmtc

51 7.3 TCP/IP接口管理 命令netstat –i的输出中: Name为接口名。 Mtu是数据链路接口的最大传输单元。
Network是接口连接的网络名或网络号。 Ipkts是接口已处理包的数量。 Ierre是接口曾收到的输入错误包的数量。 Opkts是接口输出包的数量。 Oerre是接口输出错误包的数量。 Coll是接口以太网冲突的数量。 Queue表示网线问题而不能发出的包。

52 7.3 TCP/IP接口管理 命令netstat -s可以得到网络通信协议的统计信息。 %netstat -s Ip:
631 total packets received 0 forwarded 0 incoming packets discarded 629 incoming packets delivered 482 requests sent out 1 dropped because of missing route

53 7.3 TCP/IP接口管理 Icmp: 2 ICMP messages received
0 input ICMP message failed. ICMP input histogram: destination unreachable: 2 2 ICMP messages sent 0 ICMP messages failed ICMP output histogram:

54 7.3 TCP/IP接口管理 Tcp: 0 active connections openings
0 passive connection openings 0 failed connection attempts 0 connection resets received 2 connections established 614 segments received 479 segments send out

55 7.3 TCP/IP接口管理 1 segments retransmited 0 bad segments received.
0 resets sent Udp: 0 packets received

56 7.5 本章小结 现在的Internet中,TCP/IP协议无所不在。
7.5 本章小结 现在的Internet中,TCP/IP协议无所不在。 而早期的网络技术就是根据UNIX系统的需求及功能发展起来的。由于UNIX系统具有运行稳定、性能可靠、系统安全及良好的网络环境等特点,因此成为构建网络环境主机的首选平台。 本章着重介绍了TCP/IP协议在Linux系统中的应用及实现。涉及到了Linux系统的网络配置、网络通信状态监控和服务器配置等。 在Linux提供的网络服务中,将述了TCP应用服务:域名服务、Web服务、邮件服务、FTP服务等。 本章中最核心的内容是网络服务器的配置及网络管理环境。


Download ppt "第7章 Linux网络管理 计算机学院 潘 薇 panwei117@qq.com."
Ads by Google