Skip to main content

Configuration de règles de pare-feu intégrées

Vous pouvez voir les règles de pare-feu par défaut et personnaliser les règles pour your GitHub Enterprise Server instance.

À propos du pare-feu de your GitHub Enterprise Server instance

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.

Affichage des règles de pare-feu par défaut

  1. Connexion SSH à your GitHub Enterprise Server instance. 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. Pour plus d’informations sur l’accès via SSH, consultez « Accès à l’interpréteur de commandes d’administration (SSH) ».

    $ ssh -p 122 admin@HOSTNAME
  2. 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, contactez GitHub Enterprise Support 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.

  1. Configurez une règle de pare-feu personnalisée.
  2. Vérifiez l’état de chaque nouvelle règle avec la commande status numbered.
    $ sudo ufw status numbered
  3. 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 your GitHub Enterprise Server instance, 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, contactez GitHub Enterprise Support pour obtenir une aide supplémentaire.

  1. Connexion SSH à your GitHub Enterprise Server instance. 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. Pour plus d’informations sur l’accès via SSH, consultez « Accès à l’interpréteur de commandes d’administration (SSH) ».

    $ ssh -p 122 admin@HOSTNAME
  2. 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
  3. Redémarrez le pare-feu avec la commande systemctl.

    $ sudo systemctl restart ufw
  4. 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)