Esta versión de GitHub Enterprise se discontinuó el 2021-06-09. No se realizarán lanzamientos de patch, ni siquiera para problemas de seguridad críticos. Para obtener un mejor desempeño, más seguridad y nuevas características, actualiza a la última versión de GitHub Enterprise. Para obtener ayuda con la actualización, contacta al soporte de GitHub Enterprise.

Configurar las reglas de firewall incorporado

Puedes ver las reglas de firewall predeterminadas y personalizar reglas para tu instancia de servidor de GitHub Enterprise.

Acerca del firewell de tu instancia de servidor de GitHub Enterprise

Servidor de GitHub Enterprise utiliza Ubuntu's Uncomplicated Firewall (UFW) en el aparato virtual. Para obtener más información, consulta "UFW" en la documentación de Ubuntu. Con cada lanzamiento, Servidor de GitHub Enterprise actualiza automáticamente la lista blanca de los servicios permitidos del firewell.

Después de que instales Servidor de GitHub Enterprise, se abren automáticamente todos los puertos de red obligatorios para aceptar las conexiones. Cada puerto no obligatorio se configura automáticamente en deny (rechazar), y la directiva predeterminada resultante se configura en allow (permitir). Se habilita el rastreo con estado para todas las conexiones nuevas. Estas suelen ser paquetes de red con el conjunto de bits SYN. Para obtener más información, consulta "Puertos de red."

El firewall de UFW también abre varios puertos más que son obligatorios para que Servidor de GitHub Enterprise funcione correctamente. Para obtener más información sobre el conjunto de reglas de UFW, consulta el README de UFW.

Ver las reglas de firewell predeterminadas

  1. SSH en tu instancia de servidor de GitHub Enterprise.
    $ ssh -p 122 admin@HOSTNAME
  2. Para ver las reglas de firewall predeterminadas, utiliza el comando sudo ufw status. Debes ver un resultado similar a este:
    $ 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)

Agregar reglas de firewell personalizadas

Advertencia: Antes de que agregues reglas de cortafuegos personalizadas, respalda tus reglas actuales en caso de que necesites restablecerlas a algún punto funcional. Si estás bloqueado de tu servidor, comunícate con GitHub Enterprise Support](https://enterprise.githubsupport.com/hc/en-us) o GitHub Premium Support para reconfigurar las reglas originales del firewall. Restaurar las reglas originales del firewall implica tiempo de inactividad para tu servidor.

  1. Configura una regla de firewall personalizada.
  2. Verifica el estado de cada nueva regla con el comando estado numerado.
    $ sudo ufw status numbered
  3. Para hacer una copia de seguridad de tus reglas de firewall personalizadas, utiliza el comando cp para pasar las reglas a un archivo nuevo.
    $ sudo cp -r /lib/ufw ~/ufw.backup

Después de actualizar tu instancia de servidor de GitHub Enterprise, debes volver a aplicar tus reglas de firewall personalizadas. Recomendamos que crees un script para volver a aplicar las reglas de firewall personalizadas.

Restaurar las reglas de firewell predeterminadas

Si algo sale mal después de que cambies las reglas de firewell, puedes restablecer las reglas desde la copia de seguridad original.

Advertencia: Si no respaldaste las reglas originales antes de hacer cambios al cortafuegos. contacta a GitHub Enterprise Support](https://enterprise.githubsupport.com/hc/en-us) o GitHub Premium Support para obtener más asistencia.

  1. SSH en tu instancia de servidor de GitHub Enterprise.
    $ ssh -p 122 admin@HOSTNAME
  2. Para restablecer las reglas de la copia de seguridad anterior, vuélvelas a copiar en el firewell con el comando cp.
    $ sudo cp -f ~/ufw.backup/*rules /lib/ufw
  3. Vuelve a iniciar el firewell con el comando systemctl.
    $ sudo systemctl restart ufw
  4. Confirma que las reglas recuperaron su forma predeterminada con el comando ufw status (estado de ufw).
    $ 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)