Bastion d'administration

Définition

Un bastion d'administration ou plus simplement bastion est un équipement de rebond qui remplit plusieurs fonctions de sécurité (authentification, traçabilité, renouvellement des secrets). Cependant, le bastion constitue une ressource d'information critique car il contient des secrets d'authentification critique et les journaux liés aux actions d'administriation. Il est donc nécessaire qu'un bastion ne soit pas exposé sur un SI de faible niveau de confiance.

Enfin, un bastion ne doit être déployé que si la présence d'un équipement de rebond est jugé pertinente et si le niveau de confiance de l'équipement est satisfaisant.

Comme mentionné dans les recommandations de l'ANSSI sur la protection des systèmes d'information essentiels et sur l'administration sécurisée des systèmes d'information:
La solution qui consiste à déployer un bastion comme moyen d’interconnexion depuis un poste d’un SI bureautique vers un SI d’administration est à proscrire. Elle procure un sentiment de sécurité injustifié puisqu’en réalité le bastion, porte d’entrée unique vers le SI d’administration, constitue une opportunité d’attaque importante, par exemple depuis un poste bureautique compromis depuis Internet. Source ANSSI

Rupture protocolaire

Les actions d'administration necessitent des besoins forts en traçabilité et en confidentialité.

Il peut donc être souhaitable de mettre en place une rupture protocolaire pour assurer la traçabilité des connexions, un certain nombre de filtrage ou pour compenser la faiblesse de sécurité des protocoles d'administration.

Il est important de noter qu'avec une rupture protocolaire, la session sécurisée peut être rompu. C'est pour cela qu'il est préférable de renoncer à la rupture protocolaire pour des besoins de confidentialité.

Utilisation

Il existe deux implémentations du bastion ssh :

  • ForwardAgent
  • ProxyJump

Dû aux problèmes de sécurité qu'implique l'implémentation ForwardAgent, nous n'aborderons que ProxyJump dans ce guide.

La transmission de l’agent doit être activée avec prudence. Les utilisateurs ayant la possibilité de contourner les autorisations sur l’hôte distant (pour la chaussette UNIX de l’agent) peuvent accéder à l’agent local via la connexion transférée. Un attaquant ne peut pas obtenir de clé de l’agent, mais il peut effectuer des opérations sur les clés qui lui permettent de s’authentifier en utilisant les identités chargées dans l’agent. (source du manuel)

ProxyJump dynamique

Nous allons nous connecter à host2 en passant par host1, sans rupture protocolaire.

ssh -J host1 host2

Il est également possible de le faire avec des utilisateurs définis :

ssh -J user1@host1 user2@host2

ProxyJump statique

Il est possible de configurer dans .ssh/config :

# On renseigne le bastion
Host bastion
  HostName host1

Host server
  HostName host2
  ProxyJump bastion
ssh server

Référenciels

ANSSI :