28 lines
800 B
Bash
Executable File
28 lines
800 B
Bash
Executable File
#!/bin/bash
|
|
# install_fail2ban.sh - Install and configure fail2ban on manager VM
|
|
|
|
set -euo pipefail
|
|
|
|
echo "Installing fail2ban..."
|
|
sudo apt-get update
|
|
sudo apt-get install -y fail2ban
|
|
|
|
echo "Creating fail2ban directories..."
|
|
sudo mkdir -p /etc/fail2ban/filter.d
|
|
|
|
echo "Copying custom filters..."
|
|
sudo cp /workspace/homelab/security/fail2ban/filter.d/portainer.conf /etc/fail2ban/filter.d/
|
|
sudo cp /workspace/homelab/security/fail2ban/filter.d/traefik-auth.conf /etc/fail2ban/filter.d/
|
|
|
|
echo "Copying jail configuration..."
|
|
sudo cp /workspace/homelab/security/fail2ban/jail.local /etc/fail2ban/
|
|
|
|
echo "Restarting fail2ban service..."
|
|
sudo systemctl restart fail2ban
|
|
sudo systemctl enable fail2ban
|
|
|
|
echo "Checking fail2ban status..."
|
|
sudo fail2ban-client status
|
|
|
|
echo "fail2ban installation complete."
|