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的话。以靠文件后的一个为准)

hosts文件的作用相当于DNS,提供IP地址hostname的对应。早期的互联网计算机少,单机hosts文件里足够存放所有联网计算机。不过随着互联网的发展,这就远远不够了。于是就出现了分布式的DNS系统。由DNS服务器来提供类似的IP地址到域名的对应。Linux系统在向DNS服务器发出域名解析请求之前会查询/etc/hosts文件,如果里面有相应的记录,就会使用hosts里面的记录。


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表用于过滤包,包含了三个内置链,

  1. INPUT            数据包进来本机的时候要经过的链

  2. FORWARD          目标地址不是本机的话,要经过的链

  3. OUTPUT           在本机的包出去之前要经过的链

(二)nat表用于网络地址转换,也包含了三个链。()

  1. PREROUTING        进来的一刻更改数据包

  2. OUTPUT           在本机的包出去之前要经过的链

  3. PUSTROUTING        出去的一刻更改数据包

(三)mangle表 用于给数据包做标记,几乎用不到

(四)raw表可以实现不追踪某些数据包

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


iptables传输数据包的过程

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

 linux日常维护(网络相关,防火墙,netfirter介绍,netfirter语法)



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


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,如需转载请自行联系原作者
上一篇:类与类之间的关系图(Class Diagram,UML图)


下一篇:[好文要转要收藏] UML类图几种关系的总结