首頁 > 軟體

CentOS6.x網路基礎及常用設定

2020-06-16 17:04:38
做實驗的時候,首先要關閉防火牆和selinux,然後設定好網絡卡資訊。
防火牆臨時關閉:iptables –F     
檢視防火牆狀態:iptables -L
防火牆永久關閉:/etc/init.d/iptables stop
                service iptables stop
selinux臨時關閉:setenforce 0
selinux永久關閉:sed –i“7s/enforcing/disabled/g”/etc/selinux/config
一、名詞解釋:
CDN 內容分發網路
DDOS 拒絕服務攻擊
1、地址的分類
  1)網路地址:網際網路協定地址(IP地址),IP地址工作在網路層
IP地址的分類:IPV4  IPv6
2)實體地址:實體地址(MAC地址)是每一個裝置的固定地址,MAC地址工作在鏈路層。
 
2、協定分類:
1、網路層協定:IP協定、ICMP協定、ARP協定等
  2、傳輸層協定:TCP、UDP等
  3、應用層協定:DHCP、DNS、FTP、SSH等
 
3、常見埠:
20  21  ftp服務  檔案共用
22      ssh 服務  安全遠端網路管理
23      telnet服務 
25      smtp 簡單郵件傳輸協定  發信
110      pop3 郵局協定  收信
80      www  網頁服務
3306    mysql 埠
53      DNS 埠
 
二、閘道器和路由設定
ifconfig eth0 要設定的IP地址  設定IP地址和子網掩碼(臨時生效)
例1:ifconfig eth0 192.168.115.102/24
例2:ifconfig eth0 192.168.115.102  netmask  255.255.255.0
例3(給網絡卡設定子網絡卡):ifconfig eth0:0 192.168.115.102
注意:子網絡卡IP不能和其他IP重複
 
網絡卡設定:
永久生效(修改組態檔):/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0 網絡卡名稱
HWADDR=00:0c:29:65:da:3e  網絡卡的Mac地址(可刪)
TYPE=Ethernet  網路型別(可刪)
UUID=836c05a4-e78a-424e-8b3b-05cb6c126438  網絡卡UUID(可刪)
ONBOOT=yes  開機是否自啟動
NM_CONTROLLED=yes 可忽略
BOOTPROTO=static  網絡卡獲取IP地址的方式
IPADDR=192.168.115.105  IP地址
NETMASK=255.255.255.0  子網掩碼
DNS2=8.8.8.8  DNS2
GATEWAY=192.168.115.2  閘道器
DNS1=114.114.114.114  DNS1
IPV6INIT=no
USERCTL=no
組態檔修改完成後需要重新啟動網路服務:
service network restart  重新啟動所有網路服務
ifup 網絡卡名 啟動指定某個網絡卡
ifdown 網絡卡名 關閉指定某個網絡卡
 
2、主機名設定
臨時修改主機名:hostname 主機名
永久修改主機名:/etc/sysconfig/network
HOSTNAME=主機名(修改這裡)

 
注意:區別 /etc/rc.d/rc.sysint 和 /etc/sysconfig/network
3、閘道器設定
 route -n 檢視系統中路由表資訊
臨時修改:
新增預設閘道器:route  add  default  gw  閘道器ip地址
刪除預設閘道器:route  del  default  gw  閘道器ip地址
指定新增路由:route  add  -net  連線的目標網段  gw  閘道器的IP地址
 

 
 
指定刪除路由:route  del  -net  網段
永久生效:
      修改閘道器組態檔:/etc/sysconfig/network-scripts/ifcfg-eth0
路由組態檔:/etc/rc.local
/etc/resolv.conf 儲存本機需要使用的DNS伺服器的IP地址
 
開啟路由轉發組態檔:/etc/sysctl.conf 進入其中將net.ipv4.ip_forward = 0修改為1之後用sysctl  -p重新整理一下組態檔即可

 
總結:
閘道器:沒有具體目標
路由:有具體目標,以及到達線路

 
 
上圖a、c、d為不同網段的電腦,現在需要通過b電腦的設定建立連線,那麼:
a和b連線的網絡卡在同一個網段。
b和c 連線的網絡卡在同一個網段
b和d 連線的網絡卡在同一個網段
 
實驗步驟:
(1):建立4個虛擬機器,讓它們分別在不同網段,都設定成橋接模式
(2):指定其中一個虛擬機器為路由器,並為這個虛擬機器建立三個網絡卡
(3):把組態檔/etc/sysconfig/network-scripts/ifcfg-eth0複製三份,分別為ifcfg-eth1  ifcfg-eth2  ifcfg-eth3
(4):分別進入ifcfg-eth1  ifcfg-eth2  ifcfg-eth3三個組態檔裡面修改網絡卡名、刪除Mac地址UUID、把三個網絡卡的IP地址修改成分別對應其他三台虛擬機器的網段
(5):把其他三台虛擬機器的閘道器分別修改成ifcfg-eth1  ifcfg-eth2  ifcfg-eth3的IP地址
(6):然後所有的虛擬機器都用service  network  restart重新啟動網絡卡,接著進入開啟路由轉發組態檔:/etc/sysctl.conf 將裡面的net.ipv4.ip_forward = 0修改為1之後用sysctl  -p重新整理一下組態檔
(7):使用虛擬機器ping  ip地址 互相實驗看能不能通
 
4、DNS設定
域名解析測試命令 nslookup
測試DNS域名解析
格式:nslookup  目標主機地址  DNS伺服器地址
 
DNS伺服器設定
/etc/sysconfig/network-scripts/ifcfg-eth0
/etc/resolv.conf 儲存本機需要使用的DNS伺服器的IP地址
nameserver  DNS地址
主機對映檔案:/etc/hosts
用於儲存主機名和ip地址的對映記錄
 
主機對映檔案和DNS伺服器的比較:
預設情況下,系統首先從hosts檔案查詢解析記錄
hosts檔案只對當前的主機有效
hosts檔案可減少DNS查詢過程,可加快存取速度
 
 
 
三、網路測試命令
(1)netstat  -tlun 檢視TCP和UDP監聽的埠
        -antp檢視所有TCP的連線並顯示PID號
      -a:顯示所有活動連線
-n:以數位形式顯示
-p:顯示進程資訊
-t:檢視TCP協定相關資訊
-u:檢視UDP協定相關資訊
 
(2)traceroute  測試從當前主機到目的主機之間經過的網路節點,用於追蹤封包在網路上的傳輸時的全部路徑,預設傳送封包大小為40位元組,預設使用UDP協定進行傳輸,返回值為ICMP
-l  使用ICMP協定進行測試,Linux中預設UDP
-p 3 指定測試時傳送的封包個數(即測試次數)
-n  以IP的方式進行連線測試,避開DNS的解析,減少延遲
特殊情況:
        當返回值中間出現******時,一般情況是中間節點防火牆封掉了ICMP的返回值。
        當返回值從中間到結束都是*******時,一般情況為目標伺服器拒絕接收UDP封包或禁止了ICMP的返回包
(3)ping 測試網路連通性
-i 指定間隔時間
-c 指定ping的次數
-s 指定封包的大小
(4)arp 地址解析協定,將IP解析成Mac
-a 檢視所有
-d  ip地址  刪除某條ARP記錄
-s  ip地址 MAC地址  係結ip地址
(5)nmap  網路探測命令
    -sP  探測某網段內有哪些主機是存活的
    -sT  探測某主機上開啟了哪些TCP埠
    -sS  同上,但是是安全掃描,被掃描主機將記錄很少的紀錄檔
    -O  掃描對方作業系統型別
 
四、遠端管理:
1、  Windows用VNC連線Linux
yum  -y  install  tigervnc  tigervnc-server
先安裝著兩個軟體
vncpasswd  設定密碼
vncserver  啟動服務
2、Linux用rdesktop連線Windows
  Linux必須安裝桌面
  yum  -y  install  rdesktop
  rdesktop  -f  -a  16  -u  windows使用者名稱  -p  windows密碼  Windows IP地址
      -f 是顯示全螢幕  -a  Linux色位16或32 
      -u 使用者名稱      -p  登入密碼
3、Linux用SSH連線Linux
SSH協定
為客戶機提供安全的Shell環境,用於遠端管理
預設埠:TCP 22
OpenSSH
服務名稱:sshd
伺服器端主程式:/usr/sbin/sshd
用戶端主程式:/usr/bin/ssh
伺服器端組態檔:/etc/ssh/sshd_config
用戶端組態檔:/etc/ssh/ssh_config
ssh連線需要用到兩個組態檔
(1)/etc/ssh/ssh_config 用戶端  (2)/etc/ssh/sshd _config 伺服器端
 

 
 SSH  遠端登入命令
  ssh  IP地址 登入Linux系統

 
 ssh  使用者名稱@IP地址  登入Linux系統

 
 指定埠:-p(小)
 
4、秘鑰對驗證
加密認證:RSA  DSA兩個都可使用
(1)在客戶機上執行ssh-keygen  -t  rsa 生成非對稱加密秘鑰對
      Enter file in which to save the key
      (/home/test/.ssh/id_rsa)詢問是否需要密碼驗證,不需要就直接回車

 
(2)在客戶機家目錄的.ssh/目錄下,將id_rsa.pub公鑰檔案上傳給服務機
 

 

 
(3)上傳完成後,要在服務機端的家目錄下建立一個 .ssh/ 的目錄,把id_rsa.pub改名為authorized_keys並剪下到家目錄下的.ssh/目錄裡面。
(4)編輯服務機端的/etc/ssh/sshd_config檔案,取消註釋
 

 
 
(5)、遠端傳輸工具
  (1)  scp  進行檔案的上傳和下載
    上傳格式:scp  本機檔案  使用者名稱@IP地址:目錄
    下載格式:scp  使用者名稱@IP地址:檔名  本地儲存位置
    指定埠:-P(大)
 
    (2)sftp  安全的ftp傳輸協定
      登入方法:sftp  使用者名稱@IP地址
      指定埠:-oPort=埠
      用sftp登入到伺服器端以後,操作伺服器端的命令和操作本機相同,如果想在登入???務端的同時操作本機,需要在命令前面加上l,例

 
如果想讓Windows也可以免密碼連線到Linux,需要用x-shell工具-新建使用者秘鑰生成向導生成一個秘鑰,然後將秘鑰複製到Linux伺服器端的authorized_keys 檔案裡面即可
 

 
直接下一步、下一步即可生成秘鑰,然後根據步驟操作

 
選擇屬性

 
複製裡面的秘鑰到Linux的authorized_keys 檔案裡面即可
 

 

 
(6)僅允許秘鑰對登入,禁止密碼登入
*確保啟用ssh公鑰認證功能,檢視/etc/ssh/sshd_config檔案,確保以下兩條yes :

 
*禁止密碼安全驗證,編輯/etc/ssh/sshd_config檔案,確保以下檔案出現在檔案中:

 

 
編輯這個檔案完成之後,需要重新啟動sshd服務:service sshd restart即可禁止密碼登入,只能用秘鑰對登入。
想讓其他使用者通過秘鑰登入,可以直接把可以登入的私鑰檔案傳給某個使用者即可。
注意:一定要保護好私鑰的安全性。
上面是秘鑰的詳細生成過程,下面介紹秘鑰對的快速生成:
(1)在客戶機上輸入命令:ssh-keygen  -t  rsa
(2)上傳公鑰到伺服器端:ssh-copy-id  伺服器端使用者名稱@IP地址
這樣即可快速生成並上傳,而且不用改名和提前建立.ssh目錄
 
TCP Wrappers(簡易防火牆)概述:
如果某個命令呼叫庫檔案libwarp.so ,那麼這個命令就可以被TCP Wrappers管理。
which 查詢某服務命令所在位置
ldd  查詢某命令呼叫的庫檔案

 
通過tcpd主程式對其他服務程式進行包裝
存取控制策略的組態檔
白名單(允許存取):/etc/hosts.allow
黑名單(拒絕存取):/etc/hosts.deny
 

 
白名單比黑名單優先順序高
設定存取控制策略
策略格式:服務列表:客戶機地址列表
服務列表
多個服務以逗號分隔,ALL 表示所有服務
客戶機地址列表
多個地址以逗號分隔,ALL表示所有地址

 

 
允許使用萬用字元 ? 和 *
網段地址,如 192.168.4.  或者 192.168.4.0/255.255.255.0
策略的應用順序:
先檢查hosts.allow,匹配即停止(即允許)
否則再檢查hosts.deny,匹配即停止(即拒絕)
若兩個檔案中均無匹配策略,則預設允許存取

IT145.com E-mail:sddin#qq.com