10.11 Linux网络相关
ifconfig 查看网卡IP
想要修改ip vi /etc/sysconfig/network-scripts/ifcfg-ens33
ifconfig -a 不显示宕掉的网卡
如果Linux上有多个网卡,而只想重启某一个网卡的话,可以使用这个命令:
ifdown ens33 && ifup ens33
ifdown 即停掉网卡,ifup即启动网卡。有一点要提醒你的是,如果我们远程登录服务器,当使用ifdown ens33这个命令的时候,很有可能后面的命令ifup ens33不会被运行,这样导致我们断网而无法连接服务器,所以请尽量使用 service network restart 这个命令来重启网卡。
给一个网卡设定多个IP
在linux系统中,网卡是可以设定多重IP的
然后编辑ifcfg-ens33:0这个配置文件,内容如下,一定要注意 DEVICE 这里要写成 “ens33:0”
编辑好后,重启网卡:ifdown ens33 && ifup ens33 然后ifconfig
查看网卡连接状态 mii-tool ens33:0或者ethtool ens33:0
mii-tool ens33:0 只要看到 “link ok” 就说明网卡为连接状态,如果显示 “no link” 说明网卡坏掉了或者没有连接网线。
ethtool ens33:0 只要看到 “Link detected: yes” 就说明网卡为连接状态,如果显示 “nLink detected: no” 说明网卡坏掉了或者没有连接网线。
更改主机名
使用hostname就可以知道你的linux的主机名是什么
同样使用hostname可以更改你的主机名:hostname xpf 只有在重新登陆的时候才会修改
或者执行bash从新打开shell
不过这样修改只是保存在内存中,下次重启还会变成未改之前的主机名,所以需要你还要去更改相关的配置文件 “/etc/sysconfig/network”
设置DNS
DNS是用来解析域名用的,平时我们访问网站都是直接输入一个网址,而dns把这个网址解析到一个IP。关于dns的概念,如果你很陌生的话,那就去网上查一下吧。在linux下面设置dns非常简单,只要把dns地址写到一个配置文件中即可。这个配置文件就是/etc/resolv.conf
在linux下面有一个特殊的文件/etc/hosts也能解析域名,不过是需要我们手动在里面添加IP+域名这些内容,它的作用是临时解析某个域名,非常有用。
vim /etc/hosts
案例:[root@localhost ~]# vim /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.1.111 www.baidu.com
保存后,再ping一下 www.baidu.com 就会到 192.168.1.111 了:
[root@localhost ~]# ping www.baidu.com
PING www.baidu.com (192.168.1.111) 56(84) bytes of data.
10.12 firewalld和netfilter
selinux临时关闭防火墙 setenforce 0
selinux永久关闭 vim /etc/selinux/config
并且把 SELINUX=enforcing 改成 SELINUX=disabled 千万注意不要修改错了 如果把
SELINUXTYPE=targeted 修改成SELINUXTYPE=disabled 回导致linux启动不了
我们可以使用 getenforce 命令获得当前selinux的状态:
Centos7之前使用netfilter防火墙
Centos7开始使用firewalld防火墙
关闭firewalld开启netfilter方法
systemctl disable firewalled 不许开机启动
systemctl stop firewalld 停止服务
yum install -y iptables-services
systemctl enable iptables
systemctl start iptables 开启netfillter
iptables -nvL 查看规则
10.13 netfilter5表5链介绍
iptalbes的三个表
filter 这个表主要用于过滤包的,是系统预设的表,这个表也是阿铭用的最多的。内建三个链INPUT、OUTPUT以及FORWARD。INPUT作用于进入本机的包;OUTPUT作用于本机送出的包;FORWARD作用于那些跟本机无关的包。
nat 主要用处是网络地址转换,也有三个链。PREROUTING 链的作用是在包刚刚到达防火墙时改变它的目的地址,如果需要的话。OUTPUT链改变本地产生的包的目的地址。POSTROUTING链在包就要离开防火墙之前改变其源地址。该表阿铭用的不多,但有时候会用到。
mangle 这个表主要是用于给数据包打标记,然后根据标记去操作哪些包。这个表几乎不怎么用。
摘要:http://www.cnblogs.com/metoy/p/4320813.html
10.14 iptables语法
查看规则以及清除规则:iptables -F
如果想把当前规则保存到文件里面需要
service iptables save 保存规则 清空后需要保存一下,才是真的清空
规则保存的路径是 /etc/sysconfig/iptables
如果不保存的话重启iptables后会重新还原回来
service iptables restart
iptables -t nat -nvL
-t 后面跟表名,-nvL 即查看该表的规则,其中-n表示不针对IP反解析主机名;-L表示列出的意思;而-v表示列出的信息更加详细。如果不加-t ,则打印filter表的相关信息:
不加-t默认是针对表filter来操作的,iptables -F 表示把所有规则全部删除;
iptables -Z表示把包以及流量计数器置零
增加/删除一条规则
iptables -A INPUT -s 10.72.11.12 -p tcp --sport 1234 -d 10.72.137.159 --dport 80 -j DROP
这就是增加了一条规则,省略-t所以针对的是filter表。-I 把规则插入到最前面,-A 增加到最后面。如果在前面,优先过滤最前面的规则,一旦匹配直接执行,就不会让后面的执行,-D删除一条规则;后面的INPUT即链名称,还可以是OUTPUT或者FORWORD;-s 后跟源地址;-p 协议(tcp, udp, icmp); --sport/--dport 后跟源端口/目标端口;-d 后跟目的IP(主要针对内网或者外网);-j 后跟动作(DROP即把包丢掉,REJECT即包拒绝;ACCEPT即允许包)。
iptables -I INPUT -s 1.1.1.1 -j DROP
插入一条规则,把来自1.1.1.1的所有数据包丢掉。
iptables -D INPUT -s 1.1.1.1 -j DROP
删除刚刚插入的规则。注意要删除一条规则时,必须和插入的规则一致,也就是说,两条iptables命令,除了-I 和-D不一样外,其他地方都一样。
iptables -I INPUT -s 2.2.2.2 -p tcp --dport 80 -j DROP
上例表示把来自2.2.2.2 并且是tcp协议到本机的80端口的数据包丢掉。这里要说的是,--dport/--sport 必须要和-p选项一起使用,否则会出错。
如果我们规则很复杂,很久之前设置的,后面想要删除 -D 后面的忘记了的话
我们可以使用删除序列号的方法
扩展(selinux了解即可) 1. selinux教程 http://os.51cto.com/art/201209/355490.htm
2.selinux pdf电子书 http://pan.baidu.com/s/1jGGdExK