informatique:cisco:securiser_un_routeur
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| informatique:cisco:securiser_un_routeur [2009/07/16 20:33] – Syslog, SNMP, NTP pteu | informatique:cisco:securiser_un_routeur [2014/02/07 14:29] (current) – [SNMP] pteu | ||
|---|---|---|---|
| Line 4: | Line 4: | ||
| - | Par sécurité, comme sur tout système informatique, | + | Par sécurité, comme sur tout système informatique, |
| =====Cisco AutoSecure (CLI)===== | =====Cisco AutoSecure (CLI)===== | ||
| - | La fonctionnalité **Cisco AutoSecure** permet d'"auditer" | + | La fonctionnalité **Cisco AutoSecure** permet d' |
| - | * le mode interacif | + | * le mode interactif |
| - | * le mode non-interactif qui applique automatiquement les bonnes pratiques (pas très conseillé) | + | * le mode non-interactif qui applique automatiquement les bonnes pratiques (pas conseillé) |
| - | Sur les versions | + | Sur les versions |
| configure replace flash: | configure replace flash: | ||
| Line 26: | Line 26: | ||
| C'est un fonction accessible via la SDM qui compare la configuration courante du routeur à une base de bonnes bonnes pratiques. Il existe 2 possibilités : | C'est un fonction accessible via la SDM qui compare la configuration courante du routeur à une base de bonnes bonnes pratiques. Il existe 2 possibilités : | ||
| - | * **security audit** : la configuration est passée en revue et chaque point négatif est afficher | + | * **security audit** : la configuration est passée en revue et chaque point négatif est affiché |
| * **one-step lockdown** : analyser et appliquer les paramètres recommandés sans interaction avec l' | * **one-step lockdown** : analyser et appliquer les paramètres recommandés sans interaction avec l' | ||
| Line 37: | Line 37: | ||
| security passwords min-length 10 | security passwords min-length 10 | ||
| - | * Chiffrer les mots de passe écrits | + | * Chiffrer les mots de passe inscrits |
| service password-encryption | service password-encryption | ||
| Line 44: | Line 44: | ||
| password 7 051F091B2E | password 7 051F091B2E | ||
| - | 7 indique que l' | + | * Le 7 indique que l' |
| - | 5 indique un hash MD5 (c'est le cas du '' | + | |
| * utiliser le mot clé '' | * utiliser le mot clé '' | ||
| Line 52: | Line 52: | ||
| [..] | [..] | ||
| username toto secret toto | username toto secret toto | ||
| + | Cette //best practice// ne rentre pas en contradiction avec celle d' | ||
| - | * Désactiver l' | + | * Désactiver l' |
| no service password-recovery | no service password-recovery | ||
| - | * Pour imposer un temps (ici de 10 secondes) entre chaque tentative de login : | + | * Pour imposer un temps d' |
| login delay 10 | login delay 10 | ||
| Line 65: | Line 66: | ||
| security authentication failure rate 5 log | security authentication failure rate 5 log | ||
| - | * Pour éviter les attaques par force brute, on peut bloquer les tentatives de login après un certains seuil d' | + | * Pour éviter les attaques par force brute, on peut bloquer les tentatives de login après un certains seuil d' |
| login block-for 100 attemps 3 within 10 | login block-for 100 attemps 3 within 10 | ||
| Line 77: | Line 78: | ||
| login on-failure trap | login on-failure trap | ||
| - | * définir un timeout d' | + | * définir un timeout d' |
| exec-timeout 0 | exec-timeout 0 | ||
| Line 88: | Line 89: | ||
| * les niveaux intermédiaires, | * les niveaux intermédiaires, | ||
| - | Pour configurer un mode de privilège, on doit lui attribuer un mot de passe et des droits : '' | + | Pour configurer un mode de privilège, on doit lui attribuer un mot de passe et des droits : '' |
| privilege exec level 2 ping | privilege exec level 2 ping | ||
| enable secret level 2 toto | enable secret level 2 toto | ||
| Line 99: | Line 100: | ||
| =====Les vues===== | =====Les vues===== | ||
| - | Les vue permettent d' | + | Les vues permettent d' |
| conf t | conf t | ||
| aaa new-model | aaa new-model | ||
| enable view | enable view | ||
| - | Puis on créer la vue premiere_view, | + | Puis on créer la vue premiere_view, |
| parser view premiere_vue | parser view premiere_vue | ||
| | | ||
| Line 113: | Line 114: | ||
| | | ||
| - | On peut créer des super vues qui aggrèges | + | On peut créer des super vues qui aggrègent |
| parser view super_vue superview | parser view super_vue superview | ||
| | | ||
| view premiere_vue | view premiere_vue | ||
| view seconde_vue | view seconde_vue | ||
| + | |||
| + | On ne peut pas ajouter de commandes à une superview, elle ne peut qu' | ||
| Line 124: | Line 127: | ||
| Fonctionnalité d'IOS qui permet de conserver une version " | Fonctionnalité d'IOS qui permet de conserver une version " | ||
| - | Activer la résilience de l' | + | Activer la résilience de l' |
| secure boot-image | secure boot-image | ||
| - | |||
| - | Pour la configuration : | ||
| secure boot-config | secure boot-config | ||
| - | Pour restaurer l'IOS : démarrer en rommon puis : | + | Pour restaurer l'IOS : démarrer en rommon puis charger l' |
| - | rommon 1 >boot disk0:< | + | rommon 1 >boot disk0:c3825-advipservicesk9-mz.124-21.bin |
| Pour restaurer la conf : | Pour restaurer la conf : | ||
| Line 137: | Line 138: | ||
| copy slot0: | copy slot0: | ||
| - | Vérif | + | Vérifs |
| show secure bootset | show secure bootset | ||
| Line 148: | Line 149: | ||
| logging < | logging < | ||
| - | Configurer | + | Configurer |
| logging trap < | logging trap < | ||
| - | Configurer | + | Configurer |
| logging facility < | logging facility < | ||
| + | |||
| + | PS : [[informatique: | ||
| Les messages de log sont de la forme : | Les messages de log sont de la forme : | ||
| Line 162: | Line 165: | ||
| * le reste : le texte du message | * le reste : le texte du message | ||
| - | Si on les récupère dans un syslog ils sont précédés (dépend du syslogd utilisé) du timestamp de réception du serveur syslog et de l'IP source du paquet reçu. | + | Si on les récupère dans un syslog ils sont précédés (dépend du syslogd utilisé) du timestamp de réception du serveur syslog et de l'IP source/ |
| D' | D' | ||
| - | * activer la journalisation : '' | + | * activer la journalisation : '' |
| * pour préciser l' | * pour préciser l' | ||
| + | * pour ajouter un timestamp dans les messages de log : '' | ||
| - | Quoiqu' | + | Il faut que l' |
| ====NTP==== | ====NTP==== | ||
| - | Pour synchroniser l' | + | Pour synchroniser l' |
| - | On peut définir différents types de dépendance avec une machine distante | + | On peut définir différents types rôle : |
| - | * client : le routeur émet des requêtes pour se synchroner | + | * client : se synchronise auprès d'une autorité de temps = le routeur émet des requêtes pour se synchroniser |
| - | * serveur : le serveur NTP fourni l' | + | * serveur : autorité de temps ; synchronise |
| - | * peer : les requêtes NTP vont dans les 2 sens et chacun peut être soit client soit serveur | + | * peer : les requêtes NTP vont dans les 2 sens ; chacun peut être soit client soit serveur |
| - | Configuration type : déclaraion | + | ===ntp client=== |
| + | Configuration type : déclaration | ||
| ntp {server | peer} 10.0.0.111 | ntp {server | peer} 10.0.0.111 | ||
| + | |||
| + | On peut en définir plusieurs, ainsi qu'un ordre de préférence : | ||
| + | ntp server 10.0.0.111 | ||
| + | ntp server 192.168.0.1 prefer | ||
| Pour mettre en place de l' | Pour mettre en place de l' | ||
| ntp authenticate | ntp authenticate | ||
| - | ntp authenticate key 1 md5 < | + | ntp authenticate-key 1 md5 < |
| ntp trust-key 1 | ntp trust-key 1 | ||
| | | ||
| - | ntp server 10.0.0.254 key 1 prefer | + | ntp server 10.0.0.111 key 1 |
| - | + | ||
| - | Le mot de passe ne doit pas dépasser 8 caractères. | + | |
| - | Pour écouter les broadcasts NTP reçus sur une interface | + | Pour écouter |
| - | ntp broadcast client | + | |
| + | ntp broadcast client | ||
| - | Mise en place d'une ACL : | + | Utilisation |
| ntp access-group {query-only | serve-only | serve | peer} < | ntp access-group {query-only | serve-only | serve | peer} < | ||
| Line 201: | Line 209: | ||
| ===Serveur ntp=== | ===Serveur ntp=== | ||
| + | //NB : il me semble que les routeurs agissent par défaut comme serveur NTP.// | ||
| + | |||
| Pour faire d'un routeur un serveur ntp autoritatif : | Pour faire d'un routeur un serveur ntp autoritatif : | ||
| ntp master [stratum] | ntp master [stratum] | ||
| - | Stratum | + | // |
| - | Pour émettre des broadcast | + | Pour émettre des broadcasts |
| - | ntp broadcast | + | |
| + | ntp broadcast | ||
| ====SNMP==== | ====SNMP==== | ||
| - | Pour monitorer/ | + | Pour monitorer/ |
| - | Il est conseillé d'utilisé | + | Il est conseillé d'utiliser |
| Procédure de configuration du SNMPv3 : | Procédure de configuration du SNMPv3 : | ||
| - | * configurer le server-ID local du routeur ; Il est optionnel de préciser l'IP, l'ID et le numéro de port (par défaut 161) d'un équipement distant. | + | * configurer le server-ID local du routeur ; il est optionnel de préciser l'IP, l'ID et le numéro de port (par défaut 161) d'un équipement distant. |
| * configurer les noms de groupes | * configurer les noms de groupes | ||
| * configurer les utilisateurs | * configurer les utilisateurs | ||
| * configurer les machines | * configurer les machines | ||
| - | Exemple | + | __Exemple |
| - | snmp-server | + | <code bash> |
| - | snmp-server | + | snmp-server |
| - | snmp-server | + | snmp-server |
| - | snmp-server | + | |
| + | snmp-server | ||
| + | snmp-server | ||
| | | ||
| - | | + | snmp-server |
| - | snmp-server | + | snmp-server |
| | | ||
| - | | + | snmp-server |
| - | snmp-server group authgroup v3 priv | + | |
| | | ||
| - | | + | snmp-server |
| - | snmp-server | + | snmp-server |
| - | + | snmp-server | |
| - | | + | snmp-server source-interface |
| + | </ | ||
| - | Liens : | + | __Liens |
| * http:// | * http:// | ||
| Line 245: | Line 257: | ||
| =====AAA===== | =====AAA===== | ||
| - | Authentication, | + | Authentication, |
| Il existe 3 types de configurations possibles : | Il existe 3 types de configurations possibles : | ||
| Line 253: | Line 265: | ||
| 2 modes d' | 2 modes d' | ||
| - | * **character mode** pour les " | + | * **character mode** pour les " |
| - | * **packet mode** pour les interfaces (async, serial) | + | * **packet mode** pour les interfaces (async, serial) |
| + | |||
| + | ====RADIUS==== | ||
| + | |||
| + | Le **RADIUS** est, avec TACACS+, l'un des 2 protocoles AAA les plus connus ; il est normalisé par l'IETF (RFC 2865) et utilise des datagrammes udp/1812 et 1813 (le serveur Cisco Secure ACS utilise lui udp/1645 et 1646). A chaque compte sont associés zéro ou plusieurs **paires AV** (Attribute-Value) qui définissent ses droits. Il y a une 50aine de paires AV prédéfinies, | ||
| + | |||
| + | Le RADIUS permet : | ||
| + | * le chiffrement du mot de passe (uniquement) en MD5 | ||
| + | * l' | ||
| + | |||
| + | Mise en place : | ||
| + | aaa new-model | ||
| + | radius-server host 10.0.0.111 | ||
| + | radius-server key < | ||
| + | |||
| + | |||
| + | ====TACACS+==== | ||
| + | |||
| + | Le **TACACS+** ressemble au RADIUS à ceci près qu'il est propriétaire Cisco et utilise tcp/49. Lui aussi associe à chaque compte zéro ou plusieurs AV. On peut s'en servir pour identifier un utilisateur et appliquer un profil réseau (ses VLAN/ | ||
| + | |||
| + | TACACS+ permet : | ||
| + | * de chiffrer tout le contenu des transactions | ||
| + | |||
| + | Mise en place : | ||
| + | aaa new-model | ||
| + | tacacs-server host 10.0.0.111 | ||
| + | tacacs-server key < | ||
| + | |||
| + | ====aaa authentication==== | ||
| + | |||
| + | Créer une méthode d' | ||
| + | aaa authentication login default group tacacs+ local | ||
| + | |||
| + | Elle utilisera en premier lieu le serveur TACACS+ ; si ce dernier ne répond pas on essaie dans la base locale. S'il renvoie une erreur d' | ||
| + | |||
| + | Pour créer un groupe, applicable sur une ou plusieurs interfaces, on remplace '' | ||
| + | aaa authentication login ma_liste group tacacs+ local | ||
| + | |||
| + | Puis on l' | ||
| + | line vty 0 4 | ||
| + | login authentication ma_liste | ||
| + | |||
| + | ====aaa authorization==== | ||
| + | |||
| + | Pour définir les droits associés à un compte. | ||
| + | |||
| + | aaa authorization exec default group radius local none | ||
| + | |||
| + | ====aaa accounting==== | ||
| + | |||
| + | L' | ||
| + | |||
| + | aaa accouting exec default start-stop group tacacs+ | ||
| + | |||
| + | Cette commande permet de logger chaque début et fin de processus lancé par n' | ||
| + | |||
| + | ====Vérifs==== | ||
| + | debug aaa authentication | ||
| + | debug aaa authorization | ||
| + | debug aaa accounting | ||
| =====Vérifs===== | =====Vérifs===== | ||
| show login [failure] | show login [failure] | ||
informatique/cisco/securiser_un_routeur.1247776421.txt.gz · Last modified: 2013/10/14 20:51 (external edit)