如何使用Ansible对新安装的Linux服务器进行自动化配置【运维】

陌磊君_7334

陌磊君_7334

2026-04-07

719人浏览

原创

可使用ansible实现linux服务器基础环境、安全策略与常用服务的无交互自动化配置:包括ssh免密连接、系统初始化、ssh加固、工具部署及防火墙日志策略。

如何使用ansible对新安装的linux服务器进行自动化配置【运维】

如果您刚完成一台Linux服务器的初始安装,需要快速统一配置基础环境、安全策略和常用服务,则可以使用Ansible实现无交互、可复用的自动化配置。以下是具体实施步骤:

一、准备Ansible控制节点与目标主机连接

Ansible通过SSH协议管理远程主机,需确保控制节点能免密登录目标服务器,并具备Python运行环境。此步骤为后续所有操作的前提。

1、在控制节点上安装Ansible:pip install ansible 或使用系统包管理器(如 apt install ansible)。

2、生成SSH密钥对:ssh-keygen -t ed25519 -f ~/.ssh/id_ansible -N ""。

3、将公钥复制至目标服务器:ssh-copy-id -i ~/.ssh/id_ansible.pub user@target_ip。

4、创建Ansible主机清单文件 inventory.ini,内容为:[servers] 192.168.1.100 ansible_user=user ansible_ssh_private_key_file=~/.ssh/id_ansible。

二、编写基础系统初始化Playbook

该Playbook用于执行首次启动后的标准化操作,包括更新软件源、升级系统、禁用IPv6、配置时区与NTP等不可逆的基础设置。

1、创建文件 init.yml,定义 gather_facts: true 以获取目标主机信息。

2、使用 apt 模块更新缓存并升级所有包:apt: update_cache=yes upgrade=dist(Debian/Ubuntu)。

3、使用 yum 模块执行等效操作:yum: name=* state=latest update_cache=yes(RHEL/CentOS)。

4、禁用IPv6内核参数:lineinfile: path=/etc/sysctl.conf line='net.ipv6.conf.all.disable_ipv6 = 1' create=yes,随后执行 sysctl -p。

5、配置时区与时间同步:timezone: name=Asia/Shanghai,并启用 systemd_service: name=chronyd enabled=yes state=started。

三、配置SSH安全加固策略

默认SSH配置存在弱策略风险,本方法通过Ansible批量修改sshd_config并重载服务,提升远程访问安全性。

1、备份原始配置:copy: src=/etc/ssh/sshd_config dest=/etc/ssh/sshd_config.backup owner=root group=root mode='0600'。

2、禁用密码认证:lineinfile: path=/etc/ssh/sshd_config regexp='^PasswordAuthentication' line='PasswordAuthentication no'。

3、限制登录用户列表:lineinfile: path=/etc/ssh/sshd_config line='AllowUsers admin deploy' create=yes。

4、修改SSH端口(可选):lineinfile: path=/etc/ssh/sshd_config regexp='^Port' line='Port 2222'。

5、重载SSH服务:systemd: name=sshd state=reloaded(或 service: name=sshd state=reloaded)。

四、部署常用运维工具与用户环境

为新服务器预装高频工具(如htop、curl、jq、vim-enhanced)并为指定用户配置标准shell环境,减少手动干预。

1、使用 apt 或 yum 模块安装工具集:name: ["htop", "curl", "jq", "vim-enhanced"] state=present。

2、创建专用运维用户:user: name=deploy shell=/bin/bash generate_ssh_key=yes ssh_key_bits=4096。

3、将公钥注入用户authorized_keys:authorized_key: user=deploy key="{{ lookup('file', '/home/admin/.ssh/id_rsa.pub') }}"。

4、配置用户默认bashrc,添加别名与提示符:copy: src=files/.bashrc dest=/home/deploy/.bashrc owner=deploy group=deploy mode='0644'。

五、应用防火墙与日志保留策略

