Azure Security Center
La fonctionnalité de Just-In-Time dans Azure est étroitement associée à Azure Security Center. Il s’agit d’un portail qui vous permet d’avoir une vue synthétique sur la sécurité de votre souscription dans Azure. Vous pourrez ainsi y trouver des informations ou recommandations comme par exemple :
- Mauvaise ouverture de ports pour certaines VM,
- Absence d’encryption pour vos ressources,
- Erreur de configuration au sein de votre réseau VNet,
- Et bien d’autres choses encore !
Présentation de Just-In-Time VM Access
En termes de sécurité, Microsoft publie régulièrement de nombreuses recommandations. Deux principes que l’on retrouve régulièrement et pour lesquels l’éditeur propose certaines solutions sont détaillés ci-dessous :
- Just needed access : cette pratique consiste à toujours à donner un accès à un utilisateur/administrateur qui soit limité et suffisant pour les actions à réaliser. On ne donc pas plus de privilège qu’il n’en faut.
- Just in time access : les comptes à fort privilèges ne sont désormais plus actifs de manière permanente mais doivent être activés sur demande – lorsque c’est nécessaire par un workflow précis et pour une durée limitée dans le temps.
Just-In-Time VM Access est une fonctionnalité (oui c’est son nom complet) qui vous permet de résoudre un problème majeur dans la gestion de votre infrastructure puisqu’elle vous permet de limiter l’accès à une VM lorsqu’aucune action d’administration n’est nécessaire sur cette dernière.
Activation de Just-In-Time VM Access
L’utilisation de Just-In-Time VM Access permet à Azure d’ouvrir votre « endpoint« pour vous connecter en RDP (3389/TCP) ou bien en SSH (22/TCP) vers votre serveur Windows ou Linux. L’intérêt étant que cet accès n’est pas ouvert de manière permanent et sera donc limité dans le temps.
Par défaut, lorsque vous accédez à Azure Security Center, vous verrez des recommandations pour les VM sur lesquelles cette option n’est pas activée (comme nous pouvons le voir dans la capture d’écran ci-dessus).
Vous pourrez alors activer cette fonctionnalité sur les différentes VM lorsque c’est nécessaire. Veillez bien à choisir le port 22 ou 3389 selon si votre VM est un serveur Linux ou Windows. Nous ne voulons pas ouvrir de ports plus que nécessaires ! 😉
Une fois cette option activée pour vos VM, vous pourrez alors voir quels ont été les derniers accès ou s’il y a des demandes actuellement en cours.
Lorsque vous effectuez une demande, Azure ouvrira automatiquement le port nécessaire pour vous connecter à cette machine virtuelle.
Il est alors possible d’autoriser l’accès soit pour une adresse IP / plage d’adresse particulière et également de limiter la durée pendant laquelle cet accès sera autorisé. Par défaut, le maximum est 3 heures mais la demande peut bien entendu être prolongée.
Pour faire une demande d’accès, tout se passe alors depuis le portail Azure sur votre objet VM. Vous verrez toujours les différents onglets RDP, SSH, Bastion mais vous aurez des options additionnelles permettant de demander l’accès en cliquant sur le bouton « Request Access« .
De plus, pour améliorer encore la sécurité, par défaut, l’outil va détecter votre adresse IP et procéder à l’ouverture de flux uniquement pour votre adresse IP ! Mais si vous êtes dans un cas particulier de VPN ou d’IP partagée vous pouvez toujours choisir les autres options.
Il ne vous reste alors plus qu’à télécharger le fichier RDP ou vous connecter comme vous avez l’habitude à votre VM via l’adresse IP publique choisie.
L’intérêt de ce type de fonctionnalité est de limiter au maximum les ouvertures de ports ou les possibilités d’accès en direct via Internet à un serveur lorsque vous n’avez aucun besoin de réaliser des tâches d’administration. 🙂
N’hésitez pas à consulter la page sur le site de Microsoft qui aborde la méthodologie du « Just in time VM access » en visitant le lien suivant.