minimum files for terraform as a module
This commit is contained in:
parent
83e831163d
commit
acc427c902
|
@ -0,0 +1,39 @@
|
||||||
|
# you must prefixe path with "${path.module}/"
|
||||||
|
resource "null_resource" "fail2ban" {
|
||||||
|
# triggers = {
|
||||||
|
# source = filesha256("${path.module}/script")
|
||||||
|
# }
|
||||||
|
connection {
|
||||||
|
type = "ssh"
|
||||||
|
user = "root"
|
||||||
|
host = var.connection_ip
|
||||||
|
private_key = var.connection_private_key
|
||||||
|
}
|
||||||
|
|
||||||
|
# provisioner "file" {
|
||||||
|
# source = "${path.module}/script"
|
||||||
|
# destination = "/tmp"
|
||||||
|
# }
|
||||||
|
|
||||||
|
provisioner "remote-exec" {
|
||||||
|
inline = [
|
||||||
|
"echo '#-----------------------'",
|
||||||
|
"echo '# module alpine_fail2ban'",
|
||||||
|
"echo '#-----------------------'",
|
||||||
|
"echo '# install fail2ban'",
|
||||||
|
"apk add fail2ban",
|
||||||
|
#
|
||||||
|
"echo '# enable service fail2ban'",
|
||||||
|
"rc-update add fail2ban",
|
||||||
|
"rc-service fail2ban start",
|
||||||
|
#
|
||||||
|
"echo '# install helpers'",
|
||||||
|
"ln -s /etc/fail2ban /root/fail2ban",
|
||||||
|
"ln -s 'fail2ban-client status' /etc/fail2ban/0_status",
|
||||||
|
"ln -s 'fail2ban-client set sshd unbanip x.x.x.x' /etc/fail2ban/1_unban",
|
||||||
|
"ln -s 'fail2ban-client reload sshd' /etc/fail2ban/2_reload",
|
||||||
|
"echo '# module DONE'",
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,11 @@
|
||||||
|
variable "connection_ip" {
|
||||||
|
type = string
|
||||||
|
description = "ipv4"
|
||||||
|
}
|
||||||
|
|
||||||
|
variable "connection_private_key" {
|
||||||
|
type = string
|
||||||
|
description = "private key for terraform connection"
|
||||||
|
sensitive = true
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue