Linux网络相关

1、yum install net-tools

2、重启网卡

[root@centos7 ~]# ifdown eno16777736 && ifup eno16777736

3、新增虚拟IP

cp ifcfg-eno16777736 ifcfg-eno16777736\:0

vi ifcfg-eno16777736:0

TYPE=Ethernet

BOOTPROTO=static

DEFROUTE=yes

PEERDNS=yes

PEERROUTES=yes

IPV4_FAILURE_FATAL=no

IPV6INIT=yes

IPV6_AUTOCONF=yes

IPV6_DEFROUTE=yes

IPV6_PEERDNS=yes

IPV6_PEERROUTES=yes

IPV6_FAILURE_FATAL=no

NAME=eno16777736:0

UUID=bb3b3feb-b209-4e36-ba0f-6022977c84d0

DEVICE=eno16777736:0

ONBOOT=yes

IPADDR=192.168.100.105

NETWORK=255.255.255.0

GATEWAY=192.168.100.1

DNS1=114.114.114.114

ifdown eno16777736 && ifup eno16777736

再次查看ifconfig -a;多了一个虚拟网卡


4、mii-tool查看是否连接网线

[root@centos7 ~]# mii-tool eno16777736

eno16777736: negotiated 1000baseT-FD flow-control, link ok


5、更改主机名

[root@centos7 ~]# hostnamectl set-hostname test-7

[root@centos7 ~]# bash

[root@test-7 ~]# hostname

test-7

配置文件:

[root@test-7 ~]# cat  /etc/hostname 

test-7


firewalld和netfilter

1、永久关闭selinux

[root@test-7 ~]# vi /etc/selinux/config 



# This file controls the state of SELinux on the system.

# SELINUX= can take one of these three values:

#     enforcing - SELinux security policy is enforced.

#     permissive - SELinux prints warnings instead of enforcing.

#     disabled - No SELinux policy is loaded.

SELINUX=disabled


临时关闭

[root@test-7 ~]# setenforce 0

setenforce: SELinux is disabled


查看是否关闭

[root@test-7 ~]# getenforce 

Disabled


开机不启动

[root@test-7 ~]# systemctl disable firewalld

关闭防火墙

[root@test-7 ~]# systemctl stop firewalld

安装iptables工具,名称是netfil

[root@test-7 ~]# yum install -y iptables-services


iptables和netfilter的关系:

Iptables和netfilter的关系是一个很容易让人搞不清的问题。很多的知道iptables却不知道 netfilter。其实iptables只是Linux防火墙的管理工具而已,位于/sbin/iptables。真正实现防火墙功能的是 netfilter,它是Linux内核中实现包过滤的内部结构。


iptables传输数据包的过程

① 当一个数据包进入网卡时,它首先进入PREROUTING链,内核根据数据包目的IP判断是否需要转送出去。 
② 如果数据包就是进入本机的,它就会沿着图向下移动,到达INPUT链。数据包到了INPUT链后,任何进程都会收到它。本机上运行的程序可以发送数据包,这些数据包会经过OUTPUT链,然后到达POSTROUTING链输出。 
③ 如果数据包是要转发出去的,且内核允许转发,数据包就会如图所示向右移动,经过FORWARD链,然后到达POSTROUTING链输出。


Linux网络相关、firewalld和netfilter、netfilter5表5链介绍、iptables语法_基础


规则表:

1.filter表——三个链:INPUT、FORWARD、OUTPUT
作用:过滤数据包  内核模块:iptables_filter.
2.Nat表——三个链:PREROUTING、POSTROUTING、OUTPUT
作用:用于网络地址转换(IP、端口) 内核模块:iptable_nat

3、Mangle表  4、Raw表 5、security用的不多,暂时不考虑


数据包流向与netfilter的5个链

 PREROUTING:数据包进入路由表之前

 INPUT:通过路由表后目的地为本机

 FORWARD:通过路由表后,目的地不为本机

 OUTPUT:由本机产生,向外发出

 POSTROUTING:发送到网卡接口之前




iptables语法

查看规则

[root@test-7 ~]# iptables -nvL

配置文件保存:

[root@test-7 ~]# cat /etc/sysconfig/iptables


清空规则(需要保存配置文件信息才清空)

[root@test-7 ~]# iptables -F

[root@test-7 ~]# service iptables save


可以把计数器清零:

[root@test-7 ~]# iptables -Z


-A:add 增加一个input链

-s:源端口

-p:指导tcp/udp

--sport:

-d:目标IP

--dport: 目标端口

-j DROP拒绝  ACCEPT:接受 

iptables -A INPUT -s 192.168.100.102 -p tcp --sport 1234 -d 192.168.100.100 --dport 80 -j DROP


-I:会在iptables的配置文件中第一个写入,即优先第一个排序执行

iptables -I INPUT -p tcp --dport 9889 -j DROP


产生一个序号,可以根据这个序号删除对应的规则

[root@test-7 ~]# iptables -nvL --line-numbers

Chain INPUT (policy ACCEPT 119 packets, 9078 bytes)

num   pkts bytes target     prot opt in     out     source               destination         

1        0     0 DROP       tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:80


Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)

num   pkts bytes target     prot opt in     out     source               destination         


Chain OUTPUT (policy ACCEPT 81 packets, 8932 bytes)

num   pkts bytes target     prot opt in     out     source               destination  


删除规则:

[root@test-7 ~]# iptables -D INPUT 1


全部禁用端口,不能用以下命令

[root@test-7 ~]# iptables -P INPUT DROP