Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Servers (https://www.clubdelphi.com/foros/forumdisplay.php?f=9)
-   -   Port Knocking (https://www.clubdelphi.com/foros/showthread.php?t=93523)

ElChicoNuevo 26-10-2018 21:36:12

Port Knocking
 
Hola a todos,

Me estreno con mi primer post con una consultita. Hace AÑOS ya hice algunas cositas en delphi (v3 de hecho) pero la vida me llevó por otros caminos y abandoné la programación. Ahora, a modo de pasatiempo, he retomado y me he propuesto hacer un software para una necesidad muy concreta que tengo: hacer port knoking a firewals que administro.

En esencia, la técnica de Port Knock consiste en "tocar" determinados puertos de un router, en una secuencia concreta. El router previamente configurado para ello, permite entonces el acceso administrativo. Esos "toques" pueden ser en TCP o UDP... pero para no hacerlo más largo, quizás os interese buscar en Wikipedia Port knoking o Golpeo de puertos.

Pues bien, resulta que no he encontrado una aplicación que me permita almacenar un listado de routers (IP/Puertos/Protocolo) y he decidido hacérmelo yo mismo (ya... ambicioso para empezar.)


El problema inicial con el que me encuentro es con el propio golpeo de puertos. Lo consigo fácilmente con IdTCPClient y de hecho, veo el intento de conexión en el router (eso es correcto), pero al tocar el puerto (IdTCPClient1.Connect;) y no haber respuesta, me encuentro con un "socket error, connection refused" porque, obviamente, el router no contesta al intento de conexión (es así).

Lo lindo del asunto es que todo funciona, pero me gustaría saber cómo controlar ese error para no mostrarlo y quede todo más bonito.

Por otro lado, si hay una forma más elegante de hacerlo y que no contemple el uso de IdTCPClient, estoy abierto a sugerencias.


Paciencia conmigo... estoy re-aprendiendo :-D

Casimiro Notevi 27-10-2018 02:58:36

Lee sobre try except.
Página 229 de La cara oculta de delphi

ElChicoNuevo 28-10-2018 10:43:39

Muchas gracias @Casimiro!

ElChicoNuevo 28-10-2018 10:54:11

Tan sólo confirmarte que tengo el error dominado y puedo seguir avanzando. Nuevamente ¡GRACIAS!


La franja horaria es GMT +2. Ahora son las 04:40:49.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi