La ubicación de los materiales del proyecto es la siguiente:
- Informe:
/docs - Código fuente:
/src - Makefiles: El principal en
/, uno en/src/clienty otro en/src/server.
Para generar los ejecutables del proyecto, sitúese en la raíz y ejecute:
make clean
make allUna vez finalizada la compilación, los ejecutables se encontrarán en:
./bin/
Los archivos generados son:
serverclient
Los ejecutables del proyecto se generan en el directorio bin/. Asegúrese de estar en la raíz del proyecto antes de ejecutarlos.
El servidor maneja las conexiones y el tráfico.
./bin/server [OPTIONS]-h Imprime la ayuda y termina la ejecución.
-l <SOCKS addr> Dirección IP donde se servirá el proxy SOCKS.
-p <SOCKS port> Puerto TCP para conexiones entrantes SOCKS.
-L <MNG addr> Dirección IP para el servicio de gestión.
-P <MNG port> Puerto UDP para las conexiones del manager.
-u <usr>:<pass> Usuario y contraseña iniciales para autenticación.
-v Imprime información sobre la versión del servidor../bin/server -p 8080 -P 8081 -u admin:admin123La herramienta de monitoreo permite realizar cambios en tiempo de ejecución (como agregar usuarios) y consultar métricas sin detener el servidor.
./bin/client <host:port> -l <admin:pass> [ACCIÓN]<host:port> Dirección y puerto del servicio de gestión (coinciden con -L y -P del servidor). Debe ser el primer parámetro.
-l <user:pass> Credenciales de administrador. Obligatorio para cualquier operación.-a <user:pass> Da de alta un usuario con privilegios estándar.
-A <user:pass> Da de alta un usuario con privilegios de administrador.
-d <user> Elimina un usuario existente.
-c <user:newpass> Modifica la contraseña de un usuario.
-m <method_1> ... <method_n> Modifica los métodos de autenticación aceptados en tiempo de ejecución.
(Valores RFC: 0 = No Auth, 2 = User/Pass).
-s Muestra estadísticas del servidor (bytes, conexiones, etc.).
-h Muestra la ayuda../bin/client 127.0.0.1:8081 -l admin:admin123 -s./bin/client 127.0.0.1:8081 -l admin:admin123 -a kaladin:stormblessed# Cambiar a NO AUTH (Permitir acceso libre)
./bin/client 127.0.0.1:8081 -l admin:admin123 -m 0
# Volver a requerir usuario y contraseña
./bin/client 127.0.0.1:8081 -l admin:admin123 -m 2
# Permitir ambas opciones
./bin/client 127.0.0.1:8081 -l admin:admin123 -m 0 2