1. 程式人生 > >Day11-1 日常運維 2

Day11-1 日常運維 2

網絡數 限制 保存 地址轉換 ble 強制訪問控制 start 51cto 路徑

  • linux的防火墻-netfilter
    setenforce 0 臨時關閉selinux
    /etc/selinux/config 配置文件
    getenforce 查看防火墻狀態
    netfilter centos6前的防火墻名;firewalld centos7防火墻名
    關閉firewalld
    技術分享圖片
    yum install -y iptables-services
    啟用netfilter iptables
    技術分享圖片
  • netfilter的5個表
    filter 用於過濾包,其中有三個鏈:INPUT(輸入) FORWARD(轉發) OUTPUT(輸出)
    nat 用於網絡地址轉換,即NAT表,有三個鏈:PREROUTONG(進入路由表前,經過此鏈後判斷是否是給主機的包,是則給到input,否則給到forward) OUTPUT(同上) POSTROUTING(接受forward和output給出的包,輸出)

    managle 用於給數據包做標記(少用到)
    raw 不追蹤某些數據包(少用到)
    security 用於強制訪問控制的網絡規則

    1. iptables語法
      iptables -nvL view the rule of iptables
      技術分享圖片
      /etc/sysconfig/iptables 規則保存路徑
      service iptables save 保存規則
      -F 清空規則
      -t 指定表
      -Z 把計數器清零
      -A 增加規則(排在後面)
      -s 指定來源ip
      -p 指定協議
      --sport 來源端口
      -d 指定目標ip
      --dport 目標端口
      -j 後接操作
      iptables -A INPUT -s [ipadd] -p tcp --sport 1234 -d [ipadd] --dport 80 -j DROP
      -I(大小的i) 插入規則(排在前面,在前面的先執行)
      -D 刪除規則
      iptables -nvL --line-number
      技術分享圖片
      iptables -D INPUT 5 刪除line number為5的INPUT表裏的規則
      -i 指定網卡
      -P 指定默認操作
      技術分享圖片

    iptables 規則備份和恢復
    service iptables save 會把規則保存到/etc/sysconfig/iptables
    iptables-save > [filename] 將iptables備份到某個文件
    iptables-restore > [filename] 將備份還原

    1. firewalld
      firewalld 默認有9個zone(自帶規則集)
      默認zone為public
      查看zone
      技術分享圖片
      技術分享圖片
      以下9個zone
      drop(丟棄):任何接受的網絡數據包都被丟棄,沒有任何恢復,僅能有發送出去的網絡連接(數據包不能進來,但是可以出去)
      block(限制):任何接受的網絡連接都被IPv4的icmp-host-prohibited信息和IPv6的icmp6-adm-prohibited信息所拒絕。(和drop相比,比較寬松一些,主要是為了針對icmp)
      piblic(公共):在公共區域內使用,不能相信網絡內其他計算機不會對你造成危害,只能接受經過選取的連接。
      external(外部):特別是為路由器啟用了偽裝功能的外部網,你不能信任來自網絡的其他計算,不能相信他們不會對你造成傷害,只能接受經過選擇的連接。
      dmz(非軍事區):用於你的非軍事區內的電腦,此區域可公開訪問,可以有限的進入你的內部網絡,僅僅接受經過選擇的連接。
      work(工作):用於工作區,你可以基本信任網絡內的其他電腦不會對你造成危害,僅僅接收經過選擇的連接。
      home(家庭):用於內部網絡,你可以基本上信任網絡內其他電腦不會對你造成危害,僅僅接收經過選擇的連接。
      internal(內部):用於內部網絡,你可以基本上信任網絡內其他電腦不會對你造成危害,僅僅接收經過選擇的連接。
      trusted(信任):可接受所有的網絡連接。
      firewall-cmd --set-default-zone=[zonename] 設定默認zone
      firewall-cmd --get-zone-of-interface=ens33 查指定網卡ens33
      firewall-cmd --zone=[zonename] --add-interface=lo 給指定網卡lo設置zone
      firewall-cmd --zone=[zonename] --change-interface=lo針對網卡lo更改zone
      firewall-cmd --zone=[zonename] --remove-interface=lo 針對網卡lo刪除zone
      firewall-cmd --get-active-zones 查看系統所有網卡所在的zone

    service 相當於端口,從屬於zone,即以zone的方式定義特定端口的安全等級
    firewall-cdm --get-services 查看所有service
    firewall-cdm --list-services 查看當前zone下有哪些service
    firewall-cdm --zone=[zonename] --add-service=http 把http增加到某個zone下
    firewall-cdm --zone=[zonename] --remove-service=http 把http從某個zone下移除
    /usr/lib/firewalld/zones zone的配置文件模板
    firewall-cdm --zone=[zonename] --add-service=http --permanent 更改配置文件,之後會在/etc/firewalldzones下生成配置文件
    firewall-cdm --reload 重新加載

    Day11-1 日常運維 2