文档章节

Linux网络,防火墙,netfilter,iptables语法

阿想
 阿想
发布于 2017/08/21 17:24
字数 1912
阅读 2
收藏 0
点赞 0
评论 0

10.11 Linux网络相关

10.12 firewalld和netfilter

10.13 netfilter5表5链介绍

10.14 iptables语法

扩展(selinux了解即可)

  1. selinux教程 http://os.51cto.com/art/201209/355490.htm
  2. selinux pdf电子书 http://pan.baidu.com/s/1jGGdExK

10.11 Linux网络相关

查看网卡信息

[root@axiang ~]# yum provides "/*/ifconfig"
[root@axiang-02 ~]# yum install -y net-tools ^C
[root@axiang-02 ~]# ifconfig -a
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.83.138  netmask 255.255.255.0  broadcast 192.168.83.255
        inet6 fe80::20c:29ff:fe18:95e9  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:18:95:e9  txqueuelen 1000  (Ethernet)
        RX packets 19800  bytes 23610097 (22.5 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9223  bytes 889247 (868.4 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1  (Local Loopback)
        RX packets 92  bytes 295860 (288.9 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 92  bytes 295860 (288.9 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0


  • ifconfig -a查看未启动网卡信息

如何启动/关闭网卡

  • 注意别把正在远程的网卡down了!
ifdown ens33 && ifup ens33   //慎用风险

**创建虚拟网卡 **

  1. 复制网卡文件
  2. 修改IP、名称(ens33:0)
  3. 删除DNS、网关
  4. 重启物理网卡
[root@axiang-03 ~]# cd /etc/sysconfig/network-scripts/
[root@axiang-03 network-scripts]# cp ifcfg-ens33 ifcfg-ens33:0
[root@axiang-03 network-scripts]# vim ifcfg-ens33:0
[root@axiang-03 network-scripts]# ifdown ens33 && ifup ens33
成功断开设备 'ens33'。
成功激活的连接(D-Bus 激活路径:/org/freedesktop/NetworkManager/ActiveConnection/3)
[root@axiang-03 network-scripts]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.83.139  netmask 255.255.255.0  broadcast 192.168.83.255
        inet6 fe80::20c:29ff:fec0:f76c  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:c0:f7:6c  txqueuelen 1000  (Ethernet)
        RX packets 7554  bytes 711123 (694.4 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 5411  bytes 681362 (665.3 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ens33:0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.83.149  netmask 255.255.255.0  broadcast 192.168.83.255
        ether 00:0c:29:c0:f7:6c  txqueuelen 1000  (Ethernet)

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1  (Local Loopback)
        RX packets 92  bytes 7564 (7.3 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 92  bytes 7564 (7.3 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0


windows ping一下

  • LVS keepalived会用到虚拟网卡

  • 查看网卡连接状态

    • mii-tool ens33
    • ethtool ens33
[root@axiang ~]# mii-tool ens33
ens33: negotiated 1000baseT-FD flow-control, link ok
[root@axiang ~]# ethtool ens33
Settings for ens33:
	Supported ports: [ TP ]
	Supported link modes:   10baseT/Half 10baseT/Full 
	                        100baseT/Half 100baseT/Full 
	                        1000baseT/Full 
	Supported pause frame use: No
	Supports auto-negotiation: Yes
	Advertised link modes:  10baseT/Half 10baseT/Full 
	                        100baseT/Half 100baseT/Full 
	                        1000baseT/Full 
	Advertised pause frame use: No
	Advertised auto-negotiation: Yes
	Speed: 1000Mb/s
	Duplex: Full
	Port: Twisted Pair
	PHYAD: 0
	Transceiver: internal
	Auto-negotiation: on
	MDI-X: off (auto)
	Supports Wake-on: d
	Wake-on: d
	Current message level: 0x00000007 (7)
			       drv probe link
	Link detected: yes  //看这里

  • 修改主机名
    • hostnamectl set-hostname xxx
[root@axiang ~]# hostnamectl set-hostname axiang-007
[root@axiang ~]# hostname
axiang.localdomain
[root@axiang ~]# bash
[root@axiang ~]# exit
exit
[root@axiang ~]# cat /etc/hostname
axiang-007
[root@axiang ~]# hostname
axiang.localdomain

  • DNS
    • DNS配置文件/etc/resolv.conf
[root@axiang ~]# cat /etc/resolv.conf 
# Generated by NetworkManager
nameserver 119.29.29.29

  • 更改网卡配置即可更改DNS配置文件,更改后需要重启网卡(ifdown/ifup)后生效,也可编辑‘/etc/resolv.conf’临时更改DNS配置,该办法在重启网卡后会被网卡配置文件中的DNS覆盖!

  • 访问自定义域名

    • /etc/hosts
[root@axiang-03 ~]# ping www.qq123.com
PING www.qq123.com (202.91.250.93) 56(84) bytes of data.
64 bytes from 202.91.250.93 (202.91.250.93): icmp_seq=1 ttl=128 time=60.9 ms
64 bytes from 202.91.250.93 (202.91.250.93): icmp_seq=2 ttl=128 time=66.1 ms
64 bytes from 202.91.250.93 (202.91.250.93): icmp_seq=3 ttl=128 time=61.3 ms
^C
--- www.qq123.com ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 60.960/62.821/66.127/2.361 ms
[root@axiang-03 ~]# vim /etc/hosts
[root@axiang-03 ~]# ping www.qq123.com
PING www.qq123.com (192.168.83.149) 56(84) bytes of data.
64 bytes from www.qq123.com (192.168.83.149): icmp_seq=1 ttl=64 time=0.061 ms
64 bytes from www.qq123.com (192.168.83.149): icmp_seq=2 ttl=64 time=0.108 ms
^C
--- www.qq123.com ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 999ms
rtt min/avg/max/mdev = 0.061/0.084/0.108/0.025 ms

  • 只在本机生效

10.12 firewalld和netfilter

  • selinux
    • 临时关闭 setenforce 0
    • 永久关闭 vi /etc/selinux/config
    • 状态查看 getenforce
[root@axiang ~]# vim /etc/selinux/config  	永久关闭需要重启
[root@axiang ~]# setenforce 0				临时停止
[root@axiang ~]# getenforce 				查看
Permissive									策略变为记录
[root@axiang ~]# reboot
...
Last login: Sat Jul 15 11:36:05 2017 from 192.168.83.1
[root@axiang ~]# getenforce 
Disabled									重启后变为关闭
[root@axiang ~]# 

  • 注意不要改SELINUXTYPE=targeted!否则启动不了
  • 很多服务受限与Selinux,一般会关闭

NetFilter

  • Centos7中默认将原来(centos5/6)的防火墙netfilter升级为了firewalld。都使用iptables工具管理, 现在大量公司仍然使用netfilter。

  • 关闭firewalld、开启netfilter

[root@axiang-03 ~]# systemctl stop firewalld
[root@axiang-03 ~]# systemctl disable firewalld
[root@axiang-03 ~]# yum install -y iptables-services  
[root@axiang-03 ~]# systemctl enable iptables
[root@axiang-03 ~]# systemctl start iptables
[root@axiang-03 ~]# iptables -nvL
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
   37  2588 ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            state RELATED,ESTABLISHED
    0     0 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0           
    0     0 ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0           
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            state NEW tcp dpt:22
    0     0 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            reject-with icmp-host-prohibited

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            reject-with icmp-host-prohibited

Chain OUTPUT (policy ACCEPT 25 packets, 2484 bytes)
 pkts bytes target     prot opt in     out     source               destination         
[root@axiang-03 ~]# iptables -F  //关闭默认规则方便测试
[root@axiang-03 ~]# service iptables save  //保存规则,重启依然有效
iptables: Saving firewall rules to /etc/sysconfig/iptables:[  确定  ]
  • 可以看到保存规则的提示:/etc/sysconfig/iptables也可以查看规则
  • iptables是工具。防火墙叫netfilter
  • 虽然默认有iptables命令(工具),但并没有安装iptables服务,需要安装

10.13 netfilter 5表及链的介绍

netfilter的5表5链

  • filter表,最常用,作用是滤包,有三个链:
    • INPUT 进入本机的包
    • FORWARD 无关本机的包
    • OUTPUT 本机送出的包
[root@axiang-03 ~]# iptables -nvL
Chain INPUT (policy ACCEPT 378 packets, 32227 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 389 packets, 34744 bytes)
 pkts bytes target     prot opt in     out     source               destination         


  • nat表,用于网络地址转换
[root@axiang-03 ~]# iptables -t nat -nvL
Chain PREROUTING (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

  • managle表用于给数据包做标记

  • raw表可以实现不追踪某些数据包

  • security表在centos6中并没有,用于强制访问控制(MAC)的网络规则

  • 参考文章 http://www.cnblogs.com/metoy/p/4320813.html

  • 数据包流向与netfilter的5个链

    • PREROUTING:数据包进入路由表之前
    • INPUT:通过路由表后目的地为本机
    • FORWARD:通过路由表后,目的地不为本机
    • OUTPUT:由本机产生,向外发出
    • POSTROUTING:发送到网卡接口之前

10.14 iptables语法

  • 查看filter/NAT规则
[root@axiang-03 ~]# iptables -nvL ^C
[root@axiang-03 ~]# iptables -t nat -nvL

  • 清空规则,清空计数器,存规则,重启服务,存放位置
[root@axiang-03 ~]# iptables -F 
[root@axiang-03 ~]# iptables -Z
[root@axiang-03 ~]# service iptables save 
[root@axiang-03 ~]# service iptables restart 
[root@axiang-03 ~]# /etc/sysconfig/iptables

  • iptables -Z 常用于监控脚本判断

  • TCP抛包举例,源IP指定网卡接收举例

[root@axiang-03 ~]#  iptables -p tcp -A INPUT -s 192.168.83.1 --sport 1234 -d 192.168.83.139 --dport 80 -j DROP
[root@axiang-03 ~]# iptables -I INPUT -s 192.168.83.0/24 -i eth0 -j ACCEPT
  • -I:前排插入规则

  • -A:是在后面加入规则

  • -D:是删除规则

  • 根据编号删除规则

[root@axiang-03 ~]# iptables -nvL --line-numbers
Chain INPUT (policy ACCEPT 8 packets, 628 bytes)
num   pkts bytes target     prot opt in     out     source               destination         
1        0     0 ACCEPT     all  --  eth0   *       192.168.83.0/24      0.0.0.0/0           
2        0     0 DROP       tcp  --  *      *       192.168.83.1         192.168.83.139       tcp spt:1234 dpt:80
[root@axiang-03 ~]# iptables -D INPUT 1
[root@axiang-03 ~]# iptables -nvL --line-numbers
Chain INPUT (policy ACCEPT 6 packets, 428 bytes)
num   pkts bytes target     prot opt in     out     source               destination         
1        0     0 DROP       tcp  --  *      *       192.168.83.1         192.168.83.139       tcp spt:1234 dpt:80
	
  • 预设规则为(policy)为ACCEPT,可以通过命令 iptables -P INPUT 修改,但是注意如果进出改为DROP则不能远程,同时本机清空操作-F不会恢复

© 著作权归作者所有

共有 人打赏支持
阿想
粉丝 0
博文 72
码字总数 69742
作品 0
教你使用Linux防火墙隔离本地欺骗地址!

导读 几乎所有的 Linux 发行版都带着一个内建的防火墙来保护运行在 Linux 主机上的进程和应用程序。大多数防火墙都按照 IDS/IPS 解决方案设计,这样的设计的主要目的是检测和避免恶意包获取网...

问题终结者
05/10
0
0
如何使用 Linux 防火墙隔离本地欺骗地址

如何使用 iptables 防火墙保护你的网络免遭黑客攻击。 即便是被入侵检测和隔离系统所保护的远程网络,黑客们也在寻找各种精巧的方法入侵。IDS/IPS 不能停止或者减少那些想要接管你的网络控制...

作者: Michael Kwaku Aboagye
05/04
0
0
ipconfig、selinux、netfilter、iptables、netfilter5表5链

10.11 Linux网络相关 ifconfig 查看网卡ip(yum install net-tools) ip add ifconfig -a 可以查看到所有的网卡信息 ifup ens33/ifdown ens33 ifdown ens33 && ifup ens33可以down掉网卡,再重......

派派菠菜
05/09
0
0
系统诊断小技巧(7):利用Iptables进行排查和诊断的简易方案

TL;DR Iptables 严格说来,Iptables只是Linux系统防火墙用户空间的接口工具而已,但是,日常大家都以Iptables指称包括用户空间和内核空间在内的整个防火墙。这里我们也使用这个惯用法,但是,...

宁希波若
2017/08/24
0
0
Linux下防火墙iptables设置

我手里有本《鸟哥的Linux私房菜-服务器架设篇》。其中的第9章详细讲解了防火墙的原理与配置方式。 基础知识 Linux系统内核内建了netfilter防火墙机制。Netfilter(数据包过滤机制),所谓的...

临峰不畏
2014/09/13
0
8
如何使用netfilter/iptables构建防火墙

对于Internet上的系统,不管是什么情况都要明确一点:网络是不安全的。因此,虽然创建一 个防火墙并不能保证系统100%安全,但却是绝对必要的。Linux提供了一个非常优秀的防火墙工具—netfi...

水牛叔叔
2012/10/23
0
1
Linux防火墙之iptables基础

通过为防火墙提供有关对来自某个源,到某个目的地或具有特定协议类型的信息包要执行操作的指令及规则控制信息包的过滤。通过使用Netfilter/iptables系统提供的特殊命令iptables建立这些规则,...

柳哥
2015/05/12
0
0
大数据教程(2.6):Linux防火墙配置详解

我们从事IT的部分人员中,经常会与Linux系统打交道,而Linux中有一个非常重要的包过滤工具,它就是防火墙。大多数人员可能对这块知识不甚了解,亦或是只知道其中一些简单的配置。本节博主将为...

em_aaron
07/11
0
0
Netfilter/Iptables入门

Netfilter/Iptables入门 Linux的内核是由www.kernel.org这个组织负责开发维护,下面我们要讨论的Netfilter/iptables是www.netfilter.org组织为Linux开发的防火墙软件。由于Linux是非常模块化...

OSSIM
2015/01/11
0
0
Linux网络相关、firewalld、netfilter及其5表5链、iptables语法

1、Linux 网络相关 ifconfig 查看网卡IP,见下图, net-tools 包之前安装过了,这边还可以执行这个命令 yum install net-tools ,是因为做了更新。ip add 命令见下图, 两个命令相比较,ifc...

JolieLin
07/11
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

流利阅读笔记29-20180718待学习

高等教育未来成谜,前景到底在哪里? Ray 2018-07-18 1.今日导读 在这个信息爆炸的年代,获取知识是一件越来越容易的事情。人们曾经认为,如此的时代进步会给高等教育带来众多便利。但事实的...

aibinxiao
20分钟前
7
0
第15章FTP服务搭建与配置

15.1FTP介绍 FTP多用于Windows传文件到linux rz sz在文件超过4G,就无法使用了——>安装包yum install -y install lrzsz rz把 window 上的文件传输到 linux 上 sz 把 linux 上的文件传输到 ...

Linux学习笔记
28分钟前
0
0
OSChina 周三乱弹 —— 你被我从 osc 老婆们名单中踢出了

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @小鱼丁:分享五月天的单曲《后来的我们 (电影《后来的我们》片名曲)》: 《后来的我们 (电影《后来的我们》片名曲)》- 五月天 手机党少年们想...

小小编辑
32分钟前
7
1
Spring Boot Admin 2.0开箱体验

概述 在我之前的 《Spring Boot应用监控实战》 一文中,讲述了如何利用 Spring Boot Admin 1.5.X 版本来可视化地监控 Spring Boot 应用。说时迟,那时快,现在 Spring Boot Admin 都更新到 ...

CodeSheep
51分钟前
0
0
Python + Selenium + Chrome 使用代理 auth 的用户名密码授权

米扑代理,全球领导的代理品牌,专注代理行业近十年,提供开放、私密、独享代理,并可免费试用 米扑代理官网:https://proxy.mimvp.com 本文示例,是结合米扑代理的私密、独享、开放代理,专...

sunboy2050
今天
0
0
实现异步有哪些方法

有哪些方法可以实现异步呢? 方式一:java 线程池 示例: @Test public final void test_ThreadPool() throws InterruptedException { ScheduledThreadPoolExecutor scheduledThre......

黄威
今天
1
0
linux服务器修改mtu值优化cpu

一、jumbo frames 相关 1、什么是jumbo frames Jumbo frames 是指比标准Ethernet Frames长的frame,即比1518/1522 bit大的frames,Jumbo frame的大小是每个设备厂商规定的,不属于IEEE标准;...

六库科技
今天
0
0
牛客网刷题

1. 二维数组中的查找(难度:易) 题目描述 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入...

大不了敲一辈子代码
今天
0
0
linux系统的任务计划、服务管理

linux任务计划cron 在linux下,有时候要在我们不在的时候执行一项命令,或启动一个脚本,可以使用任务计划cron功能。 任务计划要用crontab命令完成 选项: -u 指定某个用户,不加-u表示当前用...

黄昏残影
昨天
0
0
设计模式:单例模式

单例模式的定义是确保某个类在任何情况下都只有一个实例,并且需要提供一个全局的访问点供调用者访问该实例的一种模式。 实现以上模式基于以下必须遵守的两点: 1.构造方法私有化 2.提供一个...

人觉非常君
昨天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部