标签:Linux
10.11 Linux网络相关1. ifconfig查看网卡ip(如果没有这个命令请使用yum install net-tools安装)
2、重启网卡:
命令:service network restart或者ifdown eth0 && ifup eth0
ifdown 即停掉网卡,ifup即启动网卡。有一点要提醒你的是,如果我们远程登录服务器,当使用ifdown eth0这个命令的时候,很有可能后面的命令ifup eth0不会被运行,这样导致我们断网而无法连接服务器,所以请尽量使用 service network restart或ifdown eno16777736 &&ifup eno16777736 (可以单独重启指定的某张网卡而不是重启整个网络服务)这个命令来重启网卡
3.一个网卡设定多个IP
设定虚拟网卡eth0:1
3.1 先进入:cd /etc/sysconfig/network-scripts/
3.2 再拷贝备份网卡:cp ifcfg-eth0 ifcfg-eth0\:1 //复制网卡配置文件,并取一个新的网卡名,这里加反斜杠(\)是因为要把:转义,不然linux命令无法识别。
3.3 然后编辑网卡配置信息:vim ifcfg-eth0:1
3.4 配置ifcfg-eth0添加另外的IP地址如下:
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 IPV6_ADDR_GEN_MODE=stable-privacy NAME=eth0:1 //这个地方要更改成前面设置的eth0:1 UUID=3c08189a-cb3f-4879-92de-ee0691b1d4cc DEVICE=eth0:1//这个地方要更改成前面设置的eth0:1 ONBOOT=yse IPADDR=192.168.1.190 //更改一个没有使用的IP NETMASK=255.255.0.0 GATEWAY=192.168.1.1 DNS1=119.29.29.29 DNS2=8.8.8.8
3.5 重启网卡查看多出来的网卡信息:ifdown eth0:1 &&ifup eth0:1
4、查看网卡是否连接 命令如下:
mii-tool eth0 //link ok表示连接正常,如果显示no link表示网卡坏了或没有连接网线
ethtool eth0 //最后一行显示link detected:yes说明网卡正常,如果显示为no,说明网卡坏或没有连接网线
5、更改主机名:hostnamectl set-hostname pme (这个命令可以直接更改/ect/hostname文件 只适用centos7)
使用hostname命令就可以知道你的linux的主机名是什么。hostname pme命令这样修改只是保存在内存中,下次重启还会变成未改之前的主机名,所以需要你还要去更改相关的配置文件 /etc/hostname.
6.DNS配置文件: cat /etc/resolv.conf
6.1 如果要修改dns,则要进网卡配置文件里面修改并重启网卡即可:
vim /etc/sysconfig/network-scripts/ifcfg-eth0
6.2 临时更改DNS :vim /etc/resolv.conf
6.3 /etc/hosts
在linux下有一个特殊文件/etc/hosts可能解析域名,不过需要我们在里面手动添加ip与域名,它的作用是临时解析某个域名,非常有用。
注意: 1. 一个IP后面可以跟多个域名,可以是几十个甚至上百个。 2. 每一行只能有一个IP,也就是一个域名不能对应多个IP。 3. 如果有多行中出现相同的域名(对应的IP不一样),会按最前面出现的记录来解析。
实验:
[root@aminglinux-01 ~]# cat /etc/hosts //查看文件内容
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
[root@aminglinux-01 ~]# 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=231 time=30.3 ms
64 bytes from 202.91.250.93 (202.91.250.93): icmp_seq=2 ttl=231 time=30.2 ms
64 bytes from 202.91.250.93 (202.91.250.93): icmp_seq=3 ttl=231 time=30.2 ms
--- www.qq123.com ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 30.227/30.284/30.395/0.162 ms
[root@aminglinux-01 ~]# vim /etc/hosts //编辑文件把上面这个域名指向的ip更改成192.168.1.190 ,保存退出
[root@aminglinux-01 ~]# ping www.qq123.com //验证域名指定IP
PING www.qq123.com (192.168.1.190) 56(84) bytes of data.
64 bytes from www.qq123.com (192.168.1.190): icmp_seq=1 ttl=64 time=0.152 ms
64 bytes from www.qq123.com (192.168.1.190): icmp_seq=2 ttl=64 time=0.086 ms
64 bytes from www.qq123.com (192.168.1.190): icmp_seq=3 ttl=64 time=0.060 ms
10.12 firewalld和netfilter
1. SElinux selinux是Linux系统特有的安全机制,因为这种机制的限制太多,配置也麻烦,所以几乎没有人真正的应用它。安装完系统后我们一般会选择关闭selinux。
以使用 getenforce 命令获得当前selinux的状态:
1、selinux临时关闭 :setenforce 0
2、selinux永久关闭: vi /etc/selinux/config (/把enforcing改成disabled)重启生效
3. netfilter和firewalld 在centos版本5和6上用的防火墙是netfiler,centos7则用的是firewalld防火墙,很多人把Linux的防火墙叫作iptables,其实这不是,iptables仅仅是一个工具。目前现在很多企业依然在使用centos6,但firewalld是向下兼容netfiler的,同样也支持之前版本的命令用法。
3.1 关闭firewalld开启netfilter方法:
(1)systemctl disable firewalled //禁止firewalld服务开机启动
(2)systemctl stop firewalld //关闭firewalld服务
(3)yum install -y iptables-services //安装iptables-services,这样就可以使用之前版本的iptables了。
(4)systemctl enable iptables //让它开机启动
(5) systemctl start iptables //启动iptables服务
10.13 netfilter5表5链介绍
netfilter5表5链介绍 netfilter的5个表 1. filter表用于过滤包,是系统预设的表,也是最常用的表,该表有内建三个链INPUT、 OUTPUT、FORWARD。 - INPUT链作用于进入本机的包。 - OUTPUT链作用于本机送机的包。 - FORWARD链作用于那些跟本机无关的包。 2. nat表用于网络地址转换,有PREROUTING、OUTPUT、POSTROUTING三个链。 - PREROUTINC链的作用是在包刚刚到达防火墙时改变它的目的地址(如果需要的话) - OUTPUT链的作用是改变本地产生的包的目的地址。 - POSTROUTINC链的作用是在包即将离开防火墙时改变其源地址。 3. 数据包流向与netfilter的5个链 - PREROUTING:数据包进入路由表之前。 - INPUT:通过路由表后目的地为本机。 - FORWARD:通过路由表后,目的地不为本机。 - OUTPUT:由本机产生,向外发出。 - POSTROUTING:发送到网卡接口之前。 4. 具体的数据包流向,可以参考下图。
5.参考文章iptables详解: http://www.cnblogs.com/metoy/p/4320813.html
netfilter/iptables(简称为iptables)组成Linux平台下的包过滤防火墙,与大多数的Linux软件一样,这个包过滤防火墙是免费的,它可以代替昂贵的商业防火墙解决方案,完成封包过滤、封包重定向和网络地址转换(NAT)等功能。
规则(rules)其实就是网络管理员预定义的条件,规则一般的定义为“如果数据包头符合这样的条件,就这样处理这个数据包”。规则存储在内核空间的信息 包过滤表中,这些规则分别指定了源地址、目的地址、传输协议(如TCP、UDP、ICMP)和服务类型(如HTTP、FTP和SMTP)等。当数据包与规 则匹配时,iptables就根据规则所定义的方法来处理这些数据包,如放行(accept)、拒绝(reject)和丢弃(drop)等。配置防火墙的 主要工作就是添加、修改和删除这些规则。
这是第一个要说的地方,Iptables和netfilter的关系是一个很容易让人搞不清的问题。很多的知道iptables却不知道 netfilter。其实iptables只是Linux防火墙的管理工具而已,位于/sbin/iptables。真正实现防火墙功能的是 netfilter,它是Linux内核中实现包过滤的内部结构。
10.14 iptables语法
1. iptables已经有默认规则,我们可以用以下命令查看。但是我们在设置自己的规则之前,建议先将其清除。-nvL选项表示查看规则,-F选项表示清除当前规则,但清除只是临时的,重启还是会加载已经保存的规则,所以需要使用service iptables save保存一下规则。通过下面这个命令输出,我们也可以看到防火墙规则保存在/etc/sysconfig/iptables里,可以查看下这个文件。
1.1 查看iptables规则:iptables -vnL
1.2 清空规则命令:iptables -F
1.3 永久保存规则命令: service iptables save 会把规则保存到 /etc/sysconfig/iptables
1.4 命令: iptables -t nat // -t 指定表(不加t,默认就是filter表)
1.5 命令:iptables -Z //-Z把包和流量计数器清零
1.6 增加一条规则:
iptables -A INPUT -s 192.168.188.1 -p tcp –sport 1234 -d 192.168.188.128 –dport 80 -j DROP
1.7. iptables -I INPUT -s 1.1.1.1 -j DROP //表示插入一条规则,丢掉所有来自1.1.1.1的数据包。 1.8 iptables -A INPUT -s 1.1.1.1 -j DROP //表示增加一条规则 1.9 iptables -D INPUT -s 1.1.1.1 -j DROP //注意删除一条规则时,必须和插入的规则一致。 1.10 iptables -I INPUT -s 192.168.1.0/24 -i eth0 -j ACCEPT //表示把来自192.168.1.0/24这个网段且作用在etho上的包放行。 2.1 有时候服务器上的iptables过多了,你想删除一某一条规则,但又不知道之前创建时的规则(通过编号去删除),你可先查看iptables规则,命令如下:
2.1.1 在规则前用编号显示出来: iptables -nvL --line-numbers (注意line前是双横线)
2.1.2删除编号为1的规则: iptables -D INPUT 2
3.默认规则: iptables -P INPUT DROP (说明:-P后面跟链名,策略内容或为DROP,或为ACCEPT,默认是ACCEPT。注意:如果你在连接远程服务器,千万不要随便执行这个命令,因为一旦输入命令并回车,远程连接会被断开。这个策略一旦设定成功后,只有使用命令iptables -P INPUT ACCEPT才能恢复成原始状态)
4.总结:
-A/-D :增加删除一条规则;
-I :插入一条规则,其实跟-A的效果一样;
-p :指定协议,可以是tcp,udp或者icmp;
–dport :跟-p一起使用,指定目标端口;
–sport :跟-p一起使用,指定源端口;
-s :指定源IP(可以是一个ip段);
-d :指定目的IP(可以是一个ip段);
-j :后跟动作,其中ACCEPT表示允许包,DROP表示丢掉包,REJECT表示拒绝包;
-i :指定网卡(不常用,但有时候能用到)
标签:Linux
原文地址:http://blog.51cto.com/404006045/2114226