Linux基础服务上篇串讲

课前说明

一、实战演练

需求1:

背景/任务:

为了最大程度的保护公司内网服务器的安全,公司内部有一台服务器做跳板机。运维人员在维护过程中首先要统一登录到这台服务器,然后再登录到目标设备进行维护和操作。由于业务需求,运维人员经常要ssh登录到某几台服务器上做一些操作,为了提高工作效率,运维人员需要免密码登录到指定的几台服务器。

需求1

环境:

角色IP
jumper-server192.168.199.107/10.1.1.1
app1-server10.1.1.2
app2-server10.1.1.3
app3-server10.1.1.4

要求如下:

  1. 运维人员所在的办公区只能访问跳板机(windows作为终端机)
  2. 应用服务器允许跳板机访问
  3. 运维人员通过跳板机,使用管理员账号yunwei,可以免密码以业务用户pos分别登录到app1~app3上

涉及知识点:

  1. 网络配置
  2. ssh服务、ssh服务基于密钥对认证(免密码登录)
  3. ssh服务的访问控制

 

需求2:

背景/任务:

要求如下:

  1. 只有运维部门员工可以对公司内部线上线下所涉及到的技术文档进行查看和修改。(任务1)
  2. 数据分析的同事每天需要拿到最新的业务数据。(任务2)
  3. 每天早上4点03分导入到数据库并且要求有日志记录。(任务3)

涉及知识点:

  1. 文件共享服务(FTP/NFS/SAMBA)
  2. 计划任务
  3. 脚本定期清理日志
  4. rsync数据同步(可能会涉及)
  5. 分析并选择最有效的办法解决问题的能力

 

二、理论知识

1. 关于ssh服务

一问:

==sshd服务是干什么的?ssh又是什么?为什么要讲ssh?==

二问:

==ssh的两种加密算法是什么?==

补充了解:

DSA数字签名,非对称加密的另一种实现。

DSA-Digital Signature Algorithm 是Schnorr和ElGamal签名算法的变种。简单的说,这是一种更高级的验证方式,用作数字签名。不单单只有公钥、私钥,还有数字签名。私钥加密生成数字签名,公钥验证数据及签名。如果数据和签名不匹配则认为验证失败!数字签名的作用就是校验数据在传输过程中不被修改。

对称加密

 

 

非对称加密

 

1、远程Server收到Client端用户的登录请求后,Server端把自己的公钥发给用户 2、Client端使用这个公钥,将密码进行加密 3、Client将加密的密码发送给Server端 4、远程Server用自己的私钥,解密登录密码,然后验证其合法性 5、根据验证结果,给Client相应的响应。

 

 

中间人劫持

 

三问:

==SSH中是如何解决这个问题的呢?==

提示信息:无法确认主机192.168.10.171的真实性,指纹是9f:71:de:3c:86:25:dd:f0:06:78:ab:ba:96:5a:e4:95.,你确定想要继续吗?

说明: 理论上应该是对公钥的确认,由于公钥通过RSA算法加密,太长,不好直接比较,所以给公钥生成一个hash的指纹,方便比较。

说明:

当客户端输入yes确认对方的公钥指纹后,server端的公钥就会被存放到客户机的用户家目录里~/.ssh/known_hosts文件中,下次再访问就直接通过密码登录,不需要再确认公钥。

免密码认证

  1. id_rsa:保存私钥
  2. id_rsa.pub:保存公钥
  3. authorized_keys:保存已授权的客户端公钥
  4. known_hosts:保存已认证的远程主机公钥

 

2. 文件共享服务

一问:

==常见的文件共享服务都有哪些?各自有什么特点?应用场景有哪些?==

 

二问:

==FTP服务的工作模式有哪两种,分别有什么优缺点?==

 

主动模式

 

 

被动模式

 

三问:

==企业里NFS一般用来做什么?==

 

web后端共享存储

 

 

三、具体操作步骤

需求1:

思路:
  1. 根据要求安装一台全新的Linux服务器,配置好基本环境(网络配置、主机名等)
  2. 创建一个管理员账号yunwei,并赋予必要的管理权限,权限最小化,尽量避免root直接登录
  3. 在跳板机上使用yunwei用户配置免密码登录app1-app3的pos用户
  4. 测试验证
实验环境:

步骤:

 

需求2:

要求如下:

  1. 只有运维部门员工可以对公司内部线上线下所涉及到的技术文档进行查看和修改。(任务1)
  2. 数据分析的同事每天需要拿到最新的业务数据。(任务2)
  3. 每天早上4点03分导入到数据库并且要求有日志记录。(任务3)
思路:
  1. 根据不同需求选择适合的文件共享服务
  2. 根据实际情况,尽可能减少手工工作量
步骤:

 

四、yum源配置实战

####需求1:

系统使用最小化安装,现需要安装一些基础软件包,请根据系统镜像配置本地yum源

####需求2:

Centos默认使用自带的国外源,由于网络问题请将其替换为国内的阿里云源,163源,sohu源其中之一

####需求3:

通过两种方式搭建EPEL源

需求4:

搭建能够提供指定软件包的安装,如Nginx和MySQL的yum源

 

总结

1. yum源分类:

本地yum源(重点掌握)、网络yum源(掌握)、自建yum源(了解)

2. yum源的优缺点
3. 配置yum源的核心思想