의 방화벽 정보
GitHub Enterprise Server는 가상 어플라이언스에서 Ubuntu의 UFW(복잡하지 않은 방화벽)를 사용합니다. 자세한 내용은 Ubuntu 설명서의 “UFW”를 참조하세요. GitHub Enterprise Server는 각 릴리스에서 허용되는 서비스의 방화벽 허용 목록을 자동으로 업데이트합니다.
GitHub Enterprise Server를 설치하면 모든 필수 네트워크 포트가 자동으로 열리고 연결이 허용됩니다. 필요하지 않은 모든 포트는 자동으로 deny
로 구성되고 기본 발신 정책은 allow
로 구성됩니다. 상태 저장 추적은 모든 새 연결에 대해 사용하도록 설정됩니다. 일반적으로 SYN
비트 집합이 있는 네트워크 패킷입니다. 자세한 내용은 "네트워크 포트"을(를) 참조하세요.
UFW 방화벽은 GitHub Enterprise Server가 제대로 작동하는 데 필요한 다른 여러 가지 포트도 엽니다. UFW 규칙 집합에 대한 자세한 내용은 UFW README를 참조하세요.
일부 문제 해결 문제를 복잡하게 만들 수 있으므로 UFW를 사용자 지정하지 않는 것이 좋습니다.
기본 방화벽 규칙 보기
-
에 SSH합니다. 인스턴스가 여러 노드로 구성된 경우(예: 고가용성 또는 지역 복제가 구성된 경우) 주 노드에 대한 SSH를 수행합니다. 클러스터를 사용하는 경우 임의 노드에 대해 SSH를 수행할 수 있습니다. HOSTNAME을 인스턴스의 호스트 이름 또는 노드의 호스트 이름이나 IP 주소로 바꿉니다. 자세한 내용은 "관리 셸(SSH)에 액세스"을(를) 참조하세요.
Shell ssh -p 122 admin@HOSTNAME
ssh -p 122 admin@HOSTNAME
-
기본 방화벽 규칙을 보려면
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 지원을(를) 방문하여 원본 방화벽 규칙을 다시 구성하도록 요청하세요. 원본 방화벽 규칙을 복원하려면 서버에 대한 가동 중지 시간이 필요합니다.
-
사용자 지정 방화벽 규칙 구성
-
status numbered
명령을 사용하여 각각의 새 규칙 상태를 확인합니다.sudo ufw status numbered
-
사용자 지정 방화벽 규칙을 백업하려면
cp
명령을 사용하여 규칙을 새 파일로 이동합니다.sudo cp -r /etc/ufw ~/ufw.backup
를 업그레이드한 후 사용자 지정 방화벽 규칙을 다시 적용해야 합니다. 방화벽 사용자 지정 규칙을 다시 적용하는 스크립트를 만드는 것이 좋습니다.
기본 방화벽 규칙 복원
방화벽 규칙을 변경한 후 문제가 발생하는 경우 원본 백업에서 규칙을 다시 설정할 수 있습니다.
경고: 방화벽을 변경하기 전에 원본 규칙을 백업하지 않은 경우 GitHub Enterprise 지원을(를) 방문하여 문의하고 추가 지원을 받으세요.
-
에 SSH합니다. 인스턴스가 여러 노드로 구성된 경우(예: 고가용성 또는 지역 복제가 구성된 경우) 주 노드에 대한 SSH를 수행합니다. 클러스터를 사용하는 경우 임의 노드에 대해 SSH를 수행할 수 있습니다. HOSTNAME을 인스턴스의 호스트 이름 또는 노드의 호스트 이름이나 IP 주소로 바꿉니다. 자세한 내용은 "관리 셸(SSH)에 액세스"을(를) 참조하세요.
Shell ssh -p 122 admin@HOSTNAME
ssh -p 122 admin@HOSTNAME
-
이전 백업 규칙을 복원하려면
cp
명령을 사용하여 이전 백업 규칙을 다시 방화벽에 복사합니다.sudo cp -f ~/ufw.backup/*rules /etc/ufw
-
systemctl
명령을 사용하여 방화벽을 다시 시작합니다.sudo systemctl restart ufw
-
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)