Skip to main content

Настройка встроенных правил брандмауэра

Вы можете просматривать правила брандмауэра по умолчанию и настраивать правила для your GitHub Enterprise Server instance.

Сведения о брандмауэре your GitHub Enterprise Server instance

GitHub Enterprise Server использует несложный брандмауэр Ubuntu (UFW) на виртуальном модуле. Дополнительные сведения см. в разделе UFW документации по Ubuntu. GitHub Enterprise Server автоматически обновляет список разрешенных служб брандмауэра с каждым выпуском.

После установки GitHub Enterprise Server все необходимые сетевые порты автоматически открываются для приема подключений. Каждый необязательный порт автоматически настроен как deny, а исходящая политика по умолчанию настроена как allow. Отслеживание состояния включено для всех новых подключений; обычно это сетевые пакеты с набором битов SYN. Дополнительную информацию см. в разделе Сетевые порты.

Брандмауэр UFW также открывает несколько других портов, необходимых для правильной работы GitHub Enterprise Server. Дополнительные сведения о наборе правил UFW см. в статье о UFW README.

Просмотр правил брандмауэра по умолчанию

  1. Переход по протоколу SSH в your GitHub Enterprise Server instance. Если экземпляр состоит из нескольких узлов, например, если настроен высокий уровень доступности или георепликация, передача осуществляется по SSH в основной узел. При использовании кластера можно использовать для передачи по SSH в любой узел. Дополнительные сведения о доступе к SSH см. в разделе Доступ к административной оболочке (SSH).

    $ ssh -p 122 admin@HOSTNAME
  2. Чтобы просмотреть правила брандмауэра по умолчанию, выполните команду sudo 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)

Добавление настраиваемых правил брандмауэра

Предупреждение. Перед добавлением настраиваемых правил брандмауэра создайте резервную копию текущих правил на случай необходимости сброса к известному рабочему состоянию. Если сервер заблокирован, обратитесь к GitHub Enterprise Support, чтобы перенастроить исходные правила брандмауэра. Восстановление исходных правил брандмауэра включает простой вашего сервера.

  1. Настройте настраиваемое правило брандмауэра.
  2. Проверьте состояние каждого нового правила с помощью команды status numbered.
    $ sudo ufw status numbered
  3. Чтобы создать резервную копию настраиваемых правил брандмауэра, выполните команду cp для перемещения правил в новый файл.
    $ sudo cp -r /etc/ufw ~/ufw.backup

После обновления your GitHub Enterprise Server instance необходимо повторно применить настраиваемые правила брандмауэра. Рекомендуется создать сценарий для повторного применения настраиваемых правил брандмауэра.

Восстановление правил брандмауэра по умолчанию

Если после изменения правил брандмауэра произошла ошибка, можно сбросить правила из исходной резервной копии.

Предупреждение. Если вы не создали резервную копию исходных правил, прежде чем внести изменения в брандмауэр, обратитесь к GitHub Enterprise Support, чтобы получить дополнительную помощь.

  1. Переход по протоколу SSH в your GitHub Enterprise Server instance. Если экземпляр состоит из нескольких узлов, например, если настроен высокий уровень доступности или георепликация, передача осуществляется по SSH в основной узел. При использовании кластера можно использовать для передачи по SSH в любой узел. Дополнительные сведения о доступе к SSH см. в разделе Доступ к административной оболочке (SSH).

    $ ssh -p 122 admin@HOSTNAME
  2. Чтобы восстановить предыдущие правила резервного копирования, скопируйте их обратно в брандмауэр с помощью команды cp.

    $ sudo cp -f ~/ufw.backup/*rules /etc/ufw
  3. Перезапустите брандмауэр, выполнив команду systemctl.

    $ sudo systemctl restart ufw
  4. С помощью команды 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)