1Linux常用网络指令介绍2•Linux的网络功能相当的强悍,一时之间我们也无法完全的介绍所有的网络指令,这个章节主要的目的在介绍一些常见的网络指令而已。3主要内容•1.网络参数设定指令•2.网络侦错与观察指令•3.主机基本安全之一:限制Linux对外联机的端口•4.主机基本安全之二:Linux在线自动升级41.网络参数设定指令:•1.1ifconfig,ifup,ifdown•1.2route•1.3ip•1.4iwlist,iwconfig•1.5dhclient5ifconfig,ifup,ifdown•这三个指令的用途都是在启动网络接口,不过,ifup与ifdown仅能就/etc/sysconfig/network-scripts内的ifcfg-ethx(x为数字)进行启动或关闭的动作,并不能直接修改网络参数,除非手动调整ifcfg-ethx档案才行。至于ifconfig则可以直接手动给予某个接口IP或调整其网络参数!底下我们就分别来谈一谈先!6•ifconfig•ifconfig主要是可以手动的启动、观察与修改网络接口的相关参数78•/etc/init.d/networkrestart来重新启动整个网络接口,那么之前手动的设定数据会全部都失效喔!9ifup,ifdown•实时的手动修改一些网络接口参数,可以利用ifconfig来达成,如果是要直接以设定档,亦即是/etc/sysconfig/network-scripts里面的ifcfg-ethx等档案的设定参数来启动的话,那就得要透过ifdown或ifup来达成了。10路由修改route•只要有网络接口,该接口就会产生一个路由,例如主机有一个eth0及lo1112•因此当你重复设定多个同样的路由时,例如在你的主机上的两张网络卡设定为相同网域的IP时,会出现什么情况?1314iwlist,iwconfig•这两个指令您必须要有无线网卡才能够进行喔!•iwlist:利用无线网卡进行无线AP的侦测与取得相关的数据;•iwconfig:设定无线网卡的相关参数。15dhclient•如果你是使用DHCP协议在局域网络内取得IP的话,那么是否一定要去编辑ifcfg-eth0内的BOOTPROTO呢?嘿嘿!有个更快速的作法,那就是利用dhclient这个指令~因为这个指令才是真正发送dhcp要求工作的程序啊!那要如何使用呢?很简单!162.网络侦错与观察指令:•2.1ping:用ping追踪最大MTU数值•2.2traceroute•2.3netstat•2.4host•2.5nslookup17ping1819•如果想要了解区网内有多少部主机存活着,那么使用ping-bbroadcast就能够知道了!20traceroute2122netstat•如果你觉得你的某个网络服务明明就启动了,但是就是无法造成联机的话,那么应该怎么办?首先你应该要查询一下自己的网络接口所监听的端口口(port)来看看是否真的有启动,因为有时候屏幕上面显示的[OK]并不一定是OK啊!^_^232425host•这个指令可以用来查出某个主机名称的IP喔!26nslookup•这玩意儿的用途与host基本上是一样的,就是用来作为IP与主机名称对应的检查27•如何,看起来与host差不多吧!不过,这个nslookup还可以由IP找出主机名称喔!例如那个范例二,他的主机名称是:dns.hinet.net哩!283、主机基本安全之一:限制Linux对外联机的端口•1.Linux的端口(port)•1.1什么是port?•1.2观察port:netstat,nmap•2.port的启动与关闭•2.1standalone与superdaemon•2.2设定开机时启动服务•2.3安全性的考虑29什么是port•主机端的监听(Listen):•想一想,你要如何连上Yahoo的网站去看新闻?首先当然是要打开浏览器,然后输入Yahoo的网址,之后我们的浏览器就会连接到Yahoo的网站去要求数据了。既然如此的话,那么那部Yahoo的的服务啦,然后我们的浏览器才能够连接到该服务。•这也就是说『主机所启用的port其实是由某些网络服务(program)所启动的』。而为了连接上的方便,因此很多服务所开启的port是固定的,例如,mail开启在port25等等;••客户端的port:•客户端启动的port是随机产生的,主要是开启在大于1024以上的端口,这个port也是由某些软件所产生的,例如上面提到的例子,我们的浏览器想要连接到Yahoo的主机,那么浏览器就得要启用一个port来与主机进行联机30观察port•我们的『服务』跟『port』对应的档案是『/etc/services』啦!而常用来观察port的则有底下两个程序:••netstat:在本机上面以自己的程序监测自己的port;••nmap:透过网络的侦测软件辅助,可侦测非本机上的其它网络主机。31•netstat•列出在监听的网络服务:32•列出已联机的网络联机状态:33•删除已建立或在监听当中的联机:34•nmap3536•nmap的用法很简单吶!就直接在指令后面接上IP或者是主机名称即可。不过,在预设的情况下nmap仅会帮你分析TCP这个通讯协议而已,那如果想要同时分析TCP/UDP这•两个常见的通讯协议呢?可以这样做37•如果你想要了解一下到底有几部主机活在你的网络当中时,则可以这样做:38Port的启动与关闭•现在你知道其实port是由某些程序所启动的,所以要关闭某些port时,那就直接将某个程序给他关闭,那关闭的方法你当然可以使用kill,不过,毕竟不是正统的解决之道,因为kill这个指令通常具有强制关闭某些程序的功能,但我们想要正常的关闭该程序啊!所以,就利用系统给我们的script来关闭就好了啊。在此同时,我们就得再来稍微复习一下,一般传统的服务有哪几种类型?39••standalone•顾名思义,standalone就是直接执行该服务的执行档,让该执行文件直接加载到内存当中运作,用这种方式来启动可以让该服务具有较快速响应的优点。一般来说,这种服务的启动script都会放置到/etc/init.d/这个目录底下,所以你通常可以使用:『/etc/init.d/sshdrestart』之类的方式来启动这种服务;••Superdaemon•用一个超级服务作为总管,以管理一些网络服务。在linux里面使用的则是xinetd这个superdaemon啊!这种方式启动的网络服务虽然在响应上速度会比较慢,不过,可以透过superdaemon额外提供一些控管,例如控制何时启动、何时可以进行联机、那个IP可以连进来、是否允许同时联机等等。通常设定档放置在/etc/xinetd.d/当中,但设定完毕后需要重新以『/etc/init.d/xinetdrestart』重新来启动才行!40•例题:我们知道系统的Telnet服务通常是以superdaemon来控管的,请您启动您系统的telnet试看看。1.要启动telnet首先必须要已经安装了telnet的服务器才行,所以请先以rpm查询看看是否有安装telnet-server呢?『rpm-qa|greptelnet-server』如果没有安装的话,请利用原版光盘来安装先;2.由于是superdaemon控管,所以请编辑/etc/xinetd.d/telnet这个档案,将其中的『disable=yes』改成『disable=no』之后以『/etc/init.d/xinetdrestart』重新启动superdaemon吧!3.利用netstat-tnlp察看是否有启动port23呢?41设定开机时启动服务•如果你想要在开机的时候就启动或不启动某项服务时,那就得要了解一下开机流程管理的内容啦!在Unixlike的系统当中我们都是透过runlevel来设定某些执行等级需要启动的服务,以RedHat系统来说,这些runlevel启动的数据都是放置在/etc/rc.d/rc[0-6].d/里面的,那如何管理该目录下的script呢?手动处理吗?会疯掉的吶!所以你必须要熟悉chkconfig或RedHat系统的ntsysv这几个指令才行!42『很多的系统服务是必须要存在的,否则系统将会出问题』服务名称服务内容Acpid新版的电源管理模块,通常建议开启,不过,某些笔记本机可能不支持此项服务,那就得关闭atd在管理单一预约命令执行的服务,应该要启动的crond在管理工作排程的重要服务,请务必要启动啊!iptables内建的防火墙软件,这个也可以启动啦keytables如果你的键盘非正规的格式时,这个服务的启动或许可以助你喔!network这个重要了吧?要网络就要有他啊!sshd这是系统预设会启动的,可以让你在远程以文字型态的终端机登入喔!syslog系统的登录文件记录,很重要的,务必启动啊!xinetd就是那个superdaemon嘛!所以也要启动啦!xfs用来管理XWindow字形数据的服务,如果你会需要XWindow时,这个服务要启动。43安全性的考虑•我们的Linuxdistribution很好心的帮使用者想到很多了,所以在一安装完毕之后,系统会开启一堆有的没有的网络服务,例如那个portmap之类的咚咚,以及网络打印机的cups服务等等,这些东西你或许知道或许不知道,不过他就是有开启~但我们的主机明明就是用来做为服务器的,所以这些本来预计要给client使用的服务其实有点『多此一举』的感觉~所以啦,请你将他关闭吧!就利用ntsysv或chkconfig来关闭他!只留下前一节咱们建议的那些服务就好了~其它的以后再说啊!44主机基本安全之二:Linux在线自动升级•在现在的Internet上面,Cracker实在是太多了!这些Cracker会利用已经存在的系统漏洞,来进行侦测、入侵您的主机,因此,除了未来架设防火墙之外,最重要的Linux日常管理工作,莫过于套件的升级了!45CentOS的yum自动升级•我们知道CentOS主要是以RPM来作为套件的管理机制,那么RPM本身就有一些表头数据记录了这个套件本身的信息,包括了相依属性之类的讯息等等,yum这个咚咚就是藉由分析这些RPM套件的表头数据,并且将这些表头数据事先记录下来,当使用者要求升级或者是安装的时候,yum就会透过分析这些表头数据来决定下载的档案,这些下载的档案当然包括了相依属性的套件了,所以说,yum已经主动克服了套件之间的属性相依问题啰!很棒吧!46那么yum是如何动作的呢?基本上是这样的:••先由设定档判断yumserver所在处;••连接到yumserver后,先下载新的RPM档案的表头数据;••分析比较使用者所欲安装/升级的档案,并提供使用者确认;••下载使用者选择的档案到系统中的/var/cache/yum,并进行实际安装;•所以说,找到合适的yumserver是挺重要的一件事啊!47yum的设定档•/etc/yum.conf•/etc/yum.repos.d/CentOS-Base.repo482、安装软件举例;•比如我要安装能听mp3的bmp-mp3,只要输入下面的命令行即可,系统就自己工作了;•[root@localhostbeinan]#yuminstallbmp-mp349谢谢!!!