Le Wed, Mar 17, 1999 at 07:58:29PM +0100, Henry-Pascal ELDIN disait:
> Bonjour,
> >
> > Je ne comprend pas tres bien l'interet de klaxon.
> >
> > dans inetd.conf:
> > tcpmux stream tcp nowait nobody /usr/sbin/tcpd /bin/false
> > (je note au passage que klaxon s'execute sous root)
> > et dans hosts.allow :
> > false:ALL: spawn /bin/echo ! ALERTE ! gros mechant detecte depuis %u@%n | logger -i -p local3.warning -t tcmmux
> >
> > On obtiens exeactement la meme chose. Avec un deamon root de moins.
> > De plus klaxon ajoute un message de plus au scan proprement dis.
> >
>
> Ce truc m'a fortement interressé, c'est vrai, j'ai pas lu la doc de tcpd
> en entier, mais j'ai quand meme un problème avec le coup de l'appel de
> false c'est que la c'est un service, or, je logge tous les ports
> et j'ai pas trouvé comme passer comme paramètre le port scanné dans la
> ligne de commande de hosts.allow.
Exacte ! tcpd etant lance par inetd, il ne connais pas le port ouvert.
La solution etant de retrouver toute les infos sur le socket courrant
en examinant les carracteristiques de stdin ou stdout. Ca devrait se
faire avec qq lignes de perl (cf perlipc(1) )
> L'idée, c'est de logger les machines pour les mettre dans une liste noire
> et d'envoyer un email à l'admin pour lui signaler que c'est pas trop sympa,
> ca avant d'automatiser un coup de syndrop ou équivalent si la machine insiste !
> Dans l'exemple sur tcpmux, ca marche bien, mais comment faire avec tous les ports.
> Avec klaxon, j'ai le port scanné dans le syslog et avec wots, je le récupère en
> temps réel !
La tendance actuelle est plutot de faire disparaitre les scans des logs car ils
sont tres courrants. Quand le scan est visible dans les logs on peut considerer
le visiteur comme non dangereux car il exite un multitude de methodes de scan invisible
dans les log. Il existe des sous windows des scaners en shareware pas tres performants
qui pourrissent les fichiers journalisation. ( Un clic=100 lignes de log :( )
On peut pas non plus considerer que le scan est une intrusion, ton mail à l'admin
risque de finir a la poubelle.
Si ta machine n'est PAS un serveur, ie que tu as peu de connexions entrantes, tu
peux demander au firewall de logguer toutes connexions entrantes avec un :
ipfwadm -I -a accept -y -W eth0
ou
ipchains -A input -j ACCEPT -l -i eth0 -y (pour les noyaux 2.2).
ou mieux ! Avec
#ipfwadm -I -a accept -W eth0 -P tcp -D mon_ip www
#ipfwadm -I -a deny -W eth0 -P tcp -y -o
#ipfwadm -I -a accept -W eth0 -P tcp
ton serveur accepte toutes les connexions entrantes vers apache
mais refuse et loggue toutes les tentatives sur un autre port.
Pour une configue plus complette, regarde sur mon site.
Pour l'automatisation, il vaut mieux eviter de forker quoi que ce soit a la
reception de chaque paquet, tu risques de t'en mordre des doigts. Surtout si
tu souhaites envoyer du mail avec. Flood et saturation des resources en
perspective...
mahdi
--
mahdi
http://3276021430/