import os def test_packages_are_installed(host): packages = [ "nginx", "ufw", "docker-ce", "git", "nginx", "wget", "curl", "gpg", "dnsutils", "ca-certificates", "zip", "python3-pip", "virtualenv", "python3-setuptools", ] for p in packages: print(f"[*] Checking if {p} is installed") pkg = host.package(p) assert pkg.is_installed def test_ssh_is_listening(host): socket = host.socket(f"tcp://0.0.0.0:22") assert socket.is_listening def test_docker_is_installed(host): keyring_dir = host.file("/etc/apt/keyrings") assert keyring_dir.exists assert keyring_dir.is_directory def test_ufw_service_running_and_enabled(host): service = host.service("ufw") assert service.is_running assert service.is_enabled def test_ssh_service_running_and_enabled(host): service = host.service("ssh") assert service.is_running assert service.is_enabled def test_nginx_service_running_and_enabled(host): service = host.service("nginx") assert service.is_running assert service.is_enabled # # # def test_fail2ban_is_installed(host): # pkg = host.package("fail2ban") # assert pkg.is_installed # # # def test_fail2ban_is_enabled_and_running(host): # service = host.service("fail2ban") # assert service.is_running # assert service.is_enabled # # def test_ssh_is_installed(host): pkg = host.package("openssh-server") assert pkg.is_installed # # def test_ssh_is_enabled_and_running(host): # service = host.service("sshd") # assert service.is_running # assert service.is_enabled