Este repo contiene los elementos para construir y correr una imagen containerizada del servidor del Laboratorio de Redes.
Si se tiene instalado docker y docker compose simplemente hay que hacer:
docker compose up
en el diretorio principal. Esto:
- Construye una imagen del servidor haciendo docker build (en caso de que no esté ya construida).
- Crea una red local en la IP 172.20.0.0/24 y coloca al servidor en la IP 172.20.0.2.
- Pone a correr todos los servicios.
Para apagar el servidor y limpiar las instancias creadas simpolemente hacer:
docker compose down
- HTTP: Servidor HTTP (lighttpd) en puerto 80. Probar navegar a http://172.20.0.2/ para ver el sitio del lab.
- SMTP: Servidor SMTP (postfix) con cuentas para usuarios locales tipo
ort-grupoX@mail.lab.ort.edu.uyconXde 1 a 4. - POP3: Servidor POP3 (dovecot) para leer el mail de estas mismas cuentas.
- FTP: Servidor FTP y archivos de prueba en
/home/publico/ - TELNET: Servidor TELNET.
- SSH: Servidor SSH.
- DNS: Servidor DNS (bind9) que define la zona local y reversa lab.ort.edu.uy. A su vez funciona como servidor recursivo para hacer consultas a los servidores raíz y poder capturar las consultas intermedias.
ort-grupoXcon igual password, X=1...4 para probar diferentes envíos de mail y opciones de login.redescon igual password y permiso de administrador (sudo) para ejecutar por ejemplo scripts que requieran permisos especiales.
Para acceder a una consola en el servidor:
-
Loguearse por ssh con el usuario
redes:redes. En este caso tenemos permiso de administrador a través desudo. -
Ejecutar una terminal raíz directamente en el contenedor haciendo:
docker exec -it <contenedor> /bin/bashdonde
<contenedor>es el nombre del contenedor iniciado (típicamentedockerserver-servidor_redes-1).
Clonando este repo se construye la imagen de cero y se agregan y pueden ver y modificar todas las configuraciones en la carpeta confs a gusto.
Si simplemente se desea correr el servidor tal cual está publicado, se puede utilizar el siguiente
docker-compose.yaml, que baja la imagen más reciente directo desde el registro de Github. A los efectos de correr el laboratorio esto es suficiente.