天天看點

linux日常維護(網絡相關,防火牆,netfirter介紹,netfirter文法)

1.linux網絡相關

ifconfig 檢視網卡ip (centos6是預設有的,centos7裡沒有,需要下載下傳  yum install net-tloos)

關閉網卡:     ifdown +網卡    (關閉後沒有ip)

打開網卡      ifup  +網卡

重新開機指定的網卡。如果網卡正在遠端連接配接,不要直接ifdown網卡,如果伺服器不在身邊,過程很繁瑣,

應該執行 ifdown +網卡 && ifup +網卡

設定一個虛拟網卡的步驟:

1.到網卡配置目錄

[root@abc ~]# cd /etc/sysconfig/network-scripts/

2.拷貝真實的網卡,注意改名:

[root@abc network-scripts]# cp ifcfg-ens33 ifcfg-ens33\:0

3.編輯虛拟網卡配置檔案:(需要改以下配置)

NAME=ens33:0

DEVICE=ens33:0

IPADDR=192.168.52.50

去掉dns和網關

4.重新啟動服務,也可以重新啟動網卡 

ifdown ens33 && ifup ens33

mii-tool +網卡名字   看看是否為link ok

也可以用ethtool +網卡名  檢視最後一行link detected是否為yes

修改hostname

永久修改指令

[root@abc ~]# hostnamectl set-hostname + 自定義名字

退出目前環境從新登陸即可檢視,或者直接檢視/etc/hostname

[root@abc ~]# cat /etc/hostname 

litongyao

dns配置檔案

[root@abc network-scripts]# cat /etc/resolv.conf

# Generated by NetworkManager

search abc.com

nameserver 119.29.29.29              (是由網卡配置檔案裡來的)

/etc/hosts          

ip +    域名(可以是多個域名,如果是多個ip的話。以靠檔案後的一個為準)

2.linux防火牆

selinux臨時關閉 

getenforce    檢視Linux關閉或打開 

setenforce 0

 ##設定SELinux 成為permissive模式,遇到需要阻斷的時候,不會真的阻斷,而是會提醒并記錄

selinux 1

 ##設定SELinux 成為enforcing模式,打開selinux

永久關閉

[root@abc network-scripts]# vim /etc/selinux/config

SELINUX=disabled

另外一個防火牆。centos7之前的版本使用netfilter,centos7的時候使用firewalld 内部機制都是-->iptables

一般都處于關閉狀态,不會有太大的安全隐患。打開會增加我們的營運成本。在centos7上也可以運作netfilter,需要關閉firewalld并讓它開機不啟動。

[root@abc network-scripts]# systemctl disable firewalld

Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.

Removed symlink /etc/systemd/system/basic.target.wants/firewalld.service.

[root@abc network-scripts]# systemctl stop firewalld

然後安裝netfilter

[root@abc network-scripts]# yum install -y iptables-services

打開netfilter

[root@abc ~]# systemctl start iptables

3.

netfilter的5個表,

(一)filter表用于過濾包,包含了三個内置鍊,

INPUT            資料包進來本機的時候要經過的鍊

FORWARD          目标位址不是本機的話,要經過的鍊

OUTPUT           在本機的包出去之前要經過的鍊

(二)nat表用于網絡位址轉換,也包含了三個鍊。()

PREROUTING        進來的一刻更改資料包

OUTPUT           在本機的包出去之前要經過的鍊

PUSTROUTING        出去的一刻更改資料包

(三)mangle表 用于給資料包做标記,幾乎用不到

(四)raw表可以實作不追蹤某些資料包

(五)security在centos6中沒有,用于強制通路控制(MAC)的網絡規則

iptables傳輸資料包的過程

① 當一個資料包進入網卡時,它首先進入PREROUTING鍊,核心根據資料包目的IP判斷是否需要轉送出去。 

② 如果資料包就是進入本機的,它就會沿着圖向下移動,到達INPUT鍊。資料包到了INPUT鍊後,任何程序都會收到它。本機上運作的程式可以發送資料包,這些資料包會經過OUTPUT鍊,然後到達POSTROUTING鍊輸出。 

③ 如果資料包是要轉發出去的,且核心允許轉發,資料包就會如圖所示向右移動,經過FORWARD鍊,然後到達POSTROUTING鍊輸出。

linux日常維護(網絡相關,防火牆,netfirter介紹,netfirter文法)

4.filter介紹

[root@abc ~]# iptables -nvL      (檢視iptable規則)

預設儲存規則在/etc/sysconfig/iptables檔案下儲存

[root@abc ~]# iptables -F         (清空規則,但是并不會儲存在檔案裡,重新開機服務後規則又都回來了)

[root@abc ~]# service iptables save   (儲存新規則到檔案裡)

iptables -nvL -t //指定表          (檢視指定表的規則,如果不指定表,則預設是filter表)

iptables -Z 可以把計數器清零        (可以把計數器清零)

iptables -nvL --line-number       顯示規則的序列号(删除規則時直接加序列号即可,不用敲全部指令)

-A   增加規則到最後面  (一般而言,最後一條規則用于丢棄(DROP)所有資料包。)

-I   把規則插入到最前面 (過濾時優先過濾最前面的)

-D   删除規則

-P   預設的規則

-s   源位址,可以是ip位址,網絡位址,主機名

-d   目标位址

-j   執行目标

-i   輸入接口,指定了處理那個接口的資料包(-i eth0 指定經由eth0進入的資料包)!-i eth0 處理除 eth0以外的資料包

-o   輸出接口,(和輸入接口規則相同) 

-p   指定規則,是tcp還是udp,如果不指定,則預設是all

--sport 源端口 可以指定端口号,或者端口名稱,例如“-sport 22”“-sport ssh”

--dport 目的端口

DROP和REJECT都是把IP封掉,差別是:

DROP是資料包過來後看都不看直接扔掉

REJECT是資料包過來後看一下,然後禮貌的告訴你,對不起你不能進入

ACCEPT  允許進入

本文轉自 小新銳 51CTO部落格,原文連結:http://blog.51cto.com/13407306/2045840,如需轉載請自行聯系原作者

繼續閱讀