Linux63期day37

远程管理服务配置文件

/etc/ssh/sshd_config   --- ssh服务端配置文件
/etc/ssh/ssh_config    --- ssh客户端配置文件

Port 22 --- 指定服务端口号 52113
ListenAddress 0.0.0.0 --- 任意主机地址都进行监听
PS: 所有服务监听的地址只能是本地网卡上有的地址
PermitRootLogin yes --- 是否允许root用户远程登录 oldboy -- su -- root (jumpserver)
PermitEmptyPasswords no --- 是否允许无密码进行远程连接
GSSAPIAuthentication yes --- 使用GSSAPI认证方式进行远程连接 影响ssh远程连接效率
UseDNS yes --- 是否进行DNS反向解析过程 影响ssh远程连接效率

远程管理防范入侵

1. 尽量使用秘钥认证 不要使用密码认证(密码复杂 定期修改)
2. 尽量让架构中的服务器没有外网网卡
3. 对于拥有外网地址服务器,做好服务地址监听,提高安全性
4. 防火墙服务/硬件, 根据业务情况,做安全访问控制         ACL访问控制  ASA
5. 监控系统重要文件是否被修改    inotify 对比指纹信息(zabbix)
   /etc/
   /var/
6. 给重要文件信息上锁 chattr
   用户相关文件上锁: passwd shadow group groupshadow
   服务程序运行相关: rc.local profile.d/ crond
   系统环境配置相关: profile bashrc ifcfg-eth0 reslove.conf rsyncd.conf 

批量管理服务概念介绍 ansible saltstack

同时并行管理多台主机
1,实现批量分发数据信息
2, 实现批量部署软件服务
3, 实现批量收集系统信息  资产管理
4, 实现批量自动管理应用  代码上线  服务重启

ansible软件特点
a 部署安装简单方便
b 软件不需要启动服务
c 客户端不需要进行配置
d 功能作用非常强大

ansible软件部署过程:

管理端:
第一个里程: 安装软件
yum install -y ansible
ansible.cfg   --- ansible程序配置文件 默认配置即可 
hosts         --- 主机清单文件
roles
 被管理端:  
确认防火请和selinux安全服务是否关闭

如何配置使用软件

1) 主机清单配置 
vim /etc/ansible/hosts
172.16.1.41                  --- ansible管理端可以管理的主机信息

主机清单配置方法:
官方参考: https://docs.ansible.com/ansible/latest/user_guide/intro_inventory.html
方法一: 直接写上管理主机IP地址信息
172.16.1.41
172.16.1.31
172.16.1.7

进行测试:
ansible 172.16.1.31,172.16.1.41 -m ping    --- 单台或多台主机测试
ansible all -m ping                        --- 对所有管理主机测试

方法二: 按照分组信息进行配置   *****
[rsync_server]
172.16.1.41

[rsync_client]
172.16.1.31
172.16.1.7

进行测试:
ansible rsync_client -m ping

方法三: 设置管理主机连接参数(ansible程序内置变量)信息
[rsync_server]
172.16.1.41  ansible_user=root ansible_password=654321 ansible_port=22

[rsync_server]
backup  ansible_host=172.16.1.41 ansible_user=root ansible_password=654321 ansible_port=22

[rsync_server]
www.oldboy.com ansible_user=root ansible_password=654321 ansible_port=22

ansible_user      --- 指定远程连接用户信息
ansible_password  --- 指定远程连接用户密码
ansible_port      --- 指定远程连接服务端口
ansible_host      --- 可以使用主机名称进行管理  参数后面指定IP地址  参数前面指定主机名信息  

方法四: 嵌入式配置主机清单
[rsync:children]
rsync_server
rsync_client

[rsync_server]
www.oldboy.com ansible_host=172.16.1.41 ansible_user=oldboy ansible_password=654321 ansible_port=22

[rsync_client]
172.16.1.31
172.16.1.7

进行测试:
ansible rsync -m ping

[rsync_client]
172.16.1.31
172.16.1.7
[rsync_client:vars]        --- 对管理组中所有主机信息,统一设置变量
ansible_user=root
ansible_password=654321
ansible_port=22

方法五: 使用匹配符号信息,匹配多个主机
[rsync_client]
172.16.1.[1:7]

[rsync_client]
web-[a:z]

遇到的问题:
问题一:
172.16.1.41 | UNREACHABLE! => {
"changed": false,
"msg": "Failed to connect to the host via ssh: ssh: connect to host 172.16.1.41 port 22: Connection refused",
"unreachable": true
}
排错方法:
01. 利用ssh命令远程连接测试

问题二:
172.16.1.41 | UNREACHABLE! => {
    "changed": false, 
    "msg": "Failed to connect to the host via ssh: Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).", 
    "unreachable": true
}
排错:
01. 分发公钥信息

问题三:
[root@m01 ansible]# ansible 172.16.1.31 -m ping
[WARNING]: Could not match supplied host pattern, ignoring: 172.16.1.31

[WARNING]: No hosts matched, nothing to do
排错:
01. 修改主机清单信息
只有主机清单中定义主机信息,可以被ansible管理

掌握功能模块

第一个模块: command  命令模块 批量执行命令   默认模块
ansible oldboy -m command -a "hostname"

第二个模块: shell    命令模块 批量执行命令   万能模块  
ansible oldboy -m shell -a "yum install -y htop"
ansible oldboy -m shell -a "cd /tmp;pwd"

第一个里程: 编写脚本
第二个里程: 将脚本进行分发
ansible oldboy -m copy -a "src=/server/scripts/create_user.sh dest=/server/scripts/"
第三个里程: 修改脚本权限
ansible oldboy -m file -a "path=/server/scripts/create_user.sh mode=755"
第四个里程: 批量执行脚本
ansible oldboy -m shell -a "/server/scripts/create_user.sh"

第三个模块: script   命令模块 批量运行脚本  
第一个里程:  编写脚本 
第二个里程: 批量执行脚本
ansible oldboy -m script -a "/server/scripts/create_user.sh"



补充: 如何学习模块使用方法:
01. 简单了解模块作用
    command – Execute commands on targets  在目标主机上执行命令模块
02. 模块详细说明
03. 掌握模块参数用法
    根据样例学习参数信息
    
#学习ansible会有不同颜色提示
01. 绿色: 对主机信息进行查看, 操作执行成功
02. 黄色: 对主机信息进行查看, 对主机中信息有调整修改
03. 紫色: 错误提示信息, 建议忠告信息
04. 红色: 报错提示信息  
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容