informatique:cisco:securiser_un_routeur
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
informatique:cisco:securiser_un_routeur [2009/07/17 18:07] – aaa authentication pteu | informatique:cisco:securiser_un_routeur [2009/07/19 18:41] – relecture 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' | ||
- | 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 208: | ||
===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' | + | Il est conseillé d' |
Procédure de configuration du SNMPv3 : | Procédure de configuration du SNMPv3 : | ||
Line 222: | Line 232: | ||
Exemple : | Exemple : | ||
- | snmp-server enable traps cpu | ||
- | snmp-server enable traps config | ||
- | snmp-server inform retries 0 | ||
- | snmp-server source-interface traps loopback 0 | ||
- | | ||
snmp-server engineID local 0123456789 | snmp-server engineID local 0123456789 | ||
snmp-server engineID remote 10.0.0.100 00000063000100a1c0b4011b | snmp-server engineID remote 10.0.0.100 00000063000100a1c0b4011b | ||
Line 237: | Line 242: | ||
| | ||
snmp-server host 10.0.0.111 traps version 3 priv authuser | snmp-server host 10.0.0.111 traps version 3 priv authuser | ||
+ | |||
+ | snmp-server enable traps cpu | ||
+ | snmp-server enable traps config | ||
+ | snmp-server inform retries 0 | ||
+ | snmp-server source-interface traps loopback 0 | ||
Liens : | Liens : | ||
Line 245: | Line 254: | ||
=====AAA===== | =====AAA===== | ||
- | Authentication, | + | Authentication, |
Il existe 3 types de configurations possibles : | Il existe 3 types de configurations possibles : | ||
Line 253: | Line 262: | ||
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==== | ====RADIUS==== | ||
- | L'un des 2 protocoles AAA les plus connu avec TACACS | + | Le **RADIUS** est, avec TACACS+, l'un des 2 protocoles AAA les plus connus |
Le RADIUS permet : | Le RADIUS permet : | ||
Line 272: | Line 281: | ||
====TACACS+==== | ====TACACS+==== | ||
- | Le TACACS+ ressemble au RADIUS à ceci près qu'il est propriétaire Cisco et utilise tcp/49. Lui aussi associe à chaque compte | + | Le **TACACS+** ressemble au RADIUS à ceci près qu'il est propriétaire Cisco et utilise tcp/49. Lui aussi associe à chaque compte |
TACACS+ permet : | TACACS+ permet : | ||
Line 289: | Line 298: | ||
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' | 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 '' | + | Pour créer un groupe, applicable sur une ou plusieurs interfaces, on remplace '' |
aaa authentication login ma_liste group tacacs+ local | aaa authentication login ma_liste group tacacs+ local | ||
Line 296: | Line 305: | ||
login authentication ma_liste | login authentication ma_liste | ||
- | ===Vérifs=== | + | ====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 authentication | ||
debug aaa authorization | debug aaa authorization | ||
+ | debug aaa accounting | ||
=====Vérifs===== | =====Vérifs===== | ||
show login [failure] | show login [failure] |
informatique/cisco/securiser_un_routeur.txt · Last modified: 2014/02/07 14:29 by pteu