À propos du pare-feu de votre instance GitHub Enterprise Server
GitHub Enterprise Server utilise le pare-feu UFW (Uncomplicated Firewall) d’Ubuntu sur l’appliance virtuelle. Pour plus d’informations, consultez « UFW » dans la documentation Ubuntu. GitHub Enterprise Server met automatiquement à jour la liste verte des services autorisés par le pare-feu à chaque publication.
Une fois GitHub Enterprise Server installé, tous les ports réseau nécessaires sont automatiquement ouverts pour accepter les connexions. Chaque port non obligatoire est automatiquement configuré avec la valeur deny
, et la stratégie de trafic sortant par défaut est configurée avec la valeur allow
. Le suivi avec état est activé pour les nouvelles connexions ; il s’agit généralement de paquets réseau avec le jeu de bits SYN
. Pour plus d’informations, consultez « Ports réseau ».
Le pare-feu UFW ouvre également plusieurs autres ports nécessaires au bon fonctionnement de GitHub Enterprise Server. Pour plus d’informations sur l’ensemble de règles UFW, consultez le README UFW.
Nous vous déconseillons de personnaliser le pare-feu UFW, car cela peut compliquer la résolution de certains problèmes.
Affichage des règles de pare-feu par défaut
-
Connexion SSH à votre instance GitHub Enterprise Server. Si votre instance comprend plusieurs nœuds, par exemple si la haute disponibilité ou la géoréplication sont configurées, connectez-vous via SSH au nœud principal. Si vous utilisez un cluster, vous pouvez vous connecter via SSH à n’importe quel nœud. Remplacez HOSTNAME par le nom d’hôte de votre instance, le nom d’hôte ou l’adresse IP d’un nœud. Pour plus d’informations, consultez « Accès à l’interpréteur de commandes d’administration (SSH) ».
Shell ssh -p 122 admin@HOSTNAME
ssh -p 122 admin@HOSTNAME
-
Pour afficher les règles de pare-feu par défaut, utilisez la commande
sudo ufw status
. La sortie doit ressembler à celle-ci :$ sudo ufw status > Status: active > To Action From > -- ------ ---- > ghe-1194 ALLOW Anywhere > ghe-122 ALLOW Anywhere > ghe-161 ALLOW Anywhere > ghe-22 ALLOW Anywhere > ghe-25 ALLOW Anywhere > ghe-443 ALLOW Anywhere > ghe-80 ALLOW Anywhere > ghe-8080 ALLOW Anywhere > ghe-8443 ALLOW Anywhere > ghe-9418 ALLOW Anywhere > ghe-1194 (v6) ALLOW Anywhere (v6) > ghe-122 (v6) ALLOW Anywhere (v6) > ghe-161 (v6) ALLOW Anywhere (v6) > ghe-22 (v6) ALLOW Anywhere (v6) > ghe-25 (v6) ALLOW Anywhere (v6) > ghe-443 (v6) ALLOW Anywhere (v6) > ghe-80 (v6) ALLOW Anywhere (v6) > ghe-8080 (v6) ALLOW Anywhere (v6) > ghe-8443 (v6) ALLOW Anywhere (v6) > ghe-9418 (v6) ALLOW Anywhere (v6)
Ajout de règles de pare-feu personnalisées
Avertissement : Avant d’ajouter des règles de pare-feu personnalisées, sauvegardez vos règles actuelles au cas où vous auriez besoin de revenir à un état opérationnel connu. Si vous êtes bloqué sur votre serveur, visitez Support GitHub Enterprise et contactez-nous pour reconfigurer les règles de pare-feu d’origine. La restauration des règles de pare-feu d’origine implique un temps d’arrêt pour votre serveur.
-
Configurez une règle de pare-feu personnalisée.
-
Vérifiez l’état de chaque nouvelle règle avec la commande
status numbered
.sudo ufw status numbered
-
Pour sauvegarder vos règles de pare-feu personnalisées, utilisez la commande
cp
pour déplacer les règles dans un nouveau fichier.sudo cp -r /etc/ufw ~/ufw.backup
Après avoir mis à niveau votre instance GitHub Enterprise Server, vous devez réappliquer vos règles de pare-feu personnalisées. Nous vous recommandons de créer un script pour réappliquer vos règles de pare-feu personnalisées.
Restauration des règles de pare-feu par défaut
Si un problème se produit après la modification des règles de pare-feu, vous pouvez les réinitialiser à partir de votre sauvegarde d’origine.
Avertissement : si vous n’avez pas sauvegardé les règles d’origine avant d’apporter des modifications au pare-feu, visitez Support GitHub Enterprise et contactez-nous pour obtenir une aide supplémentaire.
-
Connexion SSH à votre instance GitHub Enterprise Server. Si votre instance comprend plusieurs nœuds, par exemple si la haute disponibilité ou la géoréplication sont configurées, connectez-vous via SSH au nœud principal. Si vous utilisez un cluster, vous pouvez vous connecter via SSH à n’importe quel nœud. Remplacez HOSTNAME par le nom d’hôte de votre instance, le nom d’hôte ou l’adresse IP d’un nœud. Pour plus d’informations, consultez « Accès à l’interpréteur de commandes d’administration (SSH) ».
Shell ssh -p 122 admin@HOSTNAME
ssh -p 122 admin@HOSTNAME
-
Pour restaurer les règles précédentes sauvegardées, copiez-les sur le pare-feu avec la commande
cp
.sudo cp -f ~/ufw.backup/*rules /etc/ufw
-
Redémarrez le pare-feu avec la commande
systemctl
.sudo systemctl restart ufw
-
Vérifiez que les règles ont retrouvé leurs valeurs par défaut avec la commande
ufw status
.$ sudo ufw status > Status: active > To Action From > -- ------ ---- > ghe-1194 ALLOW Anywhere > ghe-122 ALLOW Anywhere > ghe-161 ALLOW Anywhere > ghe-22 ALLOW Anywhere > ghe-25 ALLOW Anywhere > ghe-443 ALLOW Anywhere > ghe-80 ALLOW Anywhere > ghe-8080 ALLOW Anywhere > ghe-8443 ALLOW Anywhere > ghe-9418 ALLOW Anywhere > ghe-1194 (v6) ALLOW Anywhere (v6) > ghe-122 (v6) ALLOW Anywhere (v6) > ghe-161 (v6) ALLOW Anywhere (v6) > ghe-22 (v6) ALLOW Anywhere (v6) > ghe-25 (v6) ALLOW Anywhere (v6) > ghe-443 (v6) ALLOW Anywhere (v6) > ghe-80 (v6) ALLOW Anywhere (v6) > ghe-8080 (v6) ALLOW Anywhere (v6) > ghe-8443 (v6) ALLOW Anywhere (v6) > ghe-9418 (v6) ALLOW Anywhere (v6)