Linux網絡/firewalld和netfilter/netfilter/iptables語法

為什么80%的碼農都做不了架構師?>>> ??hot3.png

linux網絡相關

查看網卡網絡信息

ifconfig 命令查看網卡網絡信息,比如ip、網關、子網掩碼等,但是安裝centos7的版本或者某些未知原因,此命令提示找不到,我們可以使用Yum安裝:

yum install -y net-tools

使用 ifconfig 命令查看

ifconfig

選項:

  • a : 顯示包含因為神奇原因掛掉的網卡
ifconfig -a

或者某些時候我們也可以使用 ** ip add ** 命令來查看信息,實際比較還是覺得ifconfig命令顯示的清楚一點。

ip add

重啟某個指定網卡(ifdown表示關閉某網卡,ifup表示啟用某網卡)

ifdown ens33 ; ifup ens33 #第1種方式
ifdown ens33 && ifup ensss #第2種方式

由于使用遠程登錄,所以不建議單獨使用** ifdown **命令,至于為什么要重啟某網卡而不是重啟服務呢,因為假如你只修改了此網卡的部分信息,不想直接重啟服務影響其他網卡的使用,所以可以 **ifdown **和 **ifup **結合使用表示重啟;

設置虛擬網卡

1.進入網卡配置文件目錄

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

2拷貝文件當前ens33網卡配置文件

[root@yolks1 network-scripts]# cp ifcfg-ens33 ifcfg-ens33\:1 #前面的右斜杠表示脫義冒號

3.編輯新復制的網卡配置文件:ifcfg-ens33:1

vim ifcfg-ens33:1

修改以下標注的地方,刪除掉DNS和GATEWAY所在的行

4.重啟 ** dns33 ** 網卡

[root@yolks1 network-scripts]# ifdown ens33 && ifup ens33
成功斷開設備 'ens33'。
連接已成功激活(D-Bus 活動路徑:/org/freedesktop/NetworkManager/ActiveConnection/5)

5.** ifconfig ** 查看新配置的網卡信息

6.測試本地能不能ping通虛擬網卡

查看網卡是否連接

1.mii-tool 命令如下:

[root@yolks1 network-scripts]# mii-tool ens33:1
ens33:1: negotiated 1000baseT-FD flow-control, link ok

判斷輸出的是否是** link ok** 如果是,則說明網絡連接暢通無誤;如果輸出的是** no link **則表示網卡沒連接;

2.如果上面的 mii-tool 執行提示找不到,也可以使用** ethtool 網卡名稱 **來查看結果的最后一行 **Link detected **是否是 yes 或者是 ** no ** 來表示網卡連接是否正常

設置主機名稱

hostnamectl set-hostname new-hostname

修改之后需要重新連接即可看到變化;

修改DNS地址

DNS配置文件路徑 : /etc/resolv.conf

[root@yolks-001 ~]# cat /etc/resolv.conf #查看當前dns配置
# Generated by NetworkManager
nameserver 119.29.29.29
[root@yolks-001 ~]# vi !$
vi /etc/resolv.conf #編輯并添加新的一行nameserver 8.8.8.8
[root@yolks-001 ~]# cat /etc/resolv.conf #再次查看新的dns配置
# Generated by NetworkManager
nameserver 119.29.29.29
nameserver 8.8.8.8

但是要知道編輯上面此文件保存dns的話是臨時的,永久保存的話直接修改 **/etc/sysconfig/network-scripts/ifcfg-ens33 **添加DNS紀錄即可;

修改host改變本地解析

修改 /etc/hosts 文件,添加一行新的解析

測試ping,顯示為修改的配置ip,并且只有本機才會生效

hosts文件格式很簡單,注意以下幾點;

  • 一個ip后面可以跟多個域名,可以是幾十個甚至上百個;
  • 每一行只能有一個ip,也就是說一個域名不能對應多個ip;
  • 如果有多行中出現相同的域名(對應的ip不一樣),就會按最前面出現的記錄來解析

firewalld和netfilter

1.SELinux是linux系統特有的安全機制。因為這種機制的限制太多,配置也繁瑣,所以幾乎沒有人真正的應用它,安裝完系統我們一般都把SELinux關閉,以免引起不必要的麻煩。

臨時關閉:

setenforce 0

永久關閉:

vim /etc/selinux/config #編輯此文件

修改 SELINUX=disabled,重啟機器即可

查看 SELINUX 狀態:

[root@yolks-001 ~]# getenforce
Disabled

2.關系圖如下:

查看centos版本

[root@yolks-001 ~]# cat /etc/redhat-release 
CentOS Linux release 7.4.1708 (Core)

在centos7上關閉firewalld開啟netfilter

1.關閉firewalld

[root@yolks-001 ~]# systemctl disable firewalld
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.

2.停止firewalld

[root@yolks-001 ~]# systemctl stop firewalld

3.yum安裝iptables工具

yum install -y iptables-services

4.讓iptables服務開機啟動

