68 lines
1.2 KiB
JSON
68 lines
1.2 KiB
JSON
[
|
|
{
|
|
"name": "install packages",
|
|
"become": true,
|
|
"ansible.builtin.apt": {
|
|
"update_cache": true,
|
|
"pkg": [
|
|
"nginx",
|
|
"openssl"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"name": "generate dhparams file",
|
|
"become": true,
|
|
"ansible.builtin.command": "openssl dhparam -out /etc/nginx/dhparam 4096",
|
|
"args": {
|
|
"creates": "/etc/nginx/dhparam"
|
|
}
|
|
},
|
|
{
|
|
"name": "place hardening config",
|
|
"become": true,
|
|
"ansible.builtin.copy": {
|
|
"src": "ssl-hardening.conf",
|
|
"dest": "/etc/nginx/ssl-hardening.conf"
|
|
}
|
|
},
|
|
{
|
|
"name": "Check wether enabling UFW would be considered a changed",
|
|
"become": true,
|
|
"check_mode": true,
|
|
"community.general.ufw": {
|
|
"state": "enabled",
|
|
},
|
|
"register": "ufw_enable_check"
|
|
},
|
|
{
|
|
"name": "Allow port 80 in ufw",
|
|
"when": "not ufw_enable_check.changed",
|
|
"become": true,
|
|
"community.general.ufw": {
|
|
"rule": "allow",
|
|
"port": "80",
|
|
"proto": "tcp"
|
|
}
|
|
},
|
|
{
|
|
"name": "Allow port 443 in ufw",
|
|
"when": "not ufw_enable_check.changed",
|
|
"become": true,
|
|
"community.general.ufw": {
|
|
"rule": "allow",
|
|
"port": "443",
|
|
"proto": "tcp"
|
|
}
|
|
},
|
|
{
|
|
"name": "restart service",
|
|
"become": true,
|
|
"ansible.builtin.systemd_service": {
|
|
"state": "restarted",
|
|
"name": "nginx"
|
|
}
|
|
}
|
|
]
|
|
|