通过Ansible统一启用UFW(Ubuntu)或firewalld(RHEL),并调整rsyslog保留周期,满足基础合规性要求。

1、对于Ubuntu系统,启用UFW并放行必要端口:ufw: state=enabled policy=deny rule=allow port=2222 proto=tcp(若已改SSH端口)。

2、对于RHEL系统,启用firewalld并开放服务:firewalld: service=ssh permanent=yes state=enabled,随后执行 firewalld: service=ntp permanent=yes state=enabled。

3、修改rsyslog配置以保留90天日志:lineinfile: path=/etc/rsyslog.conf line='$ActionFileDefaultTemplate RSYSLOG_ForwardFormat' insertafter='^\$ActionFileDefaultTemplate' create=yes。

4、设置logrotate规则:copy: src=files/logrotate.d/syslog dest=/etc/logrotate.d/syslog owner=root group=root mode='0644',其中包含 rotate 90 指令。

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
pip安装使用方法
pip安装使用方法

安装步骤:1、确保Python已经正确安装在您的计算机上;2、下载“get-pip.py”脚本;3、按下Win + R键,然后输入cmd并按下Enter键来打开命令行窗口;4、在命令行窗口中,使用cd命令切换到“get-pip.py”所在的目录;5、执行安装命令;6、验证安装结果即可。大家可以访问本专题下的文章,了解pip安装使用方法的更多内容。

2023.10.09

2890

5

更新pip版本
更新pip版本

更新pip版本方法有使用pip自身更新、使用操作系统自带的包管理工具、使用python包管理工具、手动安装最新版本。想了解更多相关的内容,请阅读专题下面的文章。

2024.12.20

6623

6

pip设置清华源
pip设置清华源

设置方法:1、打开终端或命令提示符窗口;2、运行“touch ~/.pip/pip.conf”命令创建一个名为pip的配置文件;3、打开pip.conf文件,然后添加“[global];index-url = https://pypi.tuna.tsinghua.edu.cn/simple”内容,这将把pip的镜像源设置为清华大学的镜像源;4、保存并关闭文件即可。

2024.12.23

8242

11

python升级pip
python升级pip

本专题整合了python升级pip相关教程,阅读下面的文章了解更多详细内容。

2025.07.23

4127

16

curl_exec
curl_exec

curl_exec函数是PHP cURL函数列表中的一种,它的功能是执行一个cURL会话。给大家总结了一下php curl_exec函数的一些用法实例,这个函数应该在初始化一个cURL会话并且全部的选项都被设置后被调用。他的返回值成功时返回TRUE, 或者在失败时返回FALSE。

2023.06.14

3563

6

linux常见下载安装工具
linux常见下载安装工具

linux常见下载安装工具有APT、YUM、DNF、Snapcraft、Flatpak、AppImage、Wget、Curl等。想了解更多linux常见下载安装工具相关内容,可以阅读本专题下面的文章。

2023.10.30

795

4

vim保存退出命令
vim保存退出命令

vim是一个非常强大的文本编辑器,常用于Unix和Linux系统。它是从vi发展而来的,相比vi有许多改进和扩展。在vim中,保存并退出的命令是:wq"wq"这个命令是由两个部分组成的。其中,"w"表示写入文件,将所做的更改保存到磁盘;而"q"表示退出vim编辑器。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.08.01

329

3

磁盘配额是什么
磁盘配额是什么

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。php中文网为大家提供各种磁盘配额相关的内容,教程,供大家免费下载安装。

2023.06.21

4010

4

如何安装LINUX
如何安装LINUX

本站专题提供如何安装LINUX的相关教程文章,还有相关的下载、课程,大家可以免费体验。

2023.06.29

3413

10

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
phpStudy极速入门视频教程
phpStudy极速入门视频教程

共6课时 | 54.7万人学习

独孤九贱(4)_PHP视频教程
独孤九贱(4)_PHP视频教程

共89课时 | 133.7万人学习