[root@yolks-001 ~]# systemctl enable iptables
Created symlink from /etc/systemd/system/basic.target.wants/iptables.service to /usr/lib/systemd/system/iptables.service.

5.開啟iptables服務

[root@yolks-001 ~]# systemctl start iptables

6.使用iptables查看默認規則

iptables -nvL

netfilter5表5鏈介紹

netfilter的5個表

  • filter:表主要用于過濾包,是系統預設的表,該表內建3個鏈:INPUTOUTPUT以及FORWARDINPUT鏈作用于進入本機的包,OUTPUT鏈作用于本機送出的包,FORWARD鏈作用于那些跟本機無關的包。
  • nat:表主要用于網絡地址轉換,同樣也有3個鏈,PREROUTING鏈的作用是在包剛剛到達防火墻時改變它的目的地址,OUTPUT鏈的作用是改變本地產生的包的目的地址,POSTROUTING鏈的作用是在包即將離開防火墻時改變其源地址。
  • mangle:表主要用于給數據包做標記,然后根據標記去操作相應的包。
  • raw:表可以實現不追蹤數據包做標記,默認系統的數據包都會被追蹤,但追蹤勢必消耗一定的資源,所以可以用raw表來指定某些端口的包不被追蹤。
  • security:表在Centos6里是沒有的,它用于強制訪問控制(MAC)的網絡規則。

netfilter的5個鏈

  • PREROUTING:數據包進入路由表之前
  • INPUT:通過路由表后目的地為本機
  • FORWARD:通過路由表后,目的地不為本機
  • OUTPUT:由本機產生,向外轉發
  • POSTROUTING:發送到網卡接口之前

參考圖

圖片來源于Askz的博客

圖片來源于Askz的博客

iptables語法

1.查看iptables默認規則配置文件:

cat /etc/sysconfig/iptables

2.查看iptables默認規則:

 iptables -nvL

3.保存iptables規則(當前規則,保存到配置文件):

service iptables save

4.清空iptables規則:

iptables -F

5.重啟iptables規則

service iptables restart

6.查看指定表的規則

iptables -t nat -nvL

7.清空表的計數器

iptables -Z

8.如果不加-t選項則默認的表為fliter表,常用的選項如下:

  • -A/-D:表示增加/刪除一條規則
  • -I:表示插入一條規則其實效果跟-A一樣
  • -p:表示指定協議,可以是tcp、udp或者icmp
  • --dport:跟-p一起使用,表示指定目標端口
  • --sport:跟=p一起使用,表示指定源端口
  • --line-number:顯示規則的行號
  • -s:表示指定源IP(可以是一個IP段)
  • -d:表示指定目的IP(可以是一個IP段)
  • -j:后面跟動作,其中ACCEPT表示允許包,DROP表示丟掉包,REJECT表示拒絕包
  • -i:表示指定網卡

拓展

selinux教程

selinux pdf電子書

轉載于:https://my.oschina.net/yolks/blog/1845624

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/254104.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/254104.shtml
英文地址,請注明出處:http://en.pswp.cn/news/254104.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Chrome開發者工具詳解(4)-Profiles面板

Chrome開發者工具詳解(4)-Profiles面板 如果上篇中的Timeline面板所提供的信息不能滿足你的要求,你可以使用Profiles面板,利用這個面板你可以追蹤網頁程序的內存泄漏問題,進一步提升程序的JavaScript執行性能。 概述 當前使用的Chrome最新版為…

etcd raft library設計原理和使用

早在2013年11月份,在raft論文還只能在網上下載到草稿版時,我曾經寫過一篇blog對其進行簡要分析。4年過去了,各種raft協議的講解鋪天蓋地,raft也確實得到了廣泛的應用。其中最知名的應用莫過于etcd。etcd將raft協議本身實現為一個l…

halcon通過點擬合圓形,鼠標選點

原圖 源碼 read_image (Image, 0.bmp) dev_clear_window () dev_open_window_fit_image (Image, 0, 0, -1, -1, WindowHandle) dev_display (Image)binary_threshold (Image, Region, max_separability, dark, UsedThreshold) connection (Region, ConnectedRegions) select_s…

JDBC事務--軟件開發三層架構--ThreadLocal

JDBC事務--軟件開發三層架構--ThreadLocal 一.JDBC事務 1.概述: 事務是指邏輯上的一組操作!這一組操作,通常認為是一個整體,不可拆分! 特點:同生共死;事務內的這一組操作要么全部成功,要么全部失敗! 作用:保證邏輯操作的完整性,安全性! 2.使用(3種方式) 1)面向數據庫,使用S…

LINUX多播編程

一.單播,廣播和多播 1.單播用于兩個主機之間的端對端通信,廣播用于一個主機對整個局域網上所有主機上的數據通信。單播和廣播是兩個極端,要么對一個主機進行通信,要么對整個局域網上的主機進行通信。實際情況下,經常需…

cas單點登錄搭建

Cas Server下載:http://developer.jasig.org/cas/ Cas Client下載:http://developer.jasig.org/cas-clients/ 測試環境: jdk:java version "1.8.0_60" tomcat:apache-tomcat-7.0.65 mysql:mysql5…

新CIO:Mark Schwartz認為的領先IT

美國公民及移民服務局前任CIO,現任AWS企業戰略師Mark Schwartz在倫敦舉行的DevOps企業峰會上介紹了什么是領先的IT。\\Schwartz介紹說,老舊、傳統的模型將業務和IT完全分開,他又提出了一種新的模型,在這種模型中,CIO擔…

689D Magic Odd Square 奇數幻方

1 奇數階幻方構造法 (1) 將1放在第一行中間一列; (2) 從2開始直到nn止各數依次按下列規則存放:按 45方向行走,向右上,即每一個數存放的行比前一個數的行數減1,列數加1 (3) 如果行列范圍超出矩陣范圍,則回繞。例如1在第…

Java單例的常見形式

2019獨角獸企業重金招聘Python工程師標準>>> Java單例的常見形式 本文目的:總結Java中的單例模式 本文定位:學習筆記 學習過程記錄,加深理解,便于回顧。也希望能給學習的同學一些靈感 一、非延遲加載單例類 public cla…

運動控制卡的基類函數與實現例子

基類 namespace MotionCardDll {public abstract class IMotionCard{public Int32 m_Mode;public Int32 m_BoardId;//Card 號public Int32 m_Card_name;public Int32 m_StartAxisID

U-Boot啟動過程完全分析

1.1 U-Boot 工作過程 U-Boot啟動內核的過程可以分為兩個階段,兩個階段的功能如下: (1)第一階段的功能 硬件設備初始化 加載U-Boot第二階段代碼到RAM空間 設置好棧 跳轉到第二階段代碼入口 (2&#x…

CJOJ 2171 火車站開飯店(樹型動態規劃)

CJOJ 2171 火車站開飯店(樹型動態規劃) Description 政府邀請了你在火車站開飯店,但不允許同時在兩個相連的火車站開。任意兩個火車站有且只有一條路徑,每個火車站最多有 50 個和它相連接的火車站。 告訴你每個火車站的利潤&#…

JavaWeb總結(十五)

AJAX(Asynchronous JavaScript and XML(異步的 JavaScript 和 XML)) AJAX的作用是什么? 在無需重新加載整個網頁的情況下,能夠更新部分網頁的技術 是一種用于創建快速動態網頁的技術 通過在后臺與服務器進行…

工業相機基類與實現

基類 namespace Cameron {//相機參數public struct CamPara{public int DeviceID; //設備描述public string Name;public int WorkMode; //工作類型,0為連續模式,1為觸發模式public float Expours

物聯網技術周報第 143 期: Unity 3D 和 Arduino 打造虛擬現實飛行器

新聞 \\\\t《西門子、阿里云簽約助力中國工業物聯網發展》德國工業集團西門子和中國阿里巴巴集團旗下的云計算公司阿里云9日在柏林簽署備忘錄,共同推進中國工業物聯網發展。根據備忘錄內容,西門子和阿里云將發揮各自技術和行業優勢&#xff…

不同平臺下 sleep區別用法

應用程序&#xff1a; #include <syswait.h> usleep(n) //n微秒 Sleep&#xff08;n&#xff09;//n毫秒 sleep&#xff08;n&#xff09;//n秒 驅動程序&#xff1a; #include <linux/delay.h> mdelay(n) //微秒milliseconds 其實現 #ifdef notdef #define mdelay…

各視頻、各音頻之間格式任意玩弄(圖文詳解)

寫在前面說的話 在這里&#xff0c;記錄下來&#xff0c;是為了方便以后偶爾所制作所需和你們前來的瀏覽學習。 學會&#xff0c;玩弄一些視頻和音頻的軟件&#xff0c;只有好處沒有害處。同時&#xff0c;也不需很多時間&#xff0c;練練手罷了。也是方便自己所用吧&#xff0…

oracle 如何查看日志?

2019獨角獸企業重金招聘Python工程師標準>>> Oracle日志查看一&#xff0e;Oracle日志的路徑&#xff1a;登錄&#xff1a;sqlplus "/as sysdba"查看路徑&#xff1a;SQL> select * from v$logfile;SQL> select * from v$logfile;(#日志文件路徑)二…

回歸_英國酒精和香煙關系

sklearn實戰-乳腺癌細胞數據挖掘(博客主親自錄制視頻教程) https://study.163.com/course/introduction.htm?courseId1005269003&utm_campaigncommission&utm_sourcecp-400000000398149&utm_mediumshare 數據統計分析聯系:&#xff31;&#xff31;&#xff1a;&a…

C# ini文件讀寫函數

namespace Tools {class IniOperate{[DllImport("kernel32")]private static extern int GetPrivateProfileString(string section, string key,