gucharbon.setup_ubuntu
设置 Ubuntu
快速设置一个 Ubuntu Xenial 或 Focal 服务器。这包括:
- 用户创建
- SSH 配置
- 使用
apt-get
安装软件包 - 使用
pip
安装 Python 包 - 使用
ufw
配置防火墙
需求
您只需拥有对远程主机的 SSH 访问权限即可使用此角色。
角色变量
变量 | 默认值 | 描述 |
---|---|---|
upgrade_dist |
true |
如果为真,将更新所有软件包。 |
dpkg_options |
"force-confold,force-confdef" |
传递给 dpkg 的选项。 |
remove_packages |
[] |
要删除的软件包列表。 |
install_packages |
["vim", "dos2unix", "git", "curl", "wget", "telnet", "iputils-ping", "ufw", "sudo", "software-properties-common", "ntp", "python3", "python3-pip"] |
要安装的软件包列表。 |
user_groups |
[{ name: "docker", gid: 12345 }] |
用户组字典列表。 |
users |
请参见文件 defaults/main/users.yml |
要创建的用户。 |
enable_ufw |
true |
启用 UFW 防火墙 |
firewall_rules |
请参见文件 defaults/main/firewall.yml |
防火墙规则 (ufw)。 |
firewall_policies |
请参见文件 defaults/main/policies.yml |
防火墙规则 (ufw)。 |
示例剧本
大多数情况下,您只需要配置用户:
- hosts: localhost
vars:
user_groups:
- name: napo
users:
- name: napo
# 可选,默认被省略
gecos: Napoleon Bunnypart
# 可选,默认自动生成
uid: 1234
# 可选,默认为 True
create_home: true
# 可选,默认为 /bin/bash
shell: /bin/bash
# 可选,默认为 /home/<username>
home: /home/napo
# 默认情况下用户将存在
state: present
# 默认情况下没有密码
password: toto
# 默认情况下密码未锁定
password_lock: false
# 可选设置用户的主组(采用组名)。默认为用户名。
group: napo
# 要将用户添加到的组
groups:
- developers
# 默认情况下用户不是 sudo 用户
sudo_user: true
# 默认情况下 sudo 用户没有启用无密码 sudo
passwordless_sudo: true
# 添加 SSH 授权密钥
ssh_authorized_keys:
- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQClJomroX67L4EnZqeU9LGzNOcFGO2KJ1fsWugYsWJsxFpW/rb3t00brI4k37vw0I85owhyerlOFHT5vd+vFzIsovA8l7Bsgm/E4uLIEwHiJ3svDFcfrLosynrA3r2XQY9C7Zar/d+l1FrykanD9lAcFeMqnoMi8xLg3OWk3y75w0VQ86jruGaHnq7eqvL/7wXeW09Lut1jgYqPaVNLG6EJ+gHlq8FLUVm2/5NzRxHIrvh+03xExbRzacDdCol25Gglxm+1fljluDfIqvPM359J1o7PMJc0v5dgercM4YBFY0yAPIth6TVGDugMlTfpvbtKAGJdl/skugCZfx1U9reR napo@napoleon-XPS13
roles:
- setup_ubuntu
许可证
MIT