前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >日常运维管理(三)

日常运维管理(三)

作者头像
老七Linux
发布2018-05-09 15:53:35
3.2K0
发布2018-05-09 15:53:35
举报

一、网络相关 :

yum install -y net-tools
#ifconfig -a :查看全部的网卡信息

在centOS 7 中,我们使用的网卡为ens33 ,但是在centOS 6或者更往前的版本使用的是eth0。

#ifdown ens33 :关闭ens33这个网卡
#ifup ens33 :打开ens33这个网卡

有时候我们通过远程连接工具连接服务器,如果必须重启某个特定的网卡我们需要这样操作:

#ifdown ens33 && ifup ens33

在日常的运维当中,有时候我们需要对一台服务器设定多个IP,此时我们需要用到虚拟网卡:

#cd /etc/sysconfig/network-scripts/ :先切换到此目录
#cp ifcfg-ens33 ifcfg-ens33\ :0 (一定不要忘记\去脱意:)
#vim ifcfg-ens33:0

然后去编辑NAME,DEVICE,IPADDR为不同的名称,NETMASK 和 GATEWAY取决不同的情况! 然后再次重启一下网卡既可以看到咱们新建的虚拟网卡。

如果人不在机房,如何远程查看服务器有没有链接网线呢?

#mii-tool ens33

设置linux服务器的hostname

#systemctl set-hostname zhdy-03 (设置服务器的hostname为zhdy-03)

配置文件在 # cat /etc/hostname 我们的DNS配置文件在:# cat /etc/resolv.conf 如果我们只是临时去更改DNS可以直接编辑此文件,但是重启机器就会失效(此文件的参数是从咱们网卡设置的DNS里面直接读取的)

#cat /etc/hosts

这个hosts文件在后期我们使用LAMP的时候会用到。

代码语言:javascript
复制
[[email protected]02 ~]# vim /etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.30.121 www.baidu.com

临时解析 baidu.com的地址为192.168.30.121,只是在本机生效!!


二、firewalld和 netfilter :

代码语言:javascript
复制
[[email protected] ~]# 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

永久关闭SELINUX 查看目前的一个状态:#getenforce #setenforce 0 临时关闭SELINUX

目前主流公司用的版本一般都是CentOS 7 (firewalld),但是还是会有一些公司用6或者5(netfilter).所以我们这两个我们都需要掌握!

针对CentOS7系统,默认的防火墙机制是firewalld,(当使用iptables -nvL 发现有很多表链的时候使用如下关闭firewalld)但是如果你想不用firewalld而选择使用centos 6里面的netfilter也是可以的!

代码语言:javascript
复制
# systemctl disable firewalld :先停掉firewalld
# systemctl stop firewalld :关闭服务
# yum install -y iptables-services:安装服务
# systemctl enable iptables :先启用iptables
# systemctl start iptables :启动服务

查看iptables的规则# iptables -nvL


三、netfilter5表 5链 :

filter :

  1. INPUT: 数据包进来时候经过的链(可以选择禁止某些访问80端口的IP)
  2. FORWARD: 把到达本地的数据包转发到指定的机器( 转发)
  3. OUTPUT: 本机所要发出的数据包,在出去前所做的操作

nat :

1.PREROUTING: 当进来的时候,对数据包进行操作。 2.POSTROUTING: 当数据包出去的时候,对数据包进行操作。

iptables传输数据包的过程

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

image
image
总结一下:

如果是本机的数据包,首先会经过PREROUTING–>INPUT–>OUTPUT–>POSTROUTING。 如果不是本机的数据包,则只会经过PREROUTING–>FORWARD–>POSTROUTING。


四、iptables语法详解 :

1. 查看iptables默认规则:#iptables -nvL

2.有时候当我们重启了iptables之后发现其规则没有消失,什么原因呢?

