uredir
es un pequeño demonio de Linux para redirigir conexiones UDP. Se puede utilizar para reenviar conexiones en sistemas pequeños e integrados que no tienen (o no quieren usar) iptables.
uredir
se puede utilizar con el servicio inetd integrado en Finit para escuchar, por ejemplo, conexiones SNMP, en algunas interfaces (seguras) y reenviar a un demonio SNMP en loopback.
uredir
permanece durante tres (3) segundos después de enviar una respuesta. Esto para evitar que inetd genere nuevas instancias para múltiples conexiones, por ejemplo, una caminata SNMP.Para un redirector de puerto TCP, consulte redir.
uredir [-hinsv] [-I NAME] [-l LEVEL] [-t SEC] [SRC:PORT] DST:PORT
-h Show this help text
-i Run in inetd mode, get SRC:PORT from stdin, implies -n
-I NAME Identity, tag syslog messages with NAME, default: uredir
-l LVL Set log level: none, err, info, notice (default), debug
-n Run in foreground, do not detach from controlling terminal
-s Use syslog, even if running in foreground, default w/o -n
-t SEC Timeout for connections, default 3 seconds
-v Show program version
Bug report address: https://github.com/troglobit/uredir/issues
Este sencillo ejemplo de proxy UDP reenvía solicitudes DNS entrantes en cualquier interfaz a un servidor DNS externo en 192.168.0.1:
uredir :53 192.168.0.1:53
Para ejecutar uredir
desde un monitor de proceso como Finit o systemd, dígale que no se ponga en segundo plano y que solo use syslog para mensajes de registro:
uredir -ns :53 127.0.0.1:53
Para ejecutar uredir
en modo inetd, por ejemplo, para redirigir solicitudes SNMP, intente lo siguiente. Se ejecuta en primer plano, según lo requieren los servicios inetd, y utiliza syslog para iniciar sesión:
snmp dgram udp wait root uredir -i 127.0.0.1:16161
uredir
está diseñado para sistemas Linux y debe compilarse con cualquier biblioteca C (antigua). Sin embargo, uredir
v3.0 y posteriores requieren una biblioteca externa, libuEv. Instalarlo no debería presentar sorpresas ya que también utiliza un script configure
estándar y admite pkg-config
. La compilación uredir
utiliza este último para localizar la biblioteca y los archivos de encabezado.
Por lo tanto, el ./configure && make
normal suele ser suficiente para compilar uredir
. Pero si libuEv está instalado en una ubicación no estándar, es posible que deba proporcionar la ruta:
PKG_CONFIG_PATH=/opt/lib/pkgconfig:/home/ian/lib/pkgconfig ./configure
make
El proyecto uredir
es de código abierto bajo la licencia ISC y se mantiene activamente en GitHub. Utilice su interfaz para informar errores y solicitudes de extracción.
uredir
se inspiró en gran medida en redir(1), de Sam Creasey.