国产一区二区精品久久_蜜桃狠狠狠狠狠狠狠狠狠_午夜视频精品_激情都市一区二区

當(dāng)前位置:首頁(yè) > 網(wǎng)站舊欄目 > 學(xué)習(xí)園地 > 名師教程 > Linux網(wǎng)絡(luò)服務(wù)器配置基礎(chǔ)(上)

Linux網(wǎng)絡(luò)服務(wù)器配置基礎(chǔ)(上)
2006-03-31 14:29:03  作者:新宣  來源:
    要建立一個(gè)安全Linux服務(wù)器就首先要了解Linux環(huán)境下和網(wǎng)絡(luò)服務(wù)相關(guān)的配置文件的含義及如何進(jìn)行安全的配置。在Linux系統(tǒng)中,TCP/IP網(wǎng)絡(luò)是通過若干個(gè)文本文件進(jìn)行配置的,也許你需要編輯這些文件來完成聯(lián)網(wǎng)工作,但是這些配置文件大都可以通過配置命令linuxconf(其中網(wǎng)絡(luò)部分的配置可以通過netconf命令來實(shí)現(xiàn))命令來實(shí)現(xiàn)。下面介紹基本的 TCP/IP網(wǎng)絡(luò)配置文件。

* /etc/conf.modules
文件
  該配置文件定義了各種需要在啟動(dòng)時(shí)加載的模塊的參數(shù)信息。這里主要著重討論關(guān)于網(wǎng)卡的配置。在使用Linux做網(wǎng)關(guān)的情況下,Linux服務(wù)器至少需要配置兩塊網(wǎng)卡。為了減少啟動(dòng)時(shí)可能出現(xiàn)的問題,Linux內(nèi)核不會(huì)自動(dòng)檢測(cè)多個(gè)網(wǎng)卡。對(duì)于沒有將網(wǎng)卡的驅(qū)動(dòng)編譯到內(nèi)核而是作為模塊動(dòng)態(tài)載入的系統(tǒng)若需要安裝多塊網(wǎng)卡,應(yīng)該在“conf.modules”文件中進(jìn)行相應(yīng)的配置。

  若設(shè)備驅(qū)動(dòng)被編譯為模塊(內(nèi)核的模塊):對(duì)于PCI設(shè)備,模塊將自動(dòng)檢測(cè)到所有已經(jīng)安裝到系統(tǒng)上的設(shè)備;對(duì)于ISA卡,則需要向模塊提供IO地址,以使模塊知道在何處尋找該卡,這些信息在“/etc/conf.modules”中提供。

  例如,我們有兩塊ISA總線的3c509卡,一個(gè)IO地址是0x300,另一個(gè)是0x320。編輯“conf.modules”文件如下:

  alias eth0 3c509

  alias eth1 3c509

  options 3c509 io=0x300,0x320

  這是說明3c509的驅(qū)動(dòng)程序應(yīng)當(dāng)分別以eth0eth1的名稱被加載(alias eth0,eth1),并且它們應(yīng)該以參數(shù)io=0x300,0x320被裝載,來通知驅(qū)動(dòng)程序到哪里去尋找網(wǎng)卡,其中0x是不可缺少的。

  對(duì)于PCI卡,僅僅需要alias命令來使ethN和適當(dāng)?shù)尿?qū)動(dòng)模塊名關(guān)聯(lián),PCI卡的IO地址將會(huì)被自動(dòng)的檢測(cè)到。對(duì)于PCI卡,編輯“conf.modules”文件如下:

  alias eth0 3c905

  alias eth1 3c905

  若驅(qū)動(dòng)已經(jīng)被編譯進(jìn)了內(nèi)核:系統(tǒng)啟動(dòng)時(shí)的PCI檢測(cè)程序?qū)?huì)自動(dòng)找到所有相關(guān)的網(wǎng)卡。ISA卡一般也能夠被自動(dòng)檢測(cè)到,但是在某些情況下,ISA卡仍然需要做下面的配置工作:

  在“/etc/lilo.conf”中增加配置信息,其方法是通過LILO程序?qū)?dòng)參數(shù)信息傳遞給內(nèi)核。對(duì)于ISA卡,編輯“l(fā)ilo.conf”文件,增加如下內(nèi)容:

  append=" ether="0,0,eth0 ether="0,0,eth1"

  注:先不要在“l(fā)ilo.conf”中加入啟動(dòng)參數(shù),測(cè)試一下你的ISA卡,若失敗再使用啟動(dòng)參數(shù)。

  如果用傳遞啟動(dòng)參數(shù)的方法,eth0eth1將按照啟動(dòng)時(shí)被發(fā)現(xiàn)的順序來設(shè)置。

* /etc/HOSTNAME
文件
  該文件包含了系統(tǒng)的主機(jī)名稱,包括完全的域名,如:deep.openarch.com

*/etc/sysconfig/network-scripts/ifcfg-ethN
文件
  在RedHat中,系統(tǒng)網(wǎng)絡(luò)設(shè)備的配置文件保存在“/etc/sysconfig/network-scripts”目錄下,ifcfg-eth0包含第一塊網(wǎng)卡的配置信息,ifcfg-eth1包含第二塊網(wǎng)卡的配置信息。

  下面是“/etc/sysconfig/network-scripts/ifcfg-eth0”文件的示例:

  DEVICE=eth0

  IPADDR=208.164.186.1

  NETMASK=255.255.255.0

  NETWORK=208.164.186.0

  BROADCAST=208.164.186.255

  ONBOOT=yes

  BOOTPROTO=none

  USERCTL=no

  若希望手工修改網(wǎng)絡(luò)地址或在新的接口上增加新的網(wǎng)絡(luò)界面,可以通過修改對(duì)應(yīng)的文件(ifcfg-ethN)或創(chuàng)建新的文件來實(shí)現(xiàn)。

  DEVICE=name     name表示物理設(shè)備的名字

  IPADDR=addr     addr表示賦給該卡的IP地址

  NETMASK=mask    mask表示網(wǎng)絡(luò)掩碼

  NETWORK=addr    addr表示網(wǎng)絡(luò)地址

  BROADCAST=addr   addr表示廣播地址

  ONBOOT=yes/no   啟動(dòng)時(shí)是否激活該卡

  none:無(wú)須啟動(dòng)協(xié)議

  bootp:使用bootp協(xié)議

  dhcp:使用dhcp協(xié)議

  USERCTL=yes/no       是否允許非root用戶控制該設(shè)備

*/etc/resolv.conf
文件
  該文件是由域名解析器(resolver,一個(gè)根據(jù)主機(jī)名解析IP地址的庫(kù))使用的配置文件,示例如下:

  search openarch.com

  nameserver 208.164.186.1

  nameserver 208.164.186.2

  “search domainname.com”表示當(dāng)提供了一個(gè)不包括完全域名的主機(jī)名時(shí),在該主機(jī)名后添加domainname.com的后綴;“nameserver”表示解析域名時(shí)使用該地址指定的主機(jī)為域名服務(wù)器。其中域名服務(wù)器是按照文件中出現(xiàn)的順序來查詢的。

*/etc/host.conf
文件
  該文件指定如何解析主機(jī)名。Linux通過解析器庫(kù)來獲得主機(jī)名對(duì)應(yīng)的IP地址。下面是一個(gè)“/etc/host.conf”的示例:

  order bind,hosts

  multi on

  ospoof on

  “order bind,hosts”指定主機(jī)名查詢順序,這里規(guī)定先使用DNS來解析域名,然后再查詢“/etc/hosts”文件(也可以相反)

  “multi on”指定是否“/etc/hosts”文件中指定的主機(jī)可以有多個(gè)地址,擁有多個(gè)IP地址的主機(jī)一般稱為多穴主機(jī)。

  “nospoof on”指不允許對(duì)該服務(wù)器進(jìn)行IP地址欺騙。IP欺騙是一種攻擊系統(tǒng)安全的手段,通過把IP地址偽裝成別的計(jì)算機(jī),來取得其它計(jì)算機(jī)的信任。

*/etc/sysconfig/network
文件
  該文件用來指定服務(wù)器上的網(wǎng)絡(luò)配置信息,下面是一個(gè)示例:

  NETWORK=yes

  RORWARD_IPV4=yes

  HOSTNAME=deep.openarch.com

  GAREWAY=0.0.0.0

  GATEWAYDEV=

  NETWORK=yes/no     網(wǎng)絡(luò)是否被配置;

  FORWARD_IPV4=yes/no    是否開啟IP轉(zhuǎn)發(fā)功能

  HOSTNAME=hostname hostname表示服務(wù)器的主機(jī)名

  GAREWAY=gw-ip     gw-ip表示網(wǎng)絡(luò)網(wǎng)關(guān)的IP地址

  GAREWAYDEV=gw-dev   gw-dw表示網(wǎng)關(guān)的設(shè)備名,如:etho

  注意:為了和老的軟件相兼容,“/etc/HOSTNAME”文件應(yīng)該用和HOSTNAME=hostname相同的主機(jī)名。

*/etc/hosts
文件
  當(dāng)機(jī)器啟動(dòng)時(shí),在可以查詢DNS以前,機(jī)器需要查詢一些主機(jī)名到IP地址的匹配。這些匹配信息存放在/etc/hosts文件中。在沒有域名服務(wù)器情況下,系統(tǒng)上的所有網(wǎng)絡(luò)程序都通過查詢?cè)撐募䜩斫馕鰧?duì)應(yīng)于某個(gè)主機(jī)名的IP地址。

  下面是一個(gè)“/etc/hosts”文件的示例:

  IP Address     Hostname           Alias

  127.0.0.1      Localhost          Gate.openarch.com

  208.164.186.1    gate.openarch.com Gate

  …………       …………           ………

  最左邊一列是主機(jī)IP信息,中間一列是主機(jī)名。任何后面的列都是該主機(jī)的別名。一旦配置完機(jī)器的網(wǎng)絡(luò)配置文件,應(yīng)該重新啟動(dòng)網(wǎng)絡(luò)以使修改生效。使用下面的命令來重新啟動(dòng)網(wǎng)絡(luò):/etc/rc.d/init.d/network restart

* /etc/inetd.conf
文件
  眾所周知,作為服務(wù)器來說,服務(wù)端口開放越多,系統(tǒng)安全穩(wěn)定性越難以保證。所以提供特定服務(wù)的服務(wù)器應(yīng)該盡可能開放提供服務(wù)必不可少的端口,而將與服務(wù)器服務(wù)無(wú)關(guān)的服務(wù)關(guān)閉,比如:一臺(tái)作為wwwftp服務(wù)器的機(jī)器,應(yīng)該只開放80 25端口,而將其他無(wú)關(guān)的服務(wù)如:finger auth等服務(wù)關(guān)掉,以減少系統(tǒng)漏洞。

  而inetd,也叫作超級(jí)服務(wù)器,就是監(jiān)視一些網(wǎng)絡(luò)請(qǐng)求的守護(hù)進(jìn)程,其根據(jù)網(wǎng)絡(luò)請(qǐng)求來調(diào)用相應(yīng)的服務(wù)進(jìn)程來處理連接請(qǐng)求。inetd.conf則是inetd的配置文件。inetd.conf文件告訴inetd監(jiān)聽哪些網(wǎng)絡(luò)端口,為每個(gè)端口啟動(dòng)哪個(gè)服務(wù)。在任何的網(wǎng)絡(luò)環(huán)境中使用Linux系統(tǒng),第一件要做的事就是了解一下服務(wù)器到底要提供哪些服務(wù)。不需要的那些服務(wù)應(yīng)該被禁止掉,最好卸載掉,這樣黑客就少了一些攻擊系統(tǒng)的機(jī)會(huì)。查看“/etc/inetd.conf”文件,了解一下inetd提供哪些服務(wù)。用加上注釋的方法(在一行的開頭加上#號(hào)),禁止任何不需要的服務(wù),再給inetd進(jìn)程發(fā)一個(gè)SIGHUP信號(hào)。

  第一步:把文件的許可權(quán)限改成600

  [root@deep]# chmod 600 /etc/inetd.conf

  第二步:確信文件的所有者是root

  [root@deep]# stat /etc/inetd.conf

  第三步:編輯“inetd.conf”文件(vi /etc/inetd.conf),禁止所有不需要的服務(wù),如:ftp telnet shell login exectalkntalk imap pop-2pop-3fingerauth,等等。如果你覺得某些服務(wù)有用,可以不禁止這些服務(wù)。但是,把這些服務(wù)禁止掉,系統(tǒng)受攻擊的可能性就會(huì)小很多。改變后的“inetd.conf”文件的內(nèi)容如下面所示:

  # To re-read this file after changes, just do a 'killall -HUP inetd'

  #

  #echo stream tcp nowait root internal

  #echo dgram udp wait root internal

  #discard stream tcp nowait root internal

  #discard 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

  #time stream tcp nowait root internal

  #time dgram udp wait root internal

  #

  # These are standard services.

  #

  #ftp stream tcp nowait root /usr/sbin/tcpd in.ftpd -l -a

  #telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd

  #

  # Shell, login, exec, comsat and talk are BSD protocols.

  #

  #shell stream tcp nowait root /usr/sbin/tcpd in.rshd

  #login stream tcp nowait root /usr/sbin/tcpd in.rlogind

  #exec stream tcp nowait root /usr/sbin/tcpd in.rexecd

  #comsat dgram udp wait root /usr/sbin/tcpd in.comsat

  #talk dgram udp wait root /usr/sbin/tcpd in.talkd

  #ntalk dgram udp wait root /usr/sbin/tcpd in.ntalkd

  #dtalk stream tcp wait nobody /usr/sbin/tcpd in.dtalkd

  #

  # Pop and imap mail services et al

  #

  #pop-2 stream tcp nowait root /usr/sbin/tcpd ipop2d

  #pop-3 stream tcp nowait root /usr/sbin/tcpd ipop3d

  #imap stream tcp nowait root /usr/sbin/tcpd imapd

  #

  # The Internet UUCP service.

  #

  #uucp stream tcp nowait uucp /usr/sbin/tcpd /usr/lib/uucp/uucico -l

  #

  # Tftp service is provided primarily for booting. Most sites

  # run this only on machines acting as "boot servers." Do not uncomment

  # this unless you *need* it.

  #

  #tftp dgram udp wait root /usr/sbin/tcpd in.tftpd

  #bootps dgram udp wait root /usr/sbin/tcpd bootpd

  #

  # Finger, systat and netstat give out user information which may be

  # valuable to potential "system crackers." Many sites choose to disable

  # some or all of these services to improve security.

  #

  #finger stream tcp nowait root /usr/sbin/tcpd in.fingerd

  #cfinger stream tcp nowait root /usr/sbin/tcpd in.cfingerd

  #systat stream tcp nowait guest /usr/sbin/tcpd /bin/ps -auwwx

  #netstat stream tcp nowait guest /usr/sbin/tcpd /bin/netstat -f inet

  #

  # Authentication

  #

  #auth stream tcp nowait nobody /usr/sbin/in.identd in.identd -l -e -o

  #

  # End of inetd.conf

  注意:改變了“inetd.conf”文件之后,別忘了給inetd安徽新華電腦學(xué)校專業(yè)職業(yè)規(guī)劃師為你提供更多幫助【在線咨詢