Configuration de Guardian sur SME v6.0

Forum dédié à la distribution du même nom et que vous pourrez télécharger sur http://www.contribs.org. La nouvelle version de cette distribution se nomme SME Server

Modérateur: modos Ixus

Messagepar pbordere » 18 Jan 2004 01:03

Bonsoir à tous, <BR> <BR>Etant donné le nombre d'"alerte" de snort, j'ai installé guardian (celui qui est joint au snort sur le site de MasterSleepy) et là : <BR> <BR> <BR> <BR>[root@sme home]# rpm -ivh trevor-mitel-guardian-2.0-1.noarch.rpm <BR>Preparing... ########################################### [100%] <BR>1:trevor-mitel-guardian ########################################### [100%] <BR> <BR>Installation complete. <BR>Starting guardian: OS shows Linux <BR>Warning! HostIpAddr is undefined! Attempting to guess.. <BR>Couldn't figure out the ip address <BR>[ ECHOUE ] <BR> <BR> <BR> <BR>Effectivement une des lignes du fichier de config reste commentée. <BR> <BR>Mais comment la modifier pour que tout changement d'IP soit pris en compte ? <BR>Il faudrait utiliser la variable "ExternalIP" utilisée par les templates ... mais là je bloque. <BR> <BR>Je sais qu'il y a des champions des templates..... <BR> <BR>ou peut être une solution plus simple <BR> <BR> <BR> <BR> <IMG SRC="images/smiles/icon_help.gif"> <IMG SRC="images/smiles/icon_help.gif"> <IMG SRC="images/smiles/icon_help.gif"> <IMG SRC="images/smiles/icon_help.gif"> <IMG SRC="images/smiles/icon_help.gif"> <IMG SRC="images/smiles/icon_help.gif"> <IMG SRC="images/smiles/icon_help.gif"> <IMG SRC="images/smiles/icon_help.gif"> <IMG SRC="images/smiles/icon_help.gif"> <IMG SRC="images/smiles/icon_help.gif"> <IMG SRC="images/smiles/icon_help.gif"> <IMG SRC="images/smiles/icon_help.gif">
Philippe
Avatar de l’utilisateur
pbordere
Lieutenant de vaisseau
Lieutenant de vaisseau
 
Messages: 207
Inscrit le: 08 Déc 2003 01:00
Localisation: Limoges - France

Messagepar MasterSleepy » 18 Jan 2004 11:18

Salut, <BR> <BR>Pourrais-tu envoyer ce fichier de config. <BR> <BR>Merci, <BR>A+
"Microsoft fera quelque chose qui ne plantera jamais quand ils commenceront à fabriquer des clous "
http://www.vanhees.cc
Avatar de l’utilisateur
MasterSleepy
Amiral
Amiral
 
Messages: 2625
Inscrit le: 24 Juil 2002 00:00
Localisation: Belgique

Messagepar pbordere » 18 Jan 2004 12:27

Ok <BR> <BR>Fichier transmis en message privée. <BR> <BR>Merci
Philippe
Avatar de l’utilisateur
pbordere
Lieutenant de vaisseau
Lieutenant de vaisseau
 
Messages: 207
Inscrit le: 08 Déc 2003 01:00
Localisation: Limoges - France

Messagepar MasterSleepy » 18 Jan 2004 15:59

OK après y avoir regardé, la rubrique hostipaddr n'est pas forcément obligatoire. <BR>Il le précise juste au dessus, OK c'est en anglais <IMG SRC="images/smiles/icon_wink.gif"> , que si c'est pas mentionné guardian essayera de la déterminé via ipconfig. <BR>Donc si ton interface externe est bien eth1, guardian ira détecté ton IP lors du lancement. <BR>A mon avis le seul problème viendra au moment du renouvellement d'IP, il faudra probablement relancer guardian. <BR> <BR>A+
"Microsoft fera quelque chose qui ne plantera jamais quand ils commenceront à fabriquer des clous "
http://www.vanhees.cc
Avatar de l’utilisateur
MasterSleepy
Amiral
Amiral
 
Messages: 2625
Inscrit le: 24 Juil 2002 00:00
Localisation: Belgique

Messagepar pbordere » 18 Jan 2004 20:06

J'avais bien compris tout ça mais justement, alors que eth1 est mon interface externe, la tentative de détection de l'IP échoue... <IMG SRC="images/smiles/icon_bawling.gif"> <BR> <BR>En solution de secours, puis je mettre : <BR>HostIpAddr mondomaine.dyndns.org <BR> <BR>ou est on limité à <BR> <BR>HostIpAddr xxx.zzz.www.yyy <IMG SRC="images/smiles/icon_confused.gif"> <BR> <BR>(je vais essayer ) <BR> <BR>Question subsidiaire, après avoir modifier le guardian.conf, quelle est la commande pour relancer le démon ?? <BR> <BR> <BR> <IMG SRC="images/smiles/icon_help.gif"> <BR> <BR> <BR>:up Et merci à ce qui donnent des coups de main aux petits copains <IMG SRC="images/smiles/icon_up.gif">
Philippe
Avatar de l’utilisateur
pbordere
Lieutenant de vaisseau
Lieutenant de vaisseau
 
Messages: 207
Inscrit le: 08 Déc 2003 01:00
Localisation: Limoges - France

Messagepar pbordere » 23 Jan 2004 23:40

En fait dans guardian.conf, on ne peut mettre qu'une adresse au format suivant : <BR> <BR>HostIpAddr xxx.zzz.www.yyy <BR> <BR>Pour lancer ou relancer le démon : ./usr/local/bin/guardian.pl <BR> <BR> <BR> <BR>
Philippe
Avatar de l’utilisateur
pbordere
Lieutenant de vaisseau
Lieutenant de vaisseau
 
Messages: 207
Inscrit le: 08 Déc 2003 01:00
Localisation: Limoges - France

Messagepar pbordere » 24 Jan 2004 00:26

Aprés 6 jours de fonctionnement, Acid m'indique 2298 alertes <IMG SRC="images/smiles/icon_mad.gif"> <BR> <BR>Par contre, les logs de guardian ne contiennent que des : <BR>Odd.. source = xxx.xxx.xxx.xxx, dest = yyy.yyy.yyy.yyy - No action done. <IMG SRC="images/smiles/icon_confused.gif"> <BR>(ici yyy.yyy.yyy.yyy est bien mon IP) <BR> <BR> <IMG SRC="images/smiles/icon_confused.gif"> <IMG SRC="images/smiles/icon_confused.gif"> <IMG SRC="images/smiles/icon_confused.gif"> Est ce une bonne ou une mauvaise nouvelle <IMG SRC="images/smiles/icon_confused.gif"> <IMG SRC="images/smiles/icon_confused.gif"> <IMG SRC="images/smiles/icon_confused.gif"> <BR> <BR>Guardian est il bien paramétré ? <BR>Les adresses rejettées sont elles dans les logs ? <BR> <BR>Le fichier ./usr/local/bin/guardian.pl semble fonctionner avec ipchain, ne faut il pas le mettre à jours ? <BR>
Philippe
Avatar de l’utilisateur
pbordere
Lieutenant de vaisseau
Lieutenant de vaisseau
 
Messages: 207
Inscrit le: 08 Déc 2003 01:00
Localisation: Limoges - France

Messagepar pbordere » 06 Fév 2004 00:41

Désolé de relancer la question mes je ne trouve pas de réponse... <BR> <BR> <IMG SRC="images/smiles/icon_help.gif"> <IMG SRC="images/smiles/icon_help.gif"> <IMG SRC="images/smiles/icon_help.gif"> <IMG SRC="images/smiles/icon_help.gif"> <IMG SRC="images/smiles/icon_help.gif"> <IMG SRC="images/smiles/icon_help.gif"> <IMG SRC="images/smiles/icon_help.gif"> <IMG SRC="images/smiles/icon_help.gif"> <IMG SRC="images/smiles/icon_help.gif"> <IMG SRC="images/smiles/icon_help.gif">
Philippe
Avatar de l’utilisateur
pbordere
Lieutenant de vaisseau
Lieutenant de vaisseau
 
Messages: 207
Inscrit le: 08 Déc 2003 01:00
Localisation: Limoges - France

Messagepar Sebastien65 » 12 Avr 2004 21:44

Salut,

Je reveille les topics :D

lool moi aussi je viens d'installer guardian :wink:

Mais la j'ai un petit problème avec je pense le fait qu'il n'arrive pas a trouver l'IP de mon interface modem ( j'ai config le fichier /etc/guardian.conf en spécifiant l'interface ppp0 pour mon modem ! )

Quand je relance le démon a l'aide de : /usr/local/bin/guardian.pl , j'ai ce message :

[root@serveur log]# /usr/local/bin/guardian.pl
OS shows Linux
Warning! HostIpAddr is undefined! Attempting to guess..
Couldn't figure out the ip address
[root@serveur log]#


Voila une idée ?

Merci ;)
Avatar de l’utilisateur
Sebastien65
Vice-Amiral
Vice-Amiral
 
Messages: 799
Inscrit le: 26 Avr 2003 00:00

Messagepar Sebastien65 » 14 Avr 2004 13:24

Salut,

Bon alors personne n'as de solutions pour notre problème avec pborderre :?

Moi j'ai essayer de modifier le fichier guardian.pl mais cela ne change rien pour trouver ma connexion donc resoudre mon IP :( :evil:

J'ai compris qu'il se sert de ifconfig pour déterminer quelle interface est connecté au NET ( moi C PPP0 ) mai lui il n'arrive pas a trouver mon IP :? :(

Voila si vous avez de koi nous aider vous êtes les biens venu :D

lol :wink:
Avatar de l’utilisateur
Sebastien65
Vice-Amiral
Vice-Amiral
 
Messages: 799
Inscrit le: 26 Avr 2003 00:00

Messagepar pamplemousse » 18 Avr 2004 13:09

Bonjour,

je viens egalement d'installer Guardian et j'ai aussi le meme probleme: il n'arrive pas a relever l'IP de l'interface PPP0. J'ai donc fait un ifconfig, et j'ai remarque que ifconfig apparait en francais, alors que guardian est en anglais. J'en sais rien, c'est peut-etre n'importe quoi ce que je raconte, mais peut-etre que ca a voir avec le fait que Guardian ne peut pas reperer l'IP:

en francais, Ifconfig affiche:
Code: Tout sélectionner
ppp0      Lien encap:Protocole Point-à-Point 
          inet adr:80.8.1.130  P-t-P:80.8.1.1  Masque:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1492  Metric:1
          RX packets:2017732 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2223535 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0
          RX bytes:562295426 (536.2 Mb)  TX bytes:446484897 (425.8 Mb)


Sur mon PC client, qui fonctionne sur Gentoo en anglais, ifconfig affiche des trucs du genre:
Code: Tout sélectionner
eth0      Link encap:Ethernet  HWaddr 00:10:5A:4A:C8:FF 
          inet addr:192.168.142.65  Bcast:192.168.142.255  Mask:255.255.255.0
          UP BROADCAST NOTRAILERS RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:86455 errors:0 dropped:0 overruns:0 frame:0
          TX packets:77249 errors:0 dropped:0 overruns:0 carrier:0
          collisions:3221 txqueuelen:1000
          RX bytes:59584987 (56.8 Mb)  TX bytes:12807153 (12.2 Mb)
          Interrupt:9 Base address:0x1080


Et donc je vois que en francais, on a "inet adr" avec un seul "d", et en anglais on a "inet addr" avec deux "d". Si Guardian recherche la ligne "inet addr", il ne la trouvera jamais. Donc ma question: j'aimerai configurer mon serveur SME 6.0b3 en anglais, mais je ne sais pas comment faire. Qqn pourrait me dire comment faire? Histoire de verifier cette histoire de langue sur la config de Guardian.
Avatar de l’utilisateur
pamplemousse
Second Maître
Second Maître
 
Messages: 32
Inscrit le: 29 Oct 2003 01:00

Messagepar MasterSleepy » 18 Avr 2004 14:53

Salut,

Alors voilà comment j'ai résolu le problème avec guardian.

Dans la contrib de trevor il y a 2 script shell dans /bin :
guardian_block.sh
guardian_unblock.sh

Le script d'origine du premier est
Code: Tout sélectionner
#!/bin/sh

# this is a sample block script for guardian. This should work with ipchains.
# This command gets called by guardian as such:
#  guardian_block.sh <source_ip> <interface>
# and the script will issue a command to block all traffic from that source ip
# address. The logic of weither or not it is safe to block that address is
# done inside guardian itself.
source=$1
interface=$2

/sbin/iptables -I INPUT -s $source -i $interface -j DROP

echo "The Snort-Guardian service has updated your firewall rules by blocking thefollowing IP address: $source.

This IP address will be blocked for 24 hours unless the server is rebooted.

For detailed information: /var/log/guardian.log
                          /var/log/snort/alert

" | mail -s "Firewall rules updated" admin


Je l'ai modifié en :
Code: Tout sélectionner
#!/bin/sh

# this is a sample block script for guardian. This should work with ipchains.
# This command gets called by guardian as such:
#  guardian_block.sh <source_ip> <interface>
# and the script will issue a command to block all traffic from that source ip
# address. The logic of weither or not it is safe to block that address is
# done inside guardian itself.
source=$1
interface=$(/sbin/e-smith/db configuration get ExternalIP)

/sbin/iptables -I INPUT -s $source -i $interface -j DROP

echo "The Snort-Guardian service has updated your firewall rules by blocking thefollowing IP address: $source.

This IP address will be blocked for 24 hours unless the server is rebooted.

For detailed information: /var/log/guardian.log
                          /var/log/snort/alert

" | mail -s "Firewall rules updated" admin


Et tout tourne bien.

Par contre à chaque changement d'IP il faut relancer guardiand, pour snort c'est fait automatiquement, du moins si l'installe a été faite avec les que j'ai fait.

Pour guardian c'est un peu plus complexe vu que par défaut on ne peut faire que un start du servcie.

Alors voilà comment j'ai fait :

Copie le fichier /usr/local/bin/guardian.pl en /usr/sbin/guardiand

Et j'ai changé le script de démarrage de guardiand pour ressemlé à
Code: Tout sélectionner
#!/bin/sh
#
# guardiand         Start/Stop the Guardian daemon.
#
# chkconfig: 2345 40 60

# Source function library.
. /etc/rc.d/init.d/functions

# See how we were called.
case "$1" in
  start)
        echo -n "Starting guardian daemon: "
        daemon guardiand -c /etc/guardian.conf
        RETVAL=$?
        echo
        [ $RETVAL -eq 0 ] && touch /var/lock/subsys/guardian
        ;;
  stop)
        echo -n "Stopping guardian daemon: "
        killproc guardiand
        RETVAL=$?
        rm -f /var/lock/subsys/guardian && rm -f /var/lock/guardian
        echo
        ;;
  status)
        status guardiand
        RETVAL=$?
        ;;
  restart)
        $0 stop
        $0 start
        RETVAL=$?
        ;;
  *)
        echo "Usage: $0 {start|stop|status|restart}"
        exit 1
esac

exit 0


Maintenant il faut lui faire rédémarrer quardian à chaque renouvellement d'IP
Il faut éditer le fichier /etc/e-smith/events/actions/snort-restart

et rajouter juste après
Code: Tout sélectionner
esmith::util::serviceControl
       (
           NAME   => 'snortd',
           ACTION => 'restart'
       ) ||
       die "Couldn't restart snortd";


ca

Code: Tout sélectionner
esmith::util::serviceControl
       (
           NAME   => 'guardiand',
           ACTION => 'restart'
       ) ||
       die "Couldn't restart guardiand";


Avec tout ça ça devrait rouler.

Désolé la procédure est un peu longue mais bon ...

A+[/code]
"Microsoft fera quelque chose qui ne plantera jamais quand ils commenceront à fabriquer des clous "
http://www.vanhees.cc
Avatar de l’utilisateur
MasterSleepy
Amiral
Amiral
 
Messages: 2625
Inscrit le: 24 Juil 2002 00:00
Localisation: Belgique

Messagepar pbordere » 24 Avr 2004 15:04

J'ai réinstallé Snort+Acid+Guardian et appliqué tes modifs, plus une. J'ai remplacer le guardiand qui est dans /etc/rc.d/init.d, car sinon un service guardiand start plantait (interface non définie).

Malheureusement maintenant j'ai un ...

Code: Tout sélectionner
[root@sme root]# service guardiand start
Starting guardian daemon: execvp: Permission non accordée      [ ECHOUE ]


:(

Permission non accordée où :?:

Est ce que cela provient de la ligne

Code: Tout sélectionner
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/guardian


ll /var/lock/subsys/ ne montre aucun guardian :!:

Encore besoin de ton aide....
Avatar de l’utilisateur
pbordere
Lieutenant de vaisseau
Lieutenant de vaisseau
 
Messages: 207
Inscrit le: 08 Déc 2003 01:00
Localisation: Limoges - France

Messagepar Sebastien65 » 24 Avr 2004 15:49

Salut,

Master Sleepy merci pour ton explication mais je crois que j'ai mal suivie une procédure donc je demande un peux de ta lumière :idea: :D

:arrow: Donc quand on a le fichier /usr/local/bin/guardian.pl
On doit le copier a l'aide de la commande mv dans ce répertoire /usr/sbin/guardiand

Ou alors il faut que guardian.pl reste dans /usr/local/bin et faire une copie de ce fichier dans /usr/sbin en tant que guardiand ???

C ça ?? :?:

:arrow: Ensuite quand tu dis : "Et j'ai changé le script de démarrage de guardiand pour ressemlé à"

Il faut enlever tous ce qu'il y a dans le fichier guardiand et remplacé par ça :
Code: Tout sélectionner
#!/bin/sh
#
# guardiand         Start/Stop the Guardian daemon.
#
# chkconfig: 2345 40 60

# Source function library.
. /etc/rc.d/init.d/functions

# See how we were called.
case "$1" in
  start)
        echo -n "Starting guardian daemon: "
        daemon guardiand -c /etc/guardian.conf
        RETVAL=$?
        echo
        [ $RETVAL -eq 0 ] && touch /var/lock/subsys/guardian
        ;;
  stop)
        echo -n "Stopping guardian daemon: "
        killproc guardiand
        RETVAL=$?
        rm -f /var/lock/subsys/guardian && rm -f /var/lock/guardian
        echo
        ;;
  status)
        status guardiand
        RETVAL=$?
        ;;
  restart)
        $0 stop
        $0 start
        RETVAL=$?
        ;;
  *)
        echo "Usage: $0 {start|stop|status|restart}"
        exit 1
esac

exit 0



Maintenant il faut lui faire rédémarrer quardian à chaque renouvellement d'IP
Il faut éditer le fichier /etc/e-smith/events/actions/snort-restart

et rajouter juste après
Code:

esmith::util::serviceControl
       (
           NAME   => 'snortd',
           ACTION => 'restart'
       ) ||
       die "Couldn't restart snortd";



ca

Code:

esmith::util::serviceControl
       (
           NAME   => 'guardiand',
           ACTION => 'restart'
       ) ||
       die "Couldn't restart guardiand"; 


Ou alors il faut le rajouter a la suite ???

------------------------------------------
Voila ce que j'obtiens moi ( mais j'ai mal compris ton explication Master donc C normal ! )

[root@serveur sbin]# guardiand
Usage: /usr/sbin/guardiand {start|stop|status|restart}
[root@serveur sbin]#
guardiand start
Starting guardian daemon: Usage: /usr/sbin/guardiand {start|stop|status|restart}
[ ECHOUE ]
[root@serveur sbin]#


[root@serveur /]# service guardiand start
Starting guardian: execvp: Aucun fichier ou répertoire de ce type
[ ECHOUE ]
------------------------------------------

Merci d'avance ;)
Avatar de l’utilisateur
Sebastien65
Vice-Amiral
Vice-Amiral
 
Messages: 799
Inscrit le: 26 Avr 2003 00:00

Messagepar pbordere » 24 Avr 2004 17:34

Voici comment j'ai compris et modifié les différents fichiers.

Ou alors il faut que guardian.pl reste dans /usr/local/bin et faire une copie de ce fichier dans /usr/sbin en tant que guardiand ???


J'ai créé un fichier guardiand dans /usr/sbin

Il faut enlever tous ce qu'il y a dans le fichier guardiand et remplacé par ça :
Code: Tout sélectionner
#!/bin/sh
#
# guardiand         Start/Stop the Guardian daemon.
#
# chkconfig: 2345 40 60

# Source function library.
. /etc/rc.d/init.d/functions

# See how we were called.
case "$1" in
  start)
        echo -n "Starting guardian daemon: "
        daemon guardiand -c /etc/guardian.conf
        RETVAL=$?
        echo
        [ $RETVAL -eq 0 ] && touch /var/lock/subsys/guardian
        ;;
  stop)
        echo -n "Stopping guardian daemon: "
        killproc guardiand
        RETVAL=$?
        rm -f /var/lock/subsys/guardian && rm -f /var/lock/guardian
        echo
        ;;
  status)
        status guardiand
        RETVAL=$?
        ;;
  restart)
        $0 stop
        $0 start
        RETVAL=$?
        ;;
  *)
        echo "Usage: $0 {start|stop|status|restart}"
        exit 1
esac

exit 0


Il faut éditer le fichier /etc/e-smith/events/actions/snort-restart et rajouter juste après

esmith::util::serviceControl
(
NAME => 'snortd',
ACTION => 'restart'
) ||
die "Couldn't restart snortd";

ce qui me donne

Code: Tout sélectionner
if ($status eq "enabled") {
esmith::util::serviceControl
       (
           NAME   => 'snortd',
           ACTION => 'restart'
       ) ||
       die "Couldn't restart snortd";
esmith::util::serviceControl
       (
           NAME   => 'guardiand',
           ACTION => 'restart'
       ) ||
       die "Couldn't restart guardiand";
}
exit (0);


Par contre j'ai moi aussi un message d'erreur cf le post ci-dessus
Avatar de l’utilisateur
pbordere
Lieutenant de vaisseau
Lieutenant de vaisseau
 
Messages: 207
Inscrit le: 08 Déc 2003 01:00
Localisation: Limoges - France

Suivant

Retour vers E-Smith / SME Server

Qui est en ligne ?

Utilisateur(s) parcourant actuellement ce forum : Aucun utilisateur inscrit et 1 invité

cron