import paramiko import os import time SERVER_HOST = "172.17.0.253" SERVER_USER = "itguys" PASSWORD = "vR7Ag$Pk" def fetch_log(remote_path, local_path): print(f"[*] Fetching {remote_path} -> {local_path}") client = paramiko.SSHClient() client.set_missing_host_key_policy(paramiko.AutoAddPolicy()) try: client.connect(SERVER_HOST, username=SERVER_USER, password=PASSWORD) # Usando sudo cat para garantir acesso stdin, stdout, stderr = client.exec_command(f"echo '{PASSWORD}' | sudo -S tail -n 50 {remote_path}", get_pty=False) # Captura a saída content = stdout.read().decode('utf-8') err = stderr.read().decode('utf-8') if content: with open(local_path, 'w', encoding='utf-8') as f: f.write(content) print(f" [OK] Salvo em {local_path}") else: print(f" [!] Nenhum conteúdo ou erro: {err}") client.close() except Exception as e: print(f" [!] Erro: {e}") if __name__ == "__main__": if not os.path.exists("logs"): os.makedirs("logs") fetch_log("/etc/nginx/nginx.conf", "logs/remote_nginx.conf") client = paramiko.SSHClient() client.set_missing_host_key_policy(paramiko.AutoAddPolicy()) client.connect(SERVER_HOST, username=SERVER_USER, password=PASSWORD) fetch_log("/var/log/nginx/ferreirareal.com.br.access.log", "logs/ferreirareal.access.log") fetch_log("/var/log/nginx/access.log", "logs/global.access.log")