1. 程式人生 > >Linux學習-1025(網路、防火牆)

Linux學習-1025(網路、防火牆)

10.11 Linux網路相關

10.12 firewalld和netfilter

10.13 netfilter5表5鏈介

10.14 iptables語法

 

一、Linux網路相關

  • 檢視網絡卡ip命令:ifconfig

        ifconfig命令在centos6中是預設安裝的,centos7需要進行安裝:

        yum install -y net-tools

        網絡卡如果down掉,ifconfig是不顯示的,如果要檢視加個-a選項

        

  • 關閉/啟動網絡卡

        有的時候修改了網絡卡引數需要關閉重啟

        ifdown  網絡卡名  :關閉網絡卡

        ifup 網絡卡名: 啟動網絡卡

        如果是遠端操作,網絡卡關閉就無法連線操作了。這種情況可以使用以下方法:

        ifdown 網絡卡名 && ifup 網絡卡名

  • 設定虛擬網絡卡

        cp /etc/sysconfig/network-scripts/原網絡卡 虛擬網絡卡

        把現有的網絡卡複製一份,重新命名,並修改name, device, ip這三個引數。

        ifdown 網絡卡名 && ifup 網絡卡名 使用這種方法重啟即可。

  • 檢視網絡卡連線狀態

        mii-tool 網絡卡名

        

  •   修改hostname

           hostnamectl set-hostname 新主機名

           檢視hostname名命令:hostname

            

  • DNS配置檔案

         /etc/resolv.conf 如果臨時修改DNS可以修改這個檔案,但是重啟後會被網絡卡配置檔案的內容所覆蓋

  •  hosts檔案

        hosts檔案windows和linux都有,用來指定域名解析ip。只能做本機使用

        

        

二、firewalld和netfilter

    1、SELinux

        臨時關閉SELinux

        setenforce 0

        

        永久關閉

        編輯配置/etc/selinux/config,SELINUX=enforcing改為disabled  ,儲存重啟系統

        

        檢視SELinux狀態

        getenforce

        

    2、netfilter/firewalld

        netfileter是centos6中使用的防火牆,centos7把netfileter升級為了firewalld。

        由於目前使用時centos7,想要使用netfileter可以把firewalld先關閉

  • 關閉firewalld

        systemctl disable firewalld  //禁止啟動

        systemctl stop firewalld  //停止防火牆服務

  • 開啟netfilter

        先安裝iptables工具包:

        yum install -y iptables-services

        //啟動iptables服務

        systemctl enable iptables

        systemctl start iptables

        

  • 開啟後檢視iptable規則

        iptables -nvL

        

 

三、netfilter5表5鏈介

    netfilter五表:
        filter:包過濾,用於防火牆規則。有INPUT、FORWARD、OUTPUT三個鏈
        nat:地址轉換,用於閘道器路由器。有PREROUTING、OUTPUT、POSTROUTING三個鏈
        mangle:用於給資料包打標記,然後根據標記去操作那些表。(不常用)
        不常用的表:raw、security 

   netfilter五鏈:

         PREROUTING:資料包進入路由表之前
        INPUT:通過路由表後目的地為本機
        FORWARD:通過路由表後,目的地不為本機
        OUTPUT:由本機產生,向外發出
        POSTROUTING:傳送到網絡卡介面之前

        參考文章:

        http://www.cnblogs.com/metoy/p/4320813.html

 

四、iptables語法

  • 檢視iptables規則:

    iptables -nvL

    

  • 清除iptables規則:

    iptables -F

    

    清空後未儲存規則配置檔案(/etc/sysconfig/iptables),服務重啟或系統重啟後,防火牆服務會重新載入規則配置檔案中的原有規則。

  • 儲存規則

        service iptables save

  • 重啟

        service iptables restart

  •  檢視nat表

        iptables -t nat -nvL

  • 計數器清零  

        iptables -Z

  • 新增iptables規則

        iptables -A INPUT -s 192.168.1.19 -p tcp --sport 8888 -d 192.168.1.12 --dport 80 -i ens33 -j DROP

        解釋: 增加一條iptables規則:input鏈,源IP:192.168.1.19,TCP協議,源埠:8888,目的IP:192.168.1.12,目的埠:80,執行:DROP(丟掉)。

        和DROP類似的還有REJECT,不同的是:接受資料包後REJECT會進行檢視,然後丟掉,DROP則是直接丟掉。一般DROP比較常用。

  • 刪除iptables規則

        和新增規則類似,把-A改成-D

        iptables -D INPUT -s 192.168.188.1 -p tcp --sport 1234 -d 192.168.188.128 --dport 80 -i ens33 -j DROP

    
       也可以根據查詢規則號進行刪除:

        查詢

        iptables -nvL --line-number

        刪除

         iptables -D INPUT 編號

  • 插入一條規則

        iptables -I INPUT -s 192.168.1.0/24 -i eth0 -j ACCEPT

        插入一條來源網段為 192.168.1.0/24,網絡卡為eth0,執行放行操作

  • 修改預設規則

        一般不要修改預設規則,有可能導致遠端終端無法連線

        修改:

        iptables -P INPUT DROP

        恢復:

        ptables -P OUTPUT ACCEPT