47 lines
1.6 KiB
Python
Executable File
47 lines
1.6 KiB
Python
Executable File
#!/usr/bin/env python3
|
|
"""
|
|
Script de prueba para verificar la conexión con el servidor de correo Webmin
|
|
"""
|
|
import socket
|
|
|
|
def test_connection(host, port, service_name):
|
|
"""Prueba la conexión a un puerto específico"""
|
|
try:
|
|
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
|
sock.settimeout(5)
|
|
result = sock.connect_ex((host, port))
|
|
sock.close()
|
|
|
|
if result == 0:
|
|
print(f"✓ {service_name} (puerto {port}): CONECTADO")
|
|
return True
|
|
else:
|
|
print(f"✗ {service_name} (puerto {port}): NO DISPONIBLE")
|
|
return False
|
|
except Exception as e:
|
|
print(f"✗ {service_name} (puerto {port}): ERROR - {e}")
|
|
return False
|
|
|
|
if __name__ == '__main__':
|
|
print("Probando conexión con servidor Webmin...")
|
|
print("=" * 50)
|
|
|
|
host = '10.10.0.101'
|
|
|
|
# Probar puertos
|
|
results = []
|
|
results.append(test_connection(host, 20000, 'Webmin Web Interface'))
|
|
results.append(test_connection(host, 25, 'SMTP'))
|
|
results.append(test_connection(host, 143, 'IMAP'))
|
|
results.append(test_connection(host, 110, 'POP3'))
|
|
|
|
print("=" * 50)
|
|
if all(results[1:]): # Ignorar webmin interface para el resultado
|
|
print("✓ Todos los servicios de correo están disponibles")
|
|
else:
|
|
print("⚠ Algunos servicios de correo no están disponibles")
|
|
print("\nSugerencias:")
|
|
print("1. Verifica que el servidor Webmin esté en ejecución")
|
|
print("2. Comprueba la configuración del firewall")
|
|
print("3. Verifica que los servicios de correo estén habilitados en Webmin")
|