1. 程式人生 > >2018-1-24 Linux學習筆記[難]

2018-1-24 Linux學習筆記[難]

www. scripts 過濾 計數 linu 學習 網卡 -s linux網絡相關

10.11 Linux網絡相關
  • ifconfig命令用於查看網ip(若沒有該命令, 則先安裝下net-tools包, yum install net-tools)
  • 重啟某一個網卡(例如網卡ens33):
    ifdown ens33; ifup ens33
    ifdown ens33 ---->停掉網卡
    ifup ens33 ---->啟動網卡
    註: 如果遠程登錄服務器,當使用ifdown ens33 這個命令的時候,很有可能後面的命令ifup ens33 不會被運行,這樣導致我們斷網而無法連接服務器,所以請盡量使用 service network restart 這個命令來重啟網卡。
  • 設定虛擬網卡ens33:1
    需要修改配置文件/etc/sysconfig/network-scripts/ifcfg-ens33
  • 查看網卡連接狀態
    mii-tool 網卡名 ---->查看網卡是否連接
    ethtool 網卡名 ---->查看網卡是否連接
  • 更改主機名
    hostnamectl set-hostname testlinux ---->更改主機名(主機名配置文件/etc/hostname)
  • 設置DNS
    DNS配置文件 /etc/resolv.conf
  • 臨時解析某個域名也可用/etc/hosts文件,但需要手動在裏面添加IP+域名這些內容:
    [root@localhost ~]# vim /etc/hosts
    127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
    ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
    192.168.1.111 www.baidu.com

10.12 firewalld和netfilter

  • Selinux是Redhat/CentOS系統特有的安全機制。但是因為這個東西限制太多,所以一般都把selinux關閉,以免引起不必要的麻煩。Selinux默認狀態為 enforcing,可使用 getenforce 命令獲得當前selinux的狀態.關閉selinux的方法為:
    selinux臨時關閉 setenforce 0
    selinux永久關閉 vi /etc/selinux/config中設置SELINUX=disabled(需重啟)
  • centos 防火墻
    centos7之前版本使用netfilte防火墻(使用iptables保存防火墻規則)
    centos7開始使用firewalld防火墻
  • centos7中關閉firewalld和開啟netfilter的方法:
    systemctl stop firewalld ---->停止firewalld服務
    systemctl disable firewalld ---->禁用firewalld服務啟動
    yum install -y iptables-services ---->安裝iptables-services包
    systemctl enable iptables ---->啟用iptables服務
    systemcal start iptables ---->啟動iptables服務

10.13 netfilter5表5鏈介紹

  • filter表用於過濾包,是系統預設的表.最常用的表有INPUT,FORWARD,OUTPUT三個鏈. INPUT作用於進入本機的包;OUTPUT作用於本機送出的包;FORWARD作用於那些跟本機無關的包.
    nat表用於網絡地址轉換,有PREROUTING,OUTPUT,POSTROUTING三個鏈.PREROUTING 鏈的作用是在包剛剛到達防火墻時改變它的目的地址,如果需要的話. OUTPUT鏈改變本地產生的包的目的地址. POSTROUTING鏈在包就要離開防火墻之前改變其源地址.
  • managle表用於給數據包做標記,幾乎用不到
  • raw表可以實現不追蹤某些數據包,也很少用到
  • security表在centos7開始才有,用於強制訪問控制(MAC)的網絡規則,也很少用到.
    擴展參考文章:
    http://www.cnblogs.com/metoy/p/4320813.html

10.14 iptables語法

  • 查看iptables規則:
    iptables -nvL
  • 清空規則:
    iptables -F
  • 把計數器清零:
    iptables -Z
  • 保存規則:
    service iptables save
    iptables規則存放在/etc/sysconfig/iptables
  • iptables -t nat //其中t指定對表nat操作之意,不加-t默認針對表filter來操作
  • 增加一條規則:
    iptables -A INPUT -s 192.168.188.1 -p tcp --sport 1234 -d 192.168.188.128 --dport 80 -j DROP
  • 插入一條規則:
    iptables -I INPUT -s 192.168.1.0/24 -i eth0 -j ACCEPT
  • 刪除一條規則:
    iptables -D INPUT -s 192.168.1.0/24 -i eth0 -j ACCEPT
  • 有時服務器上iptables過多了,想刪除某一條規則時,又不容易掌握當時創建時的規則,此時可先用如下命令獲得該規則的num(比如為1)
    iptables -nvL --line-numbers
    然後再使用如下命令刪除它:
    iptables -D INPUT 1
  • iptables還有一個選項經常用到, -P(大寫)選項,表示預設策略,用法如下:
    iptables -P INPUT DROP
    -P後面跟鏈名,策略內容或者為DROP或者為ACCEPT,默認是ACCEPT。
    註意:如果你在連接遠程服務器,千萬不要隨便敲這個命令,因為一旦你敲完回車你就會斷掉連接.

備註:
iptables各個選項的作用:
-A/-D :增加/刪除一條規則;
-I :插入一條規則,其實跟-A的效果一樣;
-p :指定協議,可以是tcp,udp或者icmp;
-P:預設策略
--dport :跟-p一起使用,指定目標端口;
--sport :跟-p一起使用,指定源端口;
-s :指定源IP(可以是一個ip段);
-d :指定目的IP(可以是一個ip段);
-j :後跟動作,其中ACCEPT表示允許包,DROP表示丟掉包,REJECT表示拒絕包;
-i :指定網卡(不常用,但有時候能用到);

2018-1-24 Linux學習筆記[難]