#service iptables save (我们设置好了规则只是临时保存在了内存中,要想重启不消失,就需要执行此命令) #cat /etc/sysconfig/iptables (规则全部保存在此) #iptables -F (临时全部清除规则,重启后原本的规则即会恢复) #iptables -Z (清除计数器) #service iptables restart (重启iptables服务)


3. #iptables -t

#iptables -t nat -nvL (查看nat的规则) #iptables -t filter -nvL (查看filter的规则,通常不指定filter默认即为filter)


4. 实战练习:

1.练习①

代码语言:javascript
复制
#iptables -A INPUT -s 192.168.188.1 -p tcp --sport 1234 -d 192.168.188.128 --dport 80 -j DROP

详细解说:
-A:add 增加一个规则;
INPUT:INPUT链;
-s:source指定来源IP
-p:指定协议(tcp,udp,icmp)
--sport:来源端口
-d:destination 目的IP
--dport:目标端口(80;22)
-j:操作(DROP:丢弃;ACCEPT:接受;REJECT:拒绝)

练习②

代码语言:javascript
复制
#iptables -I INPUT -p tcp --dport 80 -j DROP

详细解说:
-I:insert 插入一个规则,优先级高于-A;一般使用-A的规则都会放在最后,使用-I的规则都会放在首位;

练习③

代码语言:javascript
复制
#iptables -D INPUT -p tcp --dport 80 -j DROP

详细解说:
-D:delete 删除一个规则;删除时候要和输入的命令一模一样才可以删除;
如果时间过长忘记了,不建议使用此类型去删除,使用如下命令删除。

练习④

代码语言:javascript
复制
[[email protected]01 ~]# iptables -nvL --line-number
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
num   pkts bytes target     prot opt in     out     source               destination         
1    10830 6426K ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            ctstate RELATED,ESTABLISHED
2        1    80 ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0           
3       52  7750 INPUT_direct  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
4       52  7750 INPUT_ZONES_SOURCE  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
5       52  7750 INPUT_ZONES  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
6        0     0 DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0            ctstate INVALID
7       51  7690 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            reject-with icmp-host-prohibited

详细解说:
--line-number:显示行号;

练习⑤

代码语言:javascript
复制
#iptables -D INPUT 7

详细解说:
-D:delete 删除第7条规则;

练习⑥

代码语言:javascript
复制
#iptables -I INPUT -s 192.168.1.0/24 -i ens33 -j ACCEPT

详细解说:
-i:指定网卡;
-s:我们也可以指定一个范围;

练习⑦

代码语言:javascript
复制
#iptables -P INPUT DROP

详细解说:
-P:预设策略(默认的均为ACCEPT,安全性较高,但是一旦输入如上命令,咱们的远程软件就不可以连接服务器了)

2.补充说明: 如果规则中有多条规则几乎相似,一旦遇到符合的规则立即执行,后面的也就不执行了!

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2016/07/12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、网络相关 :
    • yum install -y net-tools
      • #ifconfig -a :查看全部的网卡信息
        • #ifdown ens33 :关闭ens33这个网卡
          • #ifup ens33 :打开ens33这个网卡
            • #ifdown ens33 && ifup ens33
              • #cd /etc/sysconfig/network-scripts/ :先切换到此目录
                • #cp ifcfg-ens33 ifcfg-ens33\ :0 (一定不要忘记\去脱意:)
                  • #vim ifcfg-ens33:0
                    • #mii-tool ens33
                      • #systemctl set-hostname zhdy-03 (设置服务器的hostname为zhdy-03)
                        • #cat /etc/hosts
                        • 二、firewalld和 netfilter :
                        • 三、netfilter5表 5链 :
                        • filter :
                        • nat :
                          • iptables传输数据包的过程
                            • 总结一下:
                            • 四、iptables语法详解 :
                              • 1. 查看iptables默认规则:#iptables -nvL
                                • 2.有时候当我们重启了iptables之后发现其规则没有消失,什么原因呢?
                                  • 3. #iptables -t
                                    • 4. 实战练习:
                                    领券
                                    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档