Este es el comando knockd que se puede ejecutar en el proveedor de alojamiento gratuito de OnWorks utilizando una de nuestras múltiples estaciones de trabajo en línea gratuitas, como Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS.
PROGRAMA:
NOMBRE
knockd - servidor de llamada de puerto
SINOPSIS
golpeado [opciones]
DESCRIPCIÓN
golpeado es un puerto-golpe servidor. Escucha todo el tráfico en Ethernet (o PPP).
interfaz, buscando secuencias especiales de "golpe" de accesos al puerto. Un cliente hace estos port-
hits enviando un paquete TCP (o UDP) a un puerto en el servidor. Este puerto no necesita estar abierto
- dado que knockd escucha en el nivel de la capa de enlace, ve todo el tráfico incluso si está destinado
para un puerto cerrado. Cuando el servidor detecta una secuencia específica de accesos al puerto, ejecuta un
comando definido en su archivo de configuración. Esto se puede utilizar para abrir agujeros en un
cortafuegos para un acceso rápido.
LÍNEA DE COMANDO CAMPUS
-I, --interfaz
Especifique una interfaz para escuchar. El valor predeterminado es eth0.
-D, --demonio
Conviértete en un demonio. Por lo general, esto es lo que se desea para un funcionamiento normal similar al de un servidor.
-C, --config
Especifique una ubicación alternativa para el archivo de configuración. El valor predeterminado es /etc/knockd.conf.
-RE, --depurar
Mensajes de depuración de salida.
-yo, --buscar
Busque nombres de DNS para las entradas del registro. ¡Esto puede ser un riesgo para la seguridad! Mira la sección SEGURIDAD
NOTAS.
-v, --verboso
Salida de mensajes de estado detallados.
-V, --versión
Muestra la versión.
-h, --ayuda
Ayuda de sintaxis.
CONFIGURACIÓN
knockd lee todos los conjuntos de knock / event de un archivo de configuración. Cada golpe / evento comienza con
un marcador de título, en la forma [nombre], Donde nombre es el nombre del evento que aparecerá
en el registro. Un marcador especial, [opciones], se utiliza para definir opciones globales.
Ejemplo # 1:
Este ejemplo usa dos golpes. El primero permitirá que la aldaba acceda al puerto 22
(SSH), y el segundo cerrará el puerto cuando la aldaba esté completa. Como puedas
Vea, esto podría ser útil si ejecuta un firewall muy restrictivo (política DENY) y
quisiera acceder a él discretamente.
[opciones]
archivo de registro = /var/log/knockd.log
[abrir SSH]
secuencia = 7000,8000,9000
seq_timeout = 10
tcpflags = sin
comando = / sbin / iptables -A ENTRADA -s% IP% -j ACEPTAR
[cerrar SSH]
secuencia = 9000,8000,7000
seq_timeout = 10
tcpflags = sin
comando = / sbin / iptables -D ENTRADA -s% IP% -j ACEPTAR
Ejemplo # 2:
Este ejemplo usa un solo golpe para controlar el acceso al puerto 22 (SSH). Después
recibiendo un golpe exitoso, el demonio ejecutará el comando_inicio, esperen al
tiempo especificado en cmd_timeout, luego ejecute el detener_comando. Esto es útil para
cierra automáticamente la puerta detrás de una aldaba. La secuencia de detonación utiliza tanto UDP
y puertos TCP.
[opciones]
archivo de registro = /var/log/knockd.log
[abrircerrarSSH]
secuencia = 2222: udp, 3333: tcp, 4444: udp
seq_timeout = 15
tcpflags = syn, ack
start_command = / usr / sbin / iptables -A INPUT -s% IP% -p tcp --syn -j ACCEPT
cmd_tiempo de espera = 5
comando_de_parar = / usr / sbin / iptables -D ENTRADA -s% IP% -p tcp --syn -j ACEPTAR
Ejemplo # 3:
Este ejemplo no usa una única secuencia de golpes fija para desencadenar un evento, sino una
conjunto de secuencias tomadas de un archivo de secuencia (secuencias de una sola vez), especificadas por el
secuencias_únicas directiva. Después de cada golpe con éxito, la secuencia utilizada
invalidarse y la siguiente secuencia del archivo de secuencia debe usarse para un
golpe con éxito. Esto evita que un atacante realice un ataque de repetición después
haber descubierto una secuencia (por ejemplo, mientras olfatea la red).
[opciones]
archivo de registro = /var/log/knockd.log
[abrircerrarSMTP]
one_time_sequences = / etc / knockd / smtp_sequences
seq_timeout = 15
tcpflags = fin,! ack
comando_inicio = / usr / sbin / iptables -A ENTRADA -s% IP% -p tcp --dport 25 -j ACEPTAR
cmd_tiempo de espera = 5
comando_de_parar = / usr / sbin / iptables -D ENTRADA -s% IP% -p tcp --dport 25 -j ACEPTAR
CONFIGURACIÓN: GLOBAL DIRECTIVAS
Usar Syslog
Registre los mensajes de acción a través de syslog (). Esto insertará entradas de registro en su
/ var / log / messages o equivalente.
Archivo de registro = / ruta / a / archivo
Registre acciones directamente en un archivo, generalmente /var/log/knockd.log.
Archivo Pid = / ruta / a / archivo
Pidfile para usar en modo demonio, predeterminado: /var/run/knockd.pid.
Interfaz =
Interfaz de red para escuchar. Solo se debe dar su nombre, no el camino al
dispositivo (por ejemplo, "eth0" y no "/ dev / eth0"). Por defecto: eth0.
CONFIGURACIÓN: LLAMADA / EVENTO DIRECTIVAS
Secuencia = [: ] [, [: ] ...]
Especifique la secuencia de puertos en el golpe especial. Si un puerto incorrecto con el mismo
se reciben banderas, el golpe se descarta. Opcionalmente, puede definir el protocolo
para ser utilizado por puerto (el valor predeterminado es TCP).
Secuencias_únicas = / ruta / a / one_time_sequences_file
Archivo que contiene las secuencias únicas que se utilizarán. En lugar de utilizar un fijo
secuencia, knockd leerá la secuencia que se utilizará de ese archivo. Después de cada
intento de golpe exitoso esta secuencia se desactivará escribiendo un carácter '#'
en la primera posición de la línea que contiene la secuencia utilizada. Que usó secuencia
luego será reemplazado por la siguiente secuencia válida del archivo.
Debido a que el primer carácter se reemplaza por un '#', se recomienda que deje
un espacio al comienzo de cada línea. De lo contrario, el primer dígito en tu golpe
La secuencia se sobrescribirá con un '#' después de que se haya utilizado.
Cada línea en el archivo de secuencias de una sola vez contiene exactamente una secuencia y tiene la
mismo formato que el de la Secuencia directiva. Líneas que comienzan con '#'
se ignorará el carácter.
Note: ¡No edite el archivo mientras knockd se está ejecutando!
Seq_Tiempo de espera =
Tiempo para esperar a que se complete una secuencia en segundos. Si el tiempo transcurre antes de que
el golpe es completo, se descarta.
Banderas TCP = fin | syn | rst | psh | ack | urg
Solo preste atención a los paquetes que tengan esta bandera activada. Al usar banderas TCP,
knockd IGNORARÁ los paquetes tcp que no coincidan con las banderas. Esto es diferente a
el comportamiento normal, donde un paquete incorrecto invalidaría todo el golpe,
obligando al cliente a empezar de nuevo. El uso de "TCPFlags = syn" es útil si está
pruebas a través de una conexión SSH, ya que el tráfico SSH generalmente interferirá con (y
invalidar así) el golpe.
Separe varios indicadores con comas (por ejemplo, TCPFlags = syn, ack, urg). Las banderas pueden ser
explícitamente excluido por un "!" (por ejemplo, TCPFlags = syn,! ack).
Comando_de_inicio =
Especifique el comando que se ejecutará cuando un cliente realice la llamada de puerto correcta. Todos
instancias de % IP% será reemplazado por la dirección IP de la aldaba. los Comando
directiva es un alias para Comando_de_inicio.
Cmd_Tiempo de espera =
Es hora de esperar entre Comando_de_inicio y Comando_parada en segundos. Esta directiva es
opcional, solo requerido si Comando_parada se utiliza.
Comando_parada =
Especifique el comando que se ejecutará cuando Cmd_Tiempo de espera Han pasado segundos desde
Comando_de_inicio ha sido ejecutado. Todas las instancias de % IP% será reemplazado con el
dirección IP de knocker. Esta directiva es opcional.
SEGURIDAD NOTAS
Usando el -l or --buscar La opción de línea de comandos para resolver nombres DNS para entradas de registro puede ser una
¡riesgo de seguridad! Un atacante puede encontrar el primer puerto de una secuencia si puede monitorear
el tráfico DNS del host que se está ejecutando se detiene. También un anfitrión que se supone que es sigiloso (p. Ej.,
soltar paquetes en puertos TCP cerrados en lugar de responder con un paquete ACK + RST) puede dar
sí mismo resolviendo un nombre DNS si un atacante logra acceder al primer puerto (desconocido)
de una secuencia.
Use knockd en línea usando los servicios de onworks.net