informatique:fortinet:start
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:fortinet:start [2017/07/17 14:39] – [debug flow] pteu | informatique:fortinet:start [2023/09/18 07:33] – [Système] get sys perf status pteu | ||
---|---|---|---|
Line 1: | Line 1: | ||
======Fortinet====== | ======Fortinet====== | ||
- | FIXME | + | {{: |
+ | |||
+ | [[http:// | ||
======Système====== | ======Système====== | ||
- | En sortie d' | + | En sortie d' |
+ | |||
+ | On peut lister toutes les commandes disponibles avec la commande '' | ||
<code bash> | <code bash> | ||
- | # récupérer | + | # afficher |
get system status | get system status | ||
+ | # d' | ||
+ | get mgmt-data status | ||
- | # récupérer la charge du sytème | + | # récupérer la charge du système |
- | get system performance status | + | (global) |
# affiche les informations des processus les plus consommateurs en CPU/mem | # affiche les informations des processus les plus consommateurs en CPU/mem | ||
Line 21: | Line 27: | ||
# - première ligne : U — % user CPU, S - % system CPU, I — % CPU idle, T — Total memory in kB, F — free memory in kB | # - première ligne : U — % user CPU, S - % system CPU, I — % CPU idle, T — Total memory in kB, F — free memory in kB | ||
# - desc des colonnes : process name, pid, running status, CPU usage, memory usage. (Sleeping, Running, Zombie, < - High priority, N — Low priority) | # - desc des colonnes : process name, pid, running status, CPU usage, memory usage. (Sleeping, Running, Zombie, < - High priority, N — Low priority) | ||
+ | # on peut classer par CPU usage (Shift+P) ou par mem usage (Shift+M) | ||
- | # version plus user-friendly | + | # version plus user-friendly |
diagnose sys top-summary | diagnose sys top-summary | ||
CPU [| | CPU [| | ||
Line 32: | Line 39: | ||
diagnose sys kill 11 <PID> | diagnose sys kill 11 <PID> | ||
</ | </ | ||
+ | |||
+ | =====Redémarrage===== | ||
Pour redémarrer ou éteindre le système : | Pour redémarrer ou éteindre le système : | ||
Line 39: | Line 48: | ||
</ | </ | ||
- | Ordre de traitement d' | + | Il n'est pas possible de planifier |
+ | <code bash> | ||
+ | config global | ||
+ | config sys global | ||
+ | set daily-restart enable | ||
+ | set restart-time 04:13 | ||
+ | end | ||
+ | </ | ||
+ | Attention, il redémarrera donc tous les jours à 4h13 ! | ||
+ | |||
+ | Autre possibilité : configurer une authentification SSH par clé ([[informatique: | ||
+ | <code bash> | ||
+ | ssh admin@firewall " | ||
+ | > execute reboot | ||
+ | > y" | ||
+ | </ | ||
+ | |||
+ | |||
+ | =====Ordre de traitement des paquets===== | ||
<code bash> | <code bash> | ||
Step #1 - Ingress | Step #1 - Ingress | ||
Line 78: | Line 106: | ||
3. Routing | 3. Routing | ||
</ | </ | ||
+ | |||
+ | MAJ d' | ||
+ | |||
+ | {{: | ||
=====Hardware===== | =====Hardware===== | ||
Line 89: | Line 121: | ||
# partitionnement du disque dur (au sens Linux, càd bas niveau) | # partitionnement du disque dur (au sens Linux, càd bas niveau) | ||
diagnose hardware deviceinfo disk | diagnose hardware deviceinfo disk | ||
- | # lister les partitions | + | # lister les partitions (gestion des images de fortiOS) |
diagnose sys flash list | diagnose sys flash list | ||
- | # ensuite on peut configurer l' | ||
- | execute set-next-reboot 1/2 | ||
# info sur les CPU (~ / | # info sur les CPU (~ / | ||
Line 99: | Line 129: | ||
# ~lspci | # ~lspci | ||
diagnose hardware pciconfig | diagnose hardware pciconfig | ||
+ | |||
+ | # allocation de la mémoire | ||
+ | diagnose hardware sysinfo memory | ||
+ | |||
+ | # afficher l' | ||
+ | diagnose hardware sysinfo slab | ||
+ | |||
+ | # afficher l' | ||
+ | diagnose hardware sysinfo shm | ||
+ | </ | ||
+ | |||
+ | ====Power/ | ||
+ | |||
+ | Information sur les alimentations : | ||
+ | <code bash> | ||
+ | diagnose hardware deviceinfo psu | ||
+ | PSU 01: | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | PSU 02: | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | ! | ||
+ | execute sensor detail | ||
</ | </ | ||
Line 122: | Line 184: | ||
set mtu-override enable | set mtu-override enable | ||
set mtu 9000 | set mtu 9000 | ||
+ | </ | ||
+ | |||
+ | Afficher les caractéristiques des modules GBIC/SFP* connectés et reconnus : | ||
+ | <code bash> | ||
+ | get sys interface transceiver port13 | ||
+ | Interface port13 - SFP/SFP+ | ||
+ | Vendor Name : Intel Corp | ||
+ | Part No. : | ||
+ | Serial No. : | ||
+ | Measurement | ||
+ | ------------ ------------ ------------ ------------ ------------ ------------ ------------ | ||
+ | Temperature | ||
+ | Voltage | ||
+ | Tx Bias (mA) 8.07 13.20 12.60 | ||
+ | Tx Power | ||
+ | Rx Power | ||
+ | ++ : high alarm, + : high warning, - : low warning, -- : low alarm, ? : suspect. | ||
+ | </ | ||
+ | |||
+ | ===Port d' | ||
+ | |||
+ | Cette fonctionnalité, | ||
+ | |||
+ | Il est conseillé de ne pas router de trafic utilisateur par ces interfaces. | ||
+ | < | ||
+ | config system interface | ||
+ | edit " | ||
+ | set dedicated-to management | ||
+ | end | ||
+ | end | ||
</ | </ | ||
Line 146: | Line 238: | ||
attention les paramètres de l' | attention les paramètres de l' | ||
</ | </ | ||
+ | |||
+ | ===Création d'un switch logique=== | ||
+ | |||
+ | Pour créer un bridge (un switch logique) entre plusieurs ports d'un Fortigate : | ||
+ | <code bash> | ||
+ | config system switch-interface | ||
+ | edit mon-switch-soft | ||
+ | set members port1 port2 port3 port4 | ||
+ | end | ||
+ | </ | ||
+ | |||
+ | NB : | ||
+ | * ces interfaces doivent être vierges de toute configuration ; | ||
+ | * certaines fonctionnalités seront limitées sur ces interfaces | ||
+ | * des performances moindres sont également à prévoir | ||
====Accélération hardware (NP)==== | ====Accélération hardware (NP)==== | ||
Line 198: | Line 305: | ||
# lister les utilisateurs connectés | # lister les utilisateurs connectés | ||
get system info admin status | get system info admin status | ||
+ | # même commande, mais affiche les index | ||
+ | execute disconnect-admin-session ? | ||
+ | |||
+ | # pour déconnecter un utilisateur, | ||
+ | execute disconnect-admin-session ? | ||
+ | INDEX USERNAME | ||
+ | 0 admin | ||
+ | 1 toto ssh RO_access | ||
+ | |||
+ | execute disconnect-admin-session 1 | ||
</ | </ | ||
Line 203: | Line 320: | ||
<code bash> | <code bash> | ||
diagnose test auth ldap < | diagnose test auth ldap < | ||
+ | </ | ||
+ | |||
+ | Pour debugguer le LDAP : | ||
+ | <code bash> | ||
+ | diagnose debug appl authd 99 | ||
+ | diagnose debug enable | ||
</ | </ | ||
Line 211: | Line 334: | ||
edit admin | edit admin | ||
set password < | set password < | ||
- | end | + | |
</ | </ | ||
Line 240: | Line 363: | ||
</ | </ | ||
+ | Pour lister les IPs/logins bloqués (en quarantaine) : dans la GUI, " | ||
+ | <code bash> | ||
+ | diagnose user quarantine list | ||
+ | </ | ||
+ | |||
+ | Et pour débloquer un blocage : | ||
+ | <code bash> | ||
+ | diagnose user quarantine delete src4 x.x.x.x | ||
+ | </ | ||
+ | |||
+ | ====Configurer un serveur Radius==== | ||
+ | |||
+ | Pour centraliser les comptes/ | ||
+ | |||
+ | 1) déclarer le serveur Radius sur le VDOM de management (root par défaut) : en GUI c'est dans "User & Authentication > RADIUS servers" | ||
+ | <code bash> | ||
+ | config user radius | ||
+ | edit " | ||
+ | set server " | ||
+ | set secret blablabla | ||
+ | next | ||
+ | end | ||
+ | </ | ||
+ | |||
+ | 2) créer le groupe "Admin fortis" | ||
+ | <code bash> | ||
+ | config user group | ||
+ | edit "Admin fortis" | ||
+ | set member " | ||
+ | next | ||
+ | end | ||
+ | </ | ||
+ | |||
+ | 3) Créer chaque login en mode global : créer le login dans " | ||
+ | <code bash> | ||
+ | config system admin | ||
+ | edit " | ||
+ | set remote-auth enable | ||
+ | set accprofile " | ||
+ | set vdom " | ||
+ | set remote-group "Admin fortis" | ||
+ | set password ENC MASCARADE | ||
+ | next | ||
+ | end | ||
+ | </ | ||
+ | |||
+ | NB : on pourra définir un mot de passe de secours pour chaque compte, en cas d' | ||
+ | |||
+ | Diagnostique : | ||
+ | <code bash> | ||
+ | diagnose test auth radius pap < | ||
+ | </ | ||
======Configuration====== | ======Configuration====== | ||
Line 248: | Line 423: | ||
Par défaut l' | Par défaut l' | ||
<code bash> | <code bash> | ||
+ | # désactiver les " | ||
# équivalent d'un " | # équivalent d'un " | ||
config system console | config system console | ||
Line 307: | Line 483: | ||
<code bash> | <code bash> | ||
config system global | config system global | ||
- | set hostname mon_forti | + | set hostname mon_forti |
+ | set timezone 28 | ||
+ | #28 (GMT+1:00) Brussels, Copenhagen, Madrid, Paris | ||
- | config system admin | + | config system admin |
- | edit admin | + | edit admin |
- | set password < | + | set password < |
- | | + | end |
+ | |||
+ | | ||
+ | set ntpsync enable | ||
+ | set type custom | ||
+ | set syncinterval 60 | ||
+ | config ntpserver | ||
+ | edit 1 | ||
+ | set server " | ||
+ | next | ||
+ | end | ||
+ | set source-ip 10.10.10.10 | ||
+ | end | ||
end | end | ||
</ | </ | ||
Line 355: | Line 545: | ||
======Routage====== | ======Routage====== | ||
- | Afficher la table de routage courante : | ||
<code bash> | <code bash> | ||
+ | # lister toutes les adresses IP du firewall | ||
+ | diag ip address list | ||
+ | IP=192.168.1.99-> | ||
+ | [..] | ||
+ | |||
+ | # lister les IPs virtuelles : VIPs et NAT-pools | ||
+ | diag firewall iplist list | ||
+ | |||
+ | # Afficher la table de routage : | ||
get router info routing-table details | get router info routing-table details | ||
Line 381: | Line 579: | ||
diagnose ip arp list | diagnose ip arp list | ||
- | # afficher les règle | + | # afficher les règles |
diagnose firewall proute list | diagnose firewall proute list | ||
+ | |||
+ | # afficher le cache de routage | ||
+ | diag ip rtcache list | ||
</ | </ | ||
Line 391: | Line 592: | ||
</ | </ | ||
+ | En webUI on peut voir la table de routage dans le " | ||
+ | |||
+ | {{ : | ||
=====Static===== | =====Static===== | ||
Line 409: | Line 613: | ||
>the " | >the " | ||
source : [[http:// | source : [[http:// | ||
+ | |||
=====OSPF===== | =====OSPF===== | ||
Line 446: | Line 651: | ||
config redistribute " | config redistribute " | ||
end | end | ||
- | set router-id | + | set router-id |
+ | set passive-interface " | ||
+ | # annoncer sa route statique par défaut dans l' | ||
+ | set default-information-originate enable | ||
+ | set default-information-metric-type 1 | ||
end | end | ||
</ | </ | ||
Line 452: | Line 661: | ||
Diag : | Diag : | ||
<code bash> | <code bash> | ||
+ | # affiche le status de tous les protocoles de routage dynamiques de ce forti : | ||
+ | get router info protocols | ||
+ | |||
+ | get router info ospf status | ||
get router info ospf neighbor | get router info ospf neighbor | ||
+ | get router info ospf interface | ||
+ | |||
+ | # afficher le LSDB (LSAs type 1 et 2) : | ||
+ | get router info ospf database brief | ||
+ | # afficher les détails de chaque LSA | ||
+ | get router info ospf database router lsa | ||
+ | # affiche les LSAs envoyés par ce Fortigate : | ||
+ | get router info ospf database self-originate | ||
+ | |||
get router ospf | get router ospf | ||
show router ospf | show router ospf | ||
- | # clear route | + | # |
- | exec router clear ospf [process x] | + | # Logging (à partir de la version 5.4+) |
+ | # | ||
+ | config router ospf | ||
+ | set log-neighbour-changes enable | ||
+ | |||
+ | # | ||
+ | # Debug | ||
+ | # | ||
+ | #diagnose ip router ospf packet hello enable | ||
+ | diagnose ip router ospf all enable | ||
+ | diagnose ip router ospf level info | ||
+ | diagnose debug cli 0 | ||
+ | diagnose debug console timestamp enable | ||
+ | diagnose debug enable | ||
+ | # nettoyage du debug | ||
+ | diagnose ip router ospf all disable | ||
+ | diagnose debug disable | ||
+ | |||
+ | # redémarrer le processus OSPF | ||
+ | execute | ||
</ | </ | ||
Line 467: | Line 708: | ||
</ | </ | ||
+ | ====Agrégation de routes==== | ||
+ | |||
+ | Pour simplifier les tables de routage, on peut agréger les routes sur les ABR (Area Border Router) ou les routeurs ASBR (Autonomous System Border Router). Cela consiste, sur ledit routeur, à fusionner plusieurs annonces en une seule, de préfixe plus court (par exemple 10.0.0.0/24 et 10.0.1.0/24 => 10.0.0.0**/ | ||
+ | |||
+ | L' | ||
+ | * sur un ABR, pour agréger des routes apprises de l'aire 1 (c'est un exemple) : | ||
+ | <code bash> | ||
+ | config router ospf | ||
+ | config area | ||
+ | edit 0.0.0.1 | ||
+ | config range | ||
+ | edit 1 | ||
+ | set prefix 10.0.0.0 255.255.254.0 | ||
+ | end | ||
+ | end | ||
+ | end | ||
+ | </ | ||
+ | |||
+ | * sur un ASBR, pour agréger des routes statiques redistribuées dans l'OSPF : | ||
+ | <code bash> | ||
+ | config router ospf | ||
+ | config summary-address | ||
+ | edit 1 | ||
+ | set prefix 10.0.0.0 255.255.254.0 | ||
+ | end | ||
+ | end | ||
+ | </ | ||
+ | |||
+ | Ces routes sont visibles dans la table de routage sous la forme : | ||
+ | <code bash> | ||
+ | get router info routing-table ospf | ||
+ | [..] | ||
+ | O | ||
+ | </ | ||
+ | |||
+ | source : [[http:// | ||
+ | |||
+ | ====Redistribution de route==== | ||
+ | |||
+ | On peut activer la redistribution de __toutes__ les routes statiques dans l'OSPF en activant '' | ||
+ | * une **access-list** (ou **ACL**) qui sélectionne des réseaux | ||
+ | * une **route-map** qui associe une action à une ACL | ||
+ | |||
+ | Exemple de redistribution de 2 (parmi d' | ||
+ | <code bash> | ||
+ | # définition de l' | ||
+ | # exact-match permet de ne sélectionner que le préfixe exact (pas ses sous-réseaux) | ||
+ | config router access-list | ||
+ | edit " | ||
+ | set comments " | ||
+ | config rule | ||
+ | edit 1 | ||
+ | set prefix 10.1.0.0 255.255.0.0 | ||
+ | set exact-match disable | ||
+ | next | ||
+ | edit 2 | ||
+ | set prefix 10.2.0.0 255.255.0.0 | ||
+ | set exact-match disable | ||
+ | next | ||
+ | end | ||
+ | |||
+ | # définition de la route-map | ||
+ | # préciser l' | ||
+ | config router route-map | ||
+ | edit " | ||
+ | config rule | ||
+ | edit 1 | ||
+ | set match-ip-address " | ||
+ | set action permit | ||
+ | next | ||
+ | end | ||
+ | |||
+ | # activation de la redistribution des routes statiques dans l'OSPF | ||
+ | # et filtrage des annonces | ||
+ | config router ospf | ||
+ | config redistribute " | ||
+ | set status enable | ||
+ | set routemap " | ||
+ | end | ||
+ | end | ||
+ | </ | ||
+ | =====BGP===== | ||
+ | |||
+ | Exemple de configuration BGP basique : | ||
+ | <code bash> | ||
+ | # NB : les numéros d'AS 64512 et 64513 sont privés | ||
+ | config router bgp | ||
+ | set as 64512 | ||
+ | set router-id 10.0.255.2 | ||
+ | config neighbor | ||
+ | edit " | ||
+ | set remote-as 64513 | ||
+ | next | ||
+ | end | ||
+ | | ||
+ | # déclaration des réseaux annoncés | ||
+ | config network | ||
+ | edit 1 | ||
+ | set prefix 10.0.255.2 255.255.255.255 | ||
+ | next | ||
+ | edit 2 | ||
+ | set prefix 10.0.200.94 255.255.255.254 | ||
+ | next | ||
+ | edit 3 | ||
+ | set prefix 10.143.8.0 255.255.255.248 | ||
+ | next | ||
+ | end | ||
+ | end | ||
+ | </ | ||
+ | |||
+ | Diagnostique : | ||
+ | <code bash> | ||
+ | # afficher les routes apprises en BGP | ||
+ | show bgp routes all | ||
+ | get router info protocols | ||
+ | get router info bgp neighbor | ||
+ | get router bgp | ||
+ | |||
+ | # afficher la configuration | ||
+ | show router bgp | ||
+ | </ | ||
+ | |||
+ | Debug : | ||
+ | <code bash> | ||
+ | diagnose ip router bgp all | ||
+ | diagnose debug enable | ||
+ | |||
+ | # clearer toutes les connexions BGP | ||
+ | execute router clear bgp all | ||
+ | </ | ||
+ | |||
+ | Article plus détaillé : [[informatique: | ||
=====PBR===== | =====PBR===== | ||
Line 493: | Line 866: | ||
external IP range = l'IP (ou les IPs) de substitution | external IP range = l'IP (ou les IPs) de substitution | ||
</ | </ | ||
- | =======Firewall====== | + | |
+ | |||
+ | =======Sessions====== | ||
+ | |||
+ | Le terme de session s' | ||
<code bash> | <code bash> | ||
- | # afficher la politique de sécurité | + | # compter les connexions dans le VDOM |
- | show firewall policy | + | get system session status |
- | # liste concise des sessions (1/ligne) - équivalent d'un netstat | + | # liste concise des sessions (1/ligne) - affiche les DNAT et SNAT |
get system session list | get system session list | ||
+ | </ | ||
- | # To examine the firewall | + | Pour afficher plus de détails on utilise '' |
+ | <code bash> | ||
+ | # pour afficher les sessions HTTP ouvertes depuis la machine 10.0.0.2 | ||
+ | diagnose sys session | ||
diagnose sys session filter src 10.0.0.2 | diagnose sys session filter src 10.0.0.2 | ||
+ | diagnose sys session filter dport 80 | ||
diagnose sys session list | diagnose sys session list | ||
+ | |||
# en plus verbeux : | # en plus verbeux : | ||
diagnose sys session full-stat | diagnose sys session full-stat | ||
diagnose sys session stat | diagnose sys session stat | ||
- | # To clear all sessions | + | # pour afficher les filtres en place |
+ | diagnose sys session filter | ||
+ | |||
+ | # pour supprimer toutes les sessions | ||
diagnose sys session clear | diagnose sys session clear | ||
- | # To clear all sessions | + | # ! inutile de préciser qu'on flush toutes les sessions |
- | diagnose sys session | + | </ |
- | diagnose sys session | + | |
- | diagnose sys session | + | Les flags : |
- | # -> va clearer uniquement les sessions matchant | + | * '' |
+ | * si celle-ci est toujours valide, il supprime le flag '' | ||
+ | * sinon il la flag '' | ||
+ | |||
+ | Pour modifier les timeouts par défaut (3600 secondes = 1 heure par défaut) : | ||
+ | <code bash> | ||
+ | config system | ||
+ | set default 1800 | ||
+ | end | ||
+ | </ | ||
+ | |||
+ | Modifier le timeout d'un type de session, par exemple des flux HTTP : | ||
+ | <code bash> | ||
+ | config system session-ttl | ||
+ | config port | ||
+ | edit 80 | ||
+ | set protocol 6 | ||
+ | set start-port 80 | ||
+ | set end-port 80 | ||
+ | set timeout 1800 | ||
+ | next | ||
+ | end | ||
+ | end | ||
+ | </code> | ||
+ | |||
+ | Enfin, il est aussi possible de personnaliser | ||
+ | <code bash> | ||
+ | config firewall service custom | ||
+ | edit " | ||
+ | set tcp-portrange 80 8080 | ||
+ | set session-ttl 1800 | ||
+ | next | ||
+ | end | ||
+ | </ | ||
+ | =======Firewall====== | ||
+ | |||
+ | <code bash> | ||
+ | # afficher la politique de sécurité | ||
+ | show firewall policy | ||
# stats sur le filtrage de paquets | # stats sur le filtrage de paquets | ||
Line 523: | Line 947: | ||
=====Identity-based policy===== | =====Identity-based policy===== | ||
- | Depuis la version 5.2 on peut créer des règles de sécurité qui, si elles matchent un flux, agissent comme un portail captif et invitent l' | + | Depuis la version 5.2 on peut créer des règles de sécurité qui, si elles matchent un flux, agissent comme un portail captif et invitent l' |
- | Pour cela il faut d' | + | Pour cela il faut d' |
+ | <code bash> | ||
+ | config user group | ||
+ | edit " | ||
+ | set member " | ||
+ | end | ||
+ | config firewall policy | ||
+ | edit "< | ||
+ | set groups " | ||
+ | end | ||
+ | </ | ||
Les pré-requis pour cela : | Les pré-requis pour cela : | ||
* il faut qu'au moins un des services suivants soit inclus dans les services permis de la règle : HTTP, HTTPs, TELNET ou FTP. | * il faut qu'au moins un des services suivants soit inclus dans les services permis de la règle : HTTP, HTTPs, TELNET ou FTP. | ||
* Pour que le client génère un flux que le firewall redirige vers son portail d' | * Pour que le client génère un flux que le firewall redirige vers son portail d' | ||
- | * le portail captif (HTTP) est hébergé sur le port tcp/1000 du firewall donc, en cas de firewalls chainés, il faut que ce service ne soit pas bloqué | + | * le portail captif (HTTP) est hébergé |
- | * si une règle plus large existe, même en-dessous de la règle d' | + | * si une règle plus large existe, même en-dessous de la règle d' |
- | Une fois authentifié, | + | Une fois authentifié, |
- | On peut personnaliser la mire d' | + | ====Utiliser un certificat spécifique==== |
- | Dans la règle de sécurité on peut : | + | Pour utiliser un certificat spécifique pour la page d' |
- | * rediriger | + | * faire que l'IP du portail captif du Fortigate résolve (par exemple 10.0.0.1 <-> wifi.intra.domaine.com) |
- | * préciser le certificat | + | * créer un certificat matchant ce nom (wifi.intra.domaine.com) |
+ | * rediriger l' | ||
+ | <code bash> | ||
+ | config firewall policy | ||
+ | edit 36 | ||
+ | set auth-redirect-addr " | ||
+ | set auth-cert cert-wifi.intra | ||
+ | end | ||
+ | </ | ||
- | doc utile : [[http:// | + | Enfin, il faut passer la page d' |
+ | <code bash> | ||
+ | config user setting | ||
+ | set auth-secure-http enable | ||
+ | end | ||
+ | </ | ||
+ | |||
+ | doc utile : | ||
+ | * [[http:// | ||
+ | * [[http:// | ||
+ | |||
+ | On peut personnaliser la mire d' | ||
+ | |||
+ | Changer le port par défaut (par défaut c'est le 1000) : | ||
+ | <code bash> | ||
+ | config system global | ||
+ | set auth-https-port 1001 | ||
+ | end | ||
+ | </ | ||
Pour lister les utilisateurs authentifiés ainsi que diverses infos y ayant attrait : | Pour lister les utilisateurs authentifiés ainsi que diverses infos y ayant attrait : | ||
<code bash> | <code bash> | ||
diagnose firewall auth list | diagnose firewall auth list | ||
- | + | # (remplacer " | |
- | # remplacer " | + | |
</ | </ | ||
Line 614: | Line 1073: | ||
Pour créer un nouveau VDOM il suffit de faire '' | Pour créer un nouveau VDOM il suffit de faire '' | ||
- | On peut relier 2 VDOMs via un équipement externe ou via des vdom-links, des interconnexion interne | + | ====Interconnecter 2 VDOMs==== |
+ | |||
+ | On peut relier 2 VDOMs via un équipement externe ou via des vdom-links, des interconnexions internes | ||
<code bash> | <code bash> | ||
config global | config global | ||
Line 621: | Line 1082: | ||
end | end | ||
</ | </ | ||
- | Les vdom-link **npuX-vlink** créés automatiquement quand on active la prise en charge des VDOMs sont offloadés (accélérés matériellement). Le nombre de liens créé est fonction du nombre de Network Processor (NPU) ; par exemple sur les 800c il y en a un (NP4). On ne peut pas les supprimer, même si on ne s'en sert pas. | + | Les vdom-link **npuX-vlink**, créés automatiquement quand on active la prise en charge des VDOMs, sont offloadés (accélérés matériellement). Le nombre de liens créé est fonction du nombre de Network Processor (NPU) ; par exemple sur les 800c il y en a un (NP4). On ne peut pas les supprimer, même si on ne s'en sert pas. |
+ | |||
+ | ====Supprimer un VDOM==== | ||
+ | |||
+ | Pour supprimer un VDOM, comme pour tout objet dans FortiOS, il faut d' | ||
+ | <code bash> | ||
+ | diagnose sys checkused system.vdom.name vpn | ||
+ | entry used by table system.interface: | ||
+ | entry used by table system.vdom-property: | ||
+ | </ | ||
+ | |||
+ | On ne peut supprimer le VDOM que lorsqu' | ||
+ | <code bash> | ||
+ | config vdom | ||
+ | | ||
+ | end | ||
+ | </ | ||
+ | |||
Line 706: | Line 1185: | ||
En webUI, la configuration se réalise dans "Log & Report > Log Config > Log Settings" | En webUI, la configuration se réalise dans "Log & Report > Log Config > Log Settings" | ||
+ | <WRAP center round info 80%> | ||
+ | Apparemment depuis les versions FortiOS 5.6, le log sur les disques SSD n'est plus activé/ | ||
+ | </ | ||
Pour consulter les logs en CLI : | Pour consulter les logs en CLI : | ||
Line 790: | Line 1272: | ||
# générer des messages de log pour test : | # générer des messages de log pour test : | ||
diagnose log test | diagnose log test | ||
+ | </ | ||
+ | |||
+ | Pour debugguer le process de gestion des logs, miglogd : | ||
+ | <code bash> | ||
+ | diagnose debug application miglogd -1 | ||
+ | diagnose debug enable | ||
</ | </ | ||
Line 796: | Line 1284: | ||
diagnose debug config-error-log read | diagnose debug config-error-log read | ||
</ | </ | ||
+ | |||
+ | |||
+ | ======Mail d' | ||
+ | |||
+ | Le Fortigate peux envoyer des mails d' | ||
+ | |||
+ | Le serveur de mail à utiliser est personnalisable dans " | ||
+ | |||
+ | Pour tester l' | ||
+ | |||
======Services réseau====== | ======Services réseau====== | ||
Line 822: | Line 1320: | ||
# vider les attributions d' | # vider les attributions d' | ||
execute dhcp lease-clear <@ IP | all> | execute dhcp lease-clear <@ IP | all> | ||
+ | |||
+ | # debug | ||
+ | diagnose debug console timestamp enable | ||
+ | diagnose debug app dhcps 7 | ||
+ | diagnose debug enable | ||
</ | </ | ||
+ | =====NTP===== | ||
+ | |||
+ | Le NTP client (pour MAJ l' | ||
+ | |||
+ | En CLI on peut affiner les réglages NTP, notamment ajouter plus d'un serveur de temps, configurer l' | ||
+ | <code bash> | ||
+ | config global | ||
+ | config system ntp | ||
+ | set ntpsync enable | ||
+ | set type custom | ||
+ | config ntpserver | ||
+ | edit 1 | ||
+ | set server " | ||
+ | next | ||
+ | edit 2 | ||
+ | set server " | ||
+ | next | ||
+ | end | ||
+ | set source-ip 10.0.0.1 | ||
+ | end | ||
+ | end | ||
+ | </ | ||
+ | |||
+ | Pour vérifier l' | ||
+ | <code bash> | ||
+ | diagnose sys ntp status | ||
+ | synchronized: | ||
+ | |||
+ | ipv4 server(10.0.1.1) 10.0.1.1 -- reachable(0xf1) S:1 T:5 selected | ||
+ | server-version=4, | ||
+ | reference time is debbeaed.145d3c58 -- UTC Fri Jun 1 15:55:25 2018 | ||
+ | clock offset is -0.004431 sec, root delay is 0.001755 sec | ||
+ | root dispersion is 0.074173 sec, peer dispersion is 53 msec | ||
+ | </ | ||
+ | |||
+ | |||
+ | ====Activer le serveur NTP du FTG==== | ||
+ | |||
+ | Le Fortigate peut faire office à son tour de serveur NTP pour un réseau local ; il faut pour cela l' | ||
======Services sécurité====== | ======Services sécurité====== | ||
Line 866: | Line 1408: | ||
</ | </ | ||
+ | =====update via webproxy===== | ||
+ | Pour les Fortigate qui n'ont pas un accès direct à Internet, on peut configurer l' | ||
+ | <code bash> | ||
+ | config system autoupdate tunneling | ||
+ | set status enable | ||
+ | set address " | ||
+ | set port 3128 | ||
+ | end | ||
+ | # éventuellement, | ||
+ | config system fortiguard | ||
+ | set source-ip 10.0.178.1 | ||
+ | end | ||
+ | </ | ||
+ | src: https:// | ||
+ | |||
+ | Si le Fortiguard ne se met pas à jour, on peut diagnostiquer avec : | ||
+ | <code bash> | ||
+ | # depuis le VDOM d' | ||
+ | execute ping update.fortiguard.net | ||
+ | |||
+ | diagnose test update info | ||
+ | |||
+ | diagnose debug enable | ||
+ | diagnose debug application update 255 | ||
+ | execute update-ase | ||
+ | execute update-av | ||
+ | execute update-ips | ||
+ | </ | ||
======Diagnostique et debug====== | ======Diagnostique et debug====== | ||
Line 878: | Line 1448: | ||
# ~get tech : diagnostique complet à envoyer au support aussi | # ~get tech : diagnostique complet à envoyer au support aussi | ||
diagnose debug report | diagnose debug report | ||
+ | execute tac report | ||
+ | |||
+ | # debugguer une fonction (~un process) | ||
+ | # < | ||
+ | diagnose debug application < | ||
+ | |||
+ | # pour réinitialiser le niveau de debug | ||
+ | diagnose debug reset | ||
+ | |||
+ | # activer le log dans la console | ||
+ | diagnose debug comlog enable | ||
+ | # lire les logs | ||
+ | diagnose debug comlog read | ||
+ | # reset les logs console | ||
+ | diagnose debug comlog clear | ||
+ | diagnose debug comlog info | ||
</ | </ | ||
+ | |||
+ | Sur certains modèles on ne peut pas consulter les logs de debug à postériori ; dans ce cas si on sait reproduire le problème, ouvrir une console sur le Fortigate, logguer la session puis : | ||
+ | <code bash> | ||
+ | diagnose debug kernel level 7 | ||
+ | diagnose debug console timestamp enable | ||
+ | diagnose debug enable | ||
+ | </ | ||
+ | |||
+ | En cas d' | ||
=====ping et cie===== | =====ping et cie===== | ||
Line 915: | Line 1510: | ||
diagnose debug cli 0 | diagnose debug cli 0 | ||
diagnose debug flow show console enable | diagnose debug flow show console enable | ||
+ | # bonus: encore plus verbeux | ||
+ | diagnose debug flow show function-name enable | ||
+ | diagnose debug flow show iprope enable | ||
# filtrer sur une adresse (source, dest) | # filtrer sur une adresse (source, dest) | ||
Line 929: | Line 1527: | ||
diagnose debug flow trace stop | diagnose debug flow trace stop | ||
diagnose debug disable | diagnose debug disable | ||
- | |||
- | # bonus | ||
- | diagnose debug flow show function-name enable | ||
- | diagnose debug flow show iprope enable | ||
</ | </ | ||
Line 973: | Line 1567: | ||
=====sniffer packet===== | =====sniffer packet===== | ||
- | C'est une implémentation de tcpdump ; la syntaxe basique est : '' | + | C'est une implémentation de tcpdump ; la syntaxe basique est : '' |
<code bash> | <code bash> | ||
diagnose sniffer packet any '' | diagnose sniffer packet any '' | ||
Line 989: | Line 1583: | ||
<WRAP center round info 80%> | <WRAP center round info 80%> | ||
- | Il est important de noter que les paquets accélérés par les Network Processors (NP1, 2 etc...) | + | Il est important de noter que les paquets accélérés par les Network Processors (NP1, 2 etc...) |
</ | </ | ||
Line 1028: | Line 1622: | ||
diagnose debug app hatalk 255 | diagnose debug app hatalk 255 | ||
+ | |||
+ | # Afficher les paquets ICMP de type 3 code 4 | ||
+ | # (fragmentation nécessaire mais impossible à cause du drapeau (flag) DF) | ||
+ | diagnose sniffer packet any ' | ||
+ | # alternative : | ||
+ | diagnose sniffer packet any ' | ||
</ | </ | ||
+ | |||
+ | =====Packet capture===== | ||
+ | |||
+ | On peut capturer des paquets au format pcap pour pouvoir interpréter la trace avec Wireshark. Pour cela, il suffit de se rendre dans le menu " | ||
+ | |||
+ | {{: | ||
+ | |||
+ | <WRAP center round important 60%> | ||
+ | Si le menu n' | ||
+ | </ | ||
+ | <WRAP center round alert 60%> | ||
+ | Si l'on tombe sur une "Error 403: Access denied." | ||
+ | </ | ||
+ | |||
+ | =====iperf===== | ||
+ | |||
+ | Les fortigates intègrent un client iperf (accessible à partir du mode global), qui permet de réaliser des tests de débit entre 2 interfaces du même forti, ou avec un serveur externe. | ||
+ | <code bash> | ||
+ | conf global | ||
+ | # test avec un serveur iperf externe | ||
+ | diagnose traffictest client-intf wan1 | ||
+ | diagnose traffictest port 5201 | ||
+ | diagnose traffictest run -c 10.0.1.24 | ||
+ | |||
+ | # test entre l' | ||
+ | diagnose traffictest client-intf wan1 | ||
+ | diagnose traffictest server-intf wan2 | ||
+ | diagnose traffictest run | ||
+ | </ | ||
+ | Malheureusement il n'est pas possible de l' | ||
+ | |||
+ | La plupart des options classiques d' | ||
+ | |||
+ | |||
+ | =====Mécanismes de protection===== | ||
+ | |||
+ | ====Conserve mode==== | ||
+ | |||
+ | Le **conserve mode** est un mécanisme de protection qui est enclenché lorsque le système n'a plus assez de mémoire partagée disponible. Cela a pour conséquence de désactiver l'AV et les changements de configuration, | ||
+ | |||
+ | On peut configurer l' | ||
+ | <code bash> | ||
+ | config system global | ||
+ | set av-failopen {off | pass | one-shot | idledrop} | ||
+ | </ | ||
+ | * off : les sessions ouvertes continent mais les nouvelles sont bloquées ; si une session ouverte nécessite l' | ||
+ | * pass : bypass l' | ||
+ | * one-shot : pareil que " | ||
+ | * idledrop : le forti va chercher a libérer de la mémoire en coupant les sessions du host qui en a le plus d' | ||
+ | |||
+ | ====Session removal==== | ||
+ | |||
+ | Le **session removal** est un mode qui s' | ||
+ | |||
+ | Commandes de debug: | ||
+ | <code bash> | ||
+ | diagnose hardware sysinfo shm | ||
+ | SHM counter: | ||
+ | SHM allocated: | ||
+ | SHM total: | ||
+ | conservemode: | ||
+ | shm last entered: | ||
+ | system last entered: | ||
+ | SHM FS total: | ||
+ | SHM FS free: | ||
+ | SHM FS avail: | ||
+ | SHM FS alloc: | ||
+ | |||
+ | get sys perf stat | grep Memory | ||
+ | Memory states: 86% used # <- raison du conserve mode | ||
+ | |||
+ | diag sys top | ||
+ | |||
+ | diag hardware sysinfo memory | ||
+ | </ | ||
+ | |||
+ | Tuning pour optimiser la mémoire : | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | < | ||
+ | config system global | ||
+ | set tcp-halfclose-timer 60 | ||
+ | set tcp-halfopen-timer 5 | ||
+ | set tcp-timewait-timer 0 | ||
+ | set udp-idle-timer 60 --> default 180 s | ||
+ | ! | ||
+ | config ips global | ||
+ | set socket-size 4 --> default 32 MB | ||
+ | set engine count 2 | ||
+ | ! | ||
+ | config system dns | ||
+ | set dns-cache-limit 300 --> default 1800 s | ||
+ | ! | ||
+ | config system session-ttl | ||
+ | set default 300 --> default 3600 s | ||
+ | </ | ||
======MAJ du firmware====== | ======MAJ du firmware====== | ||
+ | |||
+ | =====Choisir le bon===== | ||
+ | |||
+ | Ces quelques lignes non contractuelles vous donnerons des pistes pour déterminer la bonne version à installer dans votre environnement. | ||
+ | |||
+ | Il est globalement recommandé, | ||
+ | |||
+ | A la différence d' | ||
+ | |||
+ | Plus une version (majeure = les 2 premier chiffres dans le numéro de version, par exemple 7.2) est récente, plus elle dispose de fonctionnalités mais plus elle risque de comporter des bugs. De ce fait il est officieusement recommandé de ne pas installer en production des versions "trop jeunes", | ||
+ | |||
+ | Pour accéder aux outils Fortinet, on se log sur le portail [[https:// | ||
+ | |||
+ | * " | ||
+ | |||
+ | * " | ||
+ | |||
+ | Les versions **NPI** (New Product Integration) possèdent | ||
+ | |||
+ | Depuis la version 7.2, les versions même mineures sont tagguées en **Feature ou Mature release** ; ces flags sont indiqués dans le nom de l' | ||
+ | |||
+ | Une fois la bonne version trouvée, jetez un œil aux release notes de celle-ci afin d' | ||
+ | |||
+ | |||
+ | =====Mise en œuvre===== | ||
On peut récupérer la version courante en mode global : | On peut récupérer la version courante en mode global : | ||
Line 1058: | Line 1779: | ||
execute backup config ftp < | execute backup config ftp < | ||
</ | </ | ||
+ | |||
+ | NB : il n'est (à priori) pas/plus possible, dans les dernières versions de firmware (5.x et +), d' | ||
+ | |||
+ | |||
+ | =====Rollback===== | ||
+ | |||
+ | Si une version de firmware ne fonctionne pas comme prévu, on peut faire un rollback c' | ||
+ | <code bash> | ||
+ | # lister les partitions (gestion des images de fortiOS) | ||
+ | diagnose sys flash list | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | Image build at Aug 1 2014 02:49:11 for b0689 | ||
+ | |||
+ | # ensuite on peut configurer l' | ||
+ | execute set-next-reboot secondary | ||
+ | | ||
+ | |||
+ | # rebooter | ||
+ | execute reboot | ||
+ | This operation will reboot the system ! | ||
+ | Do you want to continue? (y/n)y | ||
+ | </ | ||
+ | |||
=====USB auto-install===== | =====USB auto-install===== | ||
Une fonctionnalité intéressante des Fortigate est d' | Une fonctionnalité intéressante des Fortigate est d' | ||
- | * un ficheir | + | * un fichier |
* une image **image.out** il chargera ce firmware au boot | * une image **image.out** il chargera ce firmware au boot | ||
- | Ces noms de fichiers sont configurables en webUI dans " | + | Ces noms de fichiers sont configurables en webUI dans " |
+ | <code bash> | ||
+ | config global | ||
+ | config system auto-install | ||
+ | set auto-install-config enable | ||
+ | set auto-install-image enable | ||
+ | set default-config-file " | ||
+ | set default-image-file " | ||
+ | end | ||
+ | end | ||
+ | </ | ||
+ | La clé doit être formatée en FAT pour être lisible par le Fortigate ; pour le vérifier : | ||
+ | <code bash> | ||
+ | diagnose hardware deviceinfo disk | ||
+ | [..] | ||
+ | Disk USB-7(user-usb) ref: 32 28.8GiB | ||
+ | partition ref: 33 28.8GiB, | ||
+ | execute usb-disk list | ||
+ | | ||
+ | </ | ||
+ | |||
+ | Et, si la conf/ | ||
+ | <code bash> | ||
+ | execute restore image usb < | ||
+ | execute restore config usb < | ||
+ | </ | ||
======Métrologie/ | ======Métrologie/ | ||
+ | |||
+ | Pour lister les capteurs du châssis : | ||
+ | <code bash> | ||
+ | config global | ||
+ | execute sensor { list | detail } | ||
+ | </ | ||
En vrac, les OIDs intéressants : | En vrac, les OIDs intéressants : | ||
Line 1081: | Line 1859: | ||
.1.3.6.1.4.1.12356.1.9.0 gauge mémoire (%) | .1.3.6.1.4.1.12356.1.9.0 gauge mémoire (%) | ||
# network | # network | ||
- | .1.3.6.1.4.1.12356.1.10.0 nb de session | + | .1.3.6.1.4.1.12356.1.10.0 nb de sessions |
.1.3.6.1.4.1.12356.101.12.1.1.0 nb de tunnel vpn IPSec up | .1.3.6.1.4.1.12356.101.12.1.1.0 nb de tunnel vpn IPSec up | ||
// OIDs v4-v5 | // OIDs v4-v5 | ||
# system .1.3.6.1.2.1.1.1.0 | # system .1.3.6.1.2.1.1.1.0 | ||
- | .1.3.6.1.4.1.12356.101.4.1.1.0 version de fortiOS | + | .1.3.6.1.4.1.12356.100.1.1.1.0 SN |
+ | .1.3.6.1.2.1.1.5.0 hostname | ||
+ | .1.3.6.1.4.1.12356.101.4.1.1.0 version de fortiOS | ||
.1.3.6.1.4.1.12356.101.4.1.3.0 CPU (%) | .1.3.6.1.4.1.12356.101.4.1.3.0 CPU (%) | ||
.1.3.6.1.4.1.12356.101.4.4.2.1.2.2 % CPU (Core #) 1 min | .1.3.6.1.4.1.12356.101.4.4.2.1.2.2 % CPU (Core #) 1 min | ||
.1.3.6.1.4.1.12356.101.4.4.2.1.2.3 % CPU (Core #) 5 min | .1.3.6.1.4.1.12356.101.4.4.2.1.2.3 % CPU (Core #) 5 min | ||
.1.3.6.1.4.1.12356.101.4.1.4.0 memoire (%) ? | .1.3.6.1.4.1.12356.101.4.1.4.0 memoire (%) ? | ||
+ | .1.3.6.1.2.1.1.1 Description SNMP | ||
+ | .1.3.6.1.2.1.1.3 uptime | ||
+ | .1.3.6.1.2.1.1.4 Contact SNMP | ||
+ | .1.3.6.1.2.1.1.5 hostname + local domain name | ||
+ | .1.3.6.1.2.1.1.6 Location SNMP | ||
+ | # sensors | ||
+ | .1.3.6.1.4.1.12356.101.4.3.1.0 Hardware Sensor count | ||
+ | .1.3.6.1.4.1.12356.101.4.3.2.1.1 Hardware Sensor index | ||
+ | .1.3.6.1.4.1.12356.101.4.3.2.1.2 Hardware Sensor Name | ||
+ | .1.3.6.1.4.1.12356.101.4.3.2.1.3 Hardware Sensor Value | ||
+ | .1.3.6.1.4.1.12356.101.4.3.2.1.4 Hardware Sensor Alarm | ||
# network (IF-MIB) | # network (IF-MIB) | ||
- | .1.3.6.1.4.1.12356.101.4.1.8.0 nb sessions | + | .1.3.6.1.4.1.12356.101.4.1.8.0 nb |
.1.3.6.1.4.1.12356.101.4.1.11 fgSysSesRate1 | .1.3.6.1.4.1.12356.101.4.1.11 fgSysSesRate1 | ||
.1.3.6.1.4.1.12356.101.4.1.12 fgSysSesRate10 | .1.3.6.1.4.1.12356.101.4.1.12 fgSysSesRate10 | ||
Line 1102: | Line 1893: | ||
.1.3.6.1.2.1.31.1.1.1.6 IF-MIB:: | .1.3.6.1.2.1.31.1.1.1.6 IF-MIB:: | ||
.1.3.6.1.2.1.31.1.1.1.10 IF-MIB:: | .1.3.6.1.2.1.31.1.1.1.10 IF-MIB:: | ||
+ | # table ARP/ | ||
+ | .1.3.6.1.2.1.4.22.1.2 | ||
+ | # | ||
+ | # | ||
# policy | # policy | ||
.1.3.6.1.4.1.12356.101.5.1.2.1.1.1.1 fgFwPolID (index des # des règles) | .1.3.6.1.4.1.12356.101.5.1.2.1.1.1.1 fgFwPolID (index des # des règles) | ||
Line 1158: | Line 1953: | ||
=====fnsysctl===== | =====fnsysctl===== | ||
- | **fnsysctl** est une commande qui permet de lancer certaines commandes du système Linux sous-jacent. Comme elle est cachée, elle n'est ni auto-complétée dans le prompt, ni documentée (< | + | **fnsysctl** est une commande qui permet de lancer certaines commandes du système Linux sous-jacent. Comme elle est cachée, elle n'est ni auto-complétée dans le prompt, ni documentée (< |
<code bash> | <code bash> | ||
Line 1173: | Line 1968: | ||
RX bytes: | RX bytes: | ||
Interrupt: | Interrupt: | ||
+ | </ | ||
+ | <code bash> | ||
+ | FGT (global) # fnsysctl cat / | ||
+ | Inter-| | ||
+ | face |bytes | ||
+ | ort13: 428296577505964 392502799967 | ||
</ | </ | ||
Line 1223: | Line 2024: | ||
source : [[http:// | source : [[http:// | ||
- | =====Activer le serveur NTP===== | ||
- | |||
- | On peut activer le serveur NTP du Fortigate sur chaque interface particulièrement ; cela s' | ||
=====Route statique inactive===== | =====Route statique inactive===== | ||
Line 1253: | Line 2051: | ||
set gui-allow-unamed-policy enable | set gui-allow-unamed-policy enable | ||
</ | </ | ||
+ | |||
+ | Cela peut également se configurer en webUI dans System > Features Visibility, puis cocher "Allow unnamed policies" | ||
+ | =====Configuration d'une CRL===== | ||
+ | |||
+ | Pour utiliser une liste de révocation (récupération en HTTP) et la mettre à jour périodiquement (toutes les 3600s = 1h) : | ||
+ | <code bash> | ||
+ | config global | ||
+ | config certificate crl | ||
+ | edit " | ||
+ | set http-url " | ||
+ | set source-ip 10.0.0.1 | ||
+ | set update-interval 3600 | ||
+ | next | ||
+ | end | ||
+ | end | ||
+ | </ | ||
+ | '' | ||
+ | |||
+ | Pour forcer la MAJ de la CRL " | ||
+ | <code bash> | ||
+ | execute vpn certificate crl import auto G_CRL_1 | ||
+ | </ | ||
+ | |||
+ | =====Where used ?===== | ||
+ | |||
+ | Pour pouvoir supprimer un objet (adresse, interface, VDOM, etc...) il faut que toutes ses références, | ||
+ | |||
+ | Par exemple pour supprimer une interface, il faut au préalable supprimer les routes statiques, les tunnels, les objets addresse, etc... qui en font mention. Cela peut se faire en webUI, dans le menu " | ||
+ | {{ : | ||
+ | |||
+ | On peut aussi lister les objets utilisés directement en CLI, avec la (nouvelle) commande : | ||
+ | <code bash> | ||
+ | fgt600e (global) # diagnose sys cmdb refcnt show system.interface: | ||
+ | entry used by table system.interface: | ||
+ | entry used by table system.interface: | ||
+ | </ | ||
+ | |||
+ | Si tout semble propre mais que l' | ||
+ | <code bash> | ||
+ | fgt600e (interface) # delete LAN-centre | ||
+ | Error: IP address 10.41.1.1 is configured as source-ip for communications to NTP server | ||
+ | command_cli_delete: | ||
+ | Command fail. Return code -23 | ||
+ | </ | ||
+ | =====VPN protocols relaying===== | ||
+ | |||
+ | Pour mettre en place un concentrateur VPN on créer une interface virtuelle " | ||
+ | <code bash> | ||
+ | config system interface | ||
+ | edit dialup | ||
+ | # pour le DHCP (dans ce cas, DHCP over IPSec) | ||
+ | set dhcp-relay-service enable | ||
+ | set dhcp-relay-ip " | ||
+ | set dhcp-relay-type ipsec | ||
+ | # pour le NetBIOS | ||
+ | set netbios-forward enable | ||
+ | set wins-ip 10.1.16.253 | ||
+ | next | ||
+ | </ | ||
+ | |||
+ | Pour rappel le DHCP permet la découverte et l' | ||
+ | |||
+ | =====Auto filesystem check===== | ||
+ | |||
+ | Après une coupure électrique les Fortigate affichent un message d' | ||
+ | <code bash> | ||
+ | config system global | ||
+ | set autorun-log-fsck enable | ||
+ | end | ||
+ | </ | ||
+ | |||
+ | C'est toutefois non-recommander car 1) ça prend du temps donc il vaut mieux le planifier en heure non ouvrée et 2) en cas d' | ||
+ | |||
+ | =====SSH sortant impossible===== | ||
+ | |||
+ | Contexte : Utiliser le client SSH de la CLI du Forti pour se connecter sur un autre équipement, | ||
+ | <code bash> | ||
+ | forti (root) # execute ssh admin@10.0.0.1 | ||
+ | Unable to negotiate with 10.0.0.1: no matching key exchange method found. Their offer: diffie-hellman-group14-sha1, | ||
+ | </ | ||
+ | |||
+ | Cela signifie que l’équipement cible propose des paramètres SSH non acceptés par le Forti, et que donc la connexion SSH ne peut s' | ||
+ | |||
+ | Pour modifier les paramètres SSH acceptés par le forti, qui ont été durcis avec certaines versions : | ||
+ | <code bash> | ||
+ | config global | ||
+ | | ||
+ | set strong-crypto disable | ||
+ | append ssh-kex-algo diffie-hellman-group14-sha1 | ||
+ | end | ||
+ | end | ||
+ | </ | ||
+ | Cela permet d' | ||
+ | |||
+ | <WRAP center round important 60%> | ||
+ | NB : tuner ces paramètres impacte les protocoles chiffrés : HTTPS/ | ||
+ | </ | ||
+ | |||
======Liens utiles====== | ======Liens utiles====== | ||
* [[http:// | * [[http:// |
informatique/fortinet/start.txt · Last modified: 2024/02/28 14:55 by pteu