Linux網卡配置

配置文件/etc/sysconfig/network

  若只有有一張網卡,那我們就直接手動安裝另一張網卡,首先切換目錄到 /etc/sysconfig 中,有一個檔案 network,其內容爲:

  其中的 FORWARD_IPV4 要設爲 yes,纔可以去啓動 IP 僞裝轉換
 /etc/sysconfig/network-scripts/ifcfg-eth1
  接著到 /etc/sysconfig/network-scripts 目錄中,會有下列檔案

  目前我們要注意的是 ifcfg-eth0、ifcfg-eth1 這兩個檔案,在你安裝完之後它只有 ifcfg-eth0 這個檔案,並沒有 ifcfg-eth1。首先將 ifcfg-eth0 複製成 ifcfg-eth1,執行
cp ifcfg-eth0 ifcfg-eth1
  其中 ifcfg-eth1 爲對外網絡卡的設定檔,依自己的設備去修改,其內容爲:
    第一行指定網絡卡的界面爲:eth1
    第三行指定廣播位址爲:192.192.73.255
    第四行指定IP位址爲:192.192.73.35
    第五行指定網絡遮罩爲:255.255.255.0
    第六行指定網絡號碼爲:192.192.73.0
    第七行指定是否在開機後去啓動網絡卡界面
  配置文件/etc/sysconfig/network-scripts/ifcfg-eth0
  在這我們直接修改設定檔 ifcfg-eth0,做爲內部虛擬的網絡卡介面,其內容爲:
    第一行指定網絡卡的界面爲:eth0
    第三行指定廣播位址爲:192.168.1.255
    第四行指定IP位址爲:192.168.1.1
    第五行指定網絡遮罩爲:255.255.255.0
    第六行指定網絡號碼爲:192.168.1.0
    第七行指定是否在開機後去啓動網絡卡界面
  在這我們指定的內部網絡,其中網絡號碼爲 192.168.1.0,廣播號爲 192.168.1.255 所以真正可用的虛擬 ip 位址爲 192.168.1.1 ~ 192.168.1.254。
3.5 啓動網卡
啓動 關閉
執行 ifconfig eth0 up ifconfig eth0 down
執行 ifconfig eth1 up ifconfig eth1 down
摘要:
Linux網絡服務配置文件詳解
  /etc/conf.module
/etc/HOSTNAME
/etc/sysconfig/network-scripts/ifcfg-ethN
/etc/resolv.conf
/etc/host.conf
/etc/sysconfig/network
/etc/hos…

 
Linux網絡服務配置文件詳解
  /etc/conf.module
/etc/HOSTNAME
/etc/sysconfig/network-scripts/ifcfg-ethN
/etc/resolv.conf
/etc/host.conf
/etc/sysconfig/network
/etc/hosts 
/etc/inetd.conf
/etc/hosts.allow
/etc/services
/etc/securetty 
/etc/rc.d/rc.local 
 
  要建立一個安全Linux服務器就首先要了解Linux環境下和網絡服務相關的配置文件的含義及如何進行安全的配置。在Linux系統中,TCP/IP網絡是通過若干個文本文件進行配置的,也許你需要編輯這些文件來完成聯網工作,但是這些配置文件大都可以通過配置命令linuxconf(其中網絡部分的配置可以通過netconf命令來實現)命令來實現。下面介紹基本的 TCP/IP網絡配置文件。 
* /etc/conf.modules 文件 
  該配置文件定義了各種需要在啓動時加載的模塊的參數信息。這裏主要着重討論關於網卡的配置。在使用Linux做網關的情況下,Linux服務器至少需要配置兩塊網卡。爲了減少啓動時可能出現的問題,Linux內核不會自動檢測多個網卡。對於沒有將網卡的驅動編譯到內核而是作爲模塊動態載入的系統若需要安裝多塊網卡,應該在conf.modules文件中進行相應的配置。 
  若設備驅動被編譯爲模塊(內核的模塊):對於PCI設備,模塊將自動檢測到所有已經安裝到系統上的設備;對於ISA卡,則需要向模塊提供IO地址,以使模塊知道在何處尋找該卡,這些信息在/etc/conf.modules中提供。 
  例如,我們有兩塊ISA總線的3c509卡,一個IO地址是0x300,另一個是0x320。編輯conf.modules文件如下:  
  alias eth0 3c509 
  alias eth1 3c509 
  options 3c509 io=0x300,0x320 
  這是說明3c509的驅動程序應當分別以eth0或eth1的名稱被加載(alias eth0,eth1),並且它們應該以參數io=0x300,0x320被裝載,來通知驅動程序到哪裏去尋找網卡,其中0x是不可缺少的。 
  對於PCI卡,僅僅需要alias命令來使ethN和適當的驅動模塊名關聯,PCI卡的IO地址將會被自動的檢測到。對於PCI卡,編輯conf.modules文件如下: 
  alias eth0 3c905 
   alias eth1 3c905 
  若驅動已經被編譯進了內核:系統啓動時的PCI檢測程序將會自動找到所有相關的網卡。ISA卡一般也能夠被自動檢測到,但是在某些情況下,ISA卡仍然需要做下面的配置工作: 
  在/etc/lilo.conf中增加配置信息,其方法是通過LILO程序將啓動參數信息傳遞給內核。對於ISA卡,編輯lilo.conf文件,增加如下內容: 
  append=" ether="0,0,eth0 ether="0,0,eth1" 
  注:先不要在lilo.conf中加入啓動參數,測試一下你的ISA卡,若失敗再使用啓動參數。 
  如果用傳遞啓動參數的方法,eth0和eth1將按照啓動時被發現的順序來設置。 

* /etc/HOSTNAME 文件 
  該文件包含了系統的主機名稱,包括完全的域名,如:deep.openarch.com。 
*/etc/sysconfig/network-scripts/ifcfg-ethN 文件 
  在RedHat中,系統網絡設備的配置文件保存在/etc/sysconfig/network-scripts目錄下,ifcfg-eth0包含第一塊網卡的配置信息,ifcfg-eth1包含第二塊網卡的配置信息。 
  下面是/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 
  若希望手工修改網絡地址或在新的接口上增加新的網絡界面,可以通過修改對應的文件(ifcfg-ethN)或創建新的文件來實現。 
  DEVICE=name     name表示物理設備的名字 
  IPADDR=addr     addr表示賦給該卡的IP地址 
  NETMASK=mask    mask表示網絡掩碼 
  NETWORK=addr    addr表示網絡地址 
  BROADCAST=addr   addr表示廣播地址 
  ONBOOT=yes/no   啓動時是否激活該卡 
  none:無須啓動協議 
  bootp:使用bootp協議 
  dhcp:使用dhcp協議 
  USERCTL=yes/no       是否允許非root用戶控制該設備 
*/etc/resolv.conf 文件  
  該文件是由域名解析器(resolver,一個根據主機名解析IP地址的庫)使用的配置文件,示例如下:  
  search openarch.com  
  nameserver 208.164.186.1  
  nameserver 208.164.186.2  
  search domainname.com表示當提供了一個不包括完全域名的主機名時,在該主機名後添加domainname.com的後綴;nameserver表示解析域名時使用該地址指定的主機爲域名服務器。其中域名服務器是按照文件中出現的順序來查詢的。  
*/etc/host.conf 文件  
  該文件指定如何解析主機名。Linux通過解析器庫來獲得主機名對應的IP地址。下面是一個/etc/host.conf的示例:  
  order bind,hosts  
  multi on  
  ospoof on  
  order bind,hosts指定主機名查詢順序,這裏規定先使用DNS來解析域名,然後再查詢/etc/hosts文件(也可以相反)。  
  multi on指定是否/etc/hosts文件中指定的主機可以有多個地址,擁有多個IP地址的主機一般稱爲多穴主機。  
  nospoof on指不允許對該服務器進行IP地址欺騙。IP欺騙是一種***系統安全的手段,通過把IP地址僞裝成別的計算機,來取得其它計算機的信任。*/etc/sysconfig/network 文件  
  該文件用來指定服務器上的網絡配置信息,下面是一個示例:  
  NETWORK=yes  
  RORWARD_IPV4=yes  
  HOSTNAME=deep.openarch.com  
  GAREWAY=0.0.0.0  
  GATEWAYDEV=  
  NETWORK=yes/no     網絡是否被配置;  
  FORWARD_IPV4=yes/no    是否開啓IP轉發功能  
  HOSTNAME=hostname hostname表示服務器的主機名  
  GAREWAY=gw-ip     gw-ip表示網絡網關的IP地址  
  GAREWAYDEV=gw-dev   gw-dw表示網關的設備名,如:etho等  
  注意:爲了和老的軟件相兼容,/etc/HOSTNAME文件應該用和HOSTNAME=hostname相同的主機名。  
*/etc/hosts 文件  
  當機器啓動時,在可以查詢DNS以前,機器需要查詢一些主機名到IP地址的匹配。這些匹配信息存放在/etc/hosts文件中。在沒有域名服務器情況下,系統上的所有網絡程序都通過查詢該文件來解析對應於某個主機名的IP地址。  
  下面是一個/etc/hosts文件的示例:  
  IP Address     Hostname           Alias  
  127.0.0.1      Localhost          Gate.openarch.com  
  208.164.186.1    gate.openarch.com Gate  
  …………       …………           ………  
  最左邊一列是主機IP信息,中間一列是主機名。任何後面的列都是該主機的別名。一旦配置完機器的網絡配置文件,應該重新啓動網絡以使修改生效。使用下面的命令來重新啓動網絡:/etc/rc.d/init.d/network restart  
* /etc/inetd.conf 文件  
  衆所周知,作爲服務器來說,服務端口開放越多,系統安全穩定性越難以保證。所以提供特定服務的服務器應該儘可能開放提供服務必不可少的端口,而將與服務器服務無關的服務關閉,比如:一臺作爲www和ftp服務器的機器,應該只開放80 和25端口,而將其他無關的服務如:finger auth等服務關掉,以減少系統漏洞。  
  而inetd,也叫作超級服務器,就是監視一些網絡請求的守護進程,其根據網絡請求來調用相應的服務進程來處理連接請求。inetd.conf則是inetd的配置文件。inetd.conf文件告訴inetd監聽哪些網絡端口,爲每個端口啓動哪個服務。在任何的網絡環境中使用Linux系統,第一件要做的事就是了解一下服務器到底要提供哪些服務。不需要的那些服務應該被禁止掉,最好卸載掉,這樣***就少了一些***系統的機會。查看/etc/inetd.conf文件,瞭解一下inetd提供哪些服務。用加上註釋的方法(在一行的開頭加上#號),禁止任何不需要的服務,再給inetd進程發一個SIGHUP信號。  
  第一步:把文件的許可權限改成600。  
  [root@deep]# chmod 600 /etc/inetd.conf  
  第二步:確信文件的所有者是root。  
  [root@deep]# stat /etc/inetd.conf  
  第三步:編輯inetd.conf文件(vi /etc/inetd.conf),禁止所有不需要的服務,如:ftp、 telnet、 shell、 login、 exec、talk、ntalk、 imap、 pop-2、pop-3、finger、auth,等等。如果你覺得某些服務有用,可以不禁止這些服務。但是,把這些服務禁止掉,系統受***的可能性就會小很多。改變後的inetd.conf文件的內容如下面所示:inetd.conf 
  第四步:  
  爲了保證inetd.conf文件的安全,可以用chattr命令把它設成不可改變。把文件設成不可改變的只要用下面的命令:  
  [root@deep]# chattr +i /etc/inetd.conf  
  這樣可以避免inetd.conf文件的任何改變(意外或是別的原因)。一個有i屬性的文件是不能被改動的:不能刪除或重命名,不能創建這個文件的鏈接,不能往這個文件裏寫數據。只有系統管理員才能設置和清除這個屬性。如果要改變inetd.conf文件,你必須先清除這個不允許改變的標誌:  
  [root@deep]# chattr -i /etc/inetd.conf  
  但是對於諸如sendmail,named,www等服務,由於它們不象finger,telnet等服務,在請求到來時由inet守護進程啓動相應的進程提供服務,而是在系統啓動時,作爲守護進程運行的。而對於redhat linux,提供了一個linuxconfig命令,可以通過它在圖形界面下交互式地設置是否在啓動時運行相關服務。也可以通過命令來設置是否啓動時啓動某個服務,如:[root@deep]# chkconfig –level 35 named off  
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章