若是系统没有该命令可使用yum安装:前端
[root@3 ~]# yum install -y net-tools
查看网卡IP还可使用命令:ip add,这个显示有点乱!linux
显示全部网卡信息(包括down掉的或者没有IP地址的网卡)vim
应用环境:更改单个指定网卡配置后须要重启才能生效,为了不关闭或重启全部网卡能够对单个网卡执行该命令。
注: 若是网卡正在使用中,不要单独使用ifdown命令!!!解决办法: “# ifdown ens33 && ifup ens33”,使两个命令一块儿执行!centos
关闭虚拟机,按以下顺序操做:网络
点击下一步:dom
在此能够指定网络适配器(网卡)类型,也能够在添加完成后进行选择:tcp
点击“肯定”即添加完成!工具
注: 若是以上操做是在开机状态下执行,添加完成后须要重启网络服务!!!oop
查看新增网卡的配置信息:学习
在此能够查看其所在网段。
配置新增网卡信息:
开启虚拟机后进行以下操做:
查看网络信息:
网卡配置文件位置(复制原有网卡,进行重命名): /etc/sysconfig/network-scripts/ [root@localhost ~]# cd /etc/sysconfig/network-scripts/ 建立新增网卡配置文件: [root@localhost network-scripts]# cp ifcfg-ens33 ifcfg-ens37 [root@localhost network-scripts]# vim ifcfg-ens37 #更改该配置文件下的网卡名为ens37 #删除UUID 配置完成后重启网络服务: [root@localhost network-scripts]# systemctl restart network 至此,添加完成,以后变能够经过编辑该文件来配置该网卡!!!
注: 因本次添加的网卡的网络链接类型是host-only模式,因此其IP和ens33不在同一网段。
一、切换至网卡配置文件 [root@3 ~]# cd /etc/sysconfig/network-scripts/ 二、复制系统网卡 [root@3 network-scripts]# cp ifcfg-ens33 ifcfg-ens33\:0 三、编辑复制的配置文件 [root@3 network-scripts]# vi ifcfg-ens33\: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 IPV6_ADDR_GEN_MODE=stable-privacy NAME=ens33:0 DEVICE=ens33:0 ONBOOT=yes IPADDR=192.168.8.138 NETMASK=255.255.255.0 GATEWAY=192.168.8.2 DNS1=119.29.29.29 说明:更改NAME、DEVICE、IPADDR,系统已经设定网关可DNS,因此在此能够删除GATEWAY和DNS,也能够保留,可是,若是要保留该选项则必须保持其与系统网卡配置一致! 四、重启系统网卡 [root@3 network-scripts]# ifdown ens33 && ifup ens33 成功断开设备 'ens33'。 成功激活的链接(D-Bus 激活路径:/org/freedesktop/NetworkManager/ActiveConnection/3) 五、查看网卡信息 [root@3 network-scripts]# ifconfig ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.8.125 netmask 255.255.255.0 broadcast 192.168.8.255 …… ens33:0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.8.158 netmask 255.255.255.0 broadcast 192.168.8.255 ether 00:0c:29:61:7d:7a 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) …… 六、检测虚拟网啊IP是否通畅 在Windows系统cmd下ping该IP便可!
[root@3 ~]# mii-tool ens33 ens33: negotiated 1000baseT-FD flow-control, link ok
查看:link ok说明网卡链接OK!
[root@3 ~]# ethtool ens33 Settings for ens33: Supported ports: [ TP ] Supported link modes: 10baseT/Half 10baseT/Full …… Current message level: 0x00000007 (7) drv probe link Link detected: yes
查看:Link detected: yes说明网卡链接OK!
更改: [root@3 ~]# hostnamectl set-hostname 03 查看主机名: [root@3 ~]# hostname 03 注:更改后的主机名要在系统重启以后才会显示! 主机名的配置文件: [root@03 ~]# cat /etc/hostname 03
[root@3 ~]# cat /etc/resolv.conf # Generated by NetworkManager nameserver 119.29.29.29
注: 更改网卡配置便可更改DNS配置文件,更改后须要重启网卡(ifdown/ifup)后生效,也可编辑‘/etc/resolv.conf’临时更改DNS配置,该办法在重启网卡后会被网卡配置文件中的DNS覆盖!
[root@3 ~]# cat /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
说明: 使用vi命令可在该配置文件下能够自定义IP所对应的域名(一个IP对应多个域名或一个域名对应多个IP,用空格隔开,当一个域名对应多个IP时,以配置文件中靠后面的配置为准),可是该域名配置只在本机生效!
[root@3 ~]# setenforce 0
编辑配置文件‘/etc/selinux/config’
[root@3 ~]# vim /etc/selinux/config …… # disabled - No SELinux policy is loaded. SELINUX=disabled # SELINUXTYPE= can take one of three two values: …… # mls - Multi Level Security protection. SELINUXTYPE=targeted
将SELINUX=enforcing改成disabled保存,重启系统便可!
[root@3 ~]# getenforce Disabled
>Centos7中默认将原来(centos5/6)的防火墙netfileter升级为了firewalld。iptables是它们实现防火墙功能的工具。
为了方便学习,暂时停用firewalld,开启centos6/5的防火墙机制netfilter。
一、关闭firewalld(禁止开机启动) [root@3 ~]# systemctl disable firewalld Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service. Removed symlink /etc/systemd/system/basic.target.wants/firewalld.service. 二、中止firewalld服务 [root@3 ~]# systemctl stop firewalld
开启前先安装iptables工具包: [root@3 ~]# yum install -y iptables-services 开启iptables服务: [root@3 ~]# systemctl enable iptables Created symlink from /etc/systemd/system/basic.target.wants/iptables.service to /usr/lib/systemd/system/iptables.service. [root@3 ~]# systemctl start iptables
说明: 安装完成后默认开启iptables服务。
[root@3 ~]# iptables -nvL Chain INPUT (policy ACCEPT 0 packets, 0 bytes) pkts bytes target prot opt in out source destination 7 536 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 5 packets, 684 bytes) pkts bytes target prot opt in out source destination
filter的三种链:
nat的三种链:
环境:
假设有三台机器(A,B,C),A机器上有一块网卡链接公网IP1;B机器上有两块网卡b一、b2,b一、b2分别链接公网和私网IP2,、IP3;C机器上有一块网卡链接私网IP4。很明显此时A&B,B&C之间都分别能互通,可是A和C之间是不能直接连通的,只能借助B作媒介才能连通。那么如何设置才能使得A和C之间互通呢?
方法:
先打开路由转发功能: [root@3 ~]# echo "1" > /proc/sys/net/ipv4_forward 而后对nat表作IP转发配置: [root@3 ~]# iptables -t nat -A POSTROUTING -s IP2(此处IP在同一个网段便可) -o ensA(A机器的网卡名称) -j MASQUERADE
说明: -o 选项后面跟设备名称,表示出口网卡,MASQUERADE是假装、冒充的意思。
>iptables命令是Linux上经常使用的防火墙软件,是netfilter项目的一部分。能够直接配置,也能够经过许多前端和图形界面配置。
语法: iptables [options] [参数]
Options:
-n:不针对IP反解析主机名
-v:显示更详细的信息
-t:指定表(iptables命令默认做用于filter表)
-L:显示信息
-F:清空全部规则
-A/D:=add/delete,添加/删除一条规则
-I:插入一条规则
-p:指定协议,能够是tcp,udp或icmp
--sport:跟-p一块儿使用,指定源端口
--dport:跟-p一块儿使用,指定目标端口
-s:指定源IP(能够是一个IP段)
-d:指定目的IP(能够是一个IP段)
-j:后面跟动做(ACCEPT表示容许包;DROP表示丢掉包;REJECT表示拒绝包)
-i:指定网卡
-Z:把包以及流量计数器清零
-P:=pre,预设策略
iptables -t 表名 <-A/I/D/R> 规则链名 [规则号] <-i/o 网卡名> -p 协议名 <-s 源IP/源子网> --sport 源端口 <-d 目标IP/目标子网> --dport 目标端口 -j 动做
[root@3 ~]# iptables -nvL
iptables规则配置文件:/etc/sysconfig/iptables
[root@3 ~]# iptables -F
注: 该命令不会清除配置文件内的规则!当更改规则后须要执行命令‘service iptables save’将其保存到配置文件。
[root@3 ~]# iptables -A INPUT -s 192.168.188.1 -p tcp --sport 1234 -d 192.168.188.128 --dport 80 -j DROP
说明: 增长一条规则,当IP~192.168.188.一、协议为tcp、端口为‘1234’的向IP~192.168.188.12八、端口为80的机器发送包时执行操做:drop(丢掉包)。
注: 该命令也能够把-A换成-I,二者的区别相似于排队和插队,两种方法插入的规则优先级不一样。
[root@3 ~]# iptables -D INPUT -s 192.168.188.1 -p tcp --sport 1234 -d 192.168.188.128 --dport 80 -j DROP
注: 要删除一条规则时,必须和插入的规则一致,也就是说,两条iptables命令除了-A/I和-D不同外,其余地方都同样。
方法2: 忘记规则内容
首先因此用如下命令查看规则序号:
[root@3 ~]# iptables -nvL --line-number
而后再执行删除命令:
[root@3 ~]# iptables -D INPUT [序号]
执行命令:
# iptables -P OUTPUT DROP
结果:
注意: 尽可能不要随意更改该配置,尤为是在进行远程登陆时,一旦执行该命令后将会断开链接。这个策略设定后只能用命令:‘iptables -P OUTPUT ACCEPT’来恢复成原始状态,不能使用-F参数。