your GitHub Enterprise Server instanceのファイアウォールについて
GitHub Enterprise Server は、仮想アプライアンスで Ubuntu の Uncomplicated Firewall (UFW) を使用します。 詳しい情� �についてはUbuntuのドキュメンテーションの"UFW"を参照してく� さい。 GitHub Enterprise Server は、許可されたサービスのファイアウォールのホワイトリストをリリースごとに自動的に更新します。
GitHub Enterprise Server をインストールすると、接続を受け入れるために必要なすべてのネットワークポートが自動的に開かれます。 不必要なすべてのポートは自動的にdeny
に設定され、デフォルトの送信ポリシーはallow
に設定されます。 ステートフルな追跡は、任意の新しいコネクションに対して有効化されます。それらは通常、SYN
ビットが立てられているネットワークパケットです。 詳しい情� �については"ネットワークポート"を参照してく� さい。
UFW ファイアウォールは、GitHub Enterprise Server が正しく動作するのに必要となる他のいくつかのポートも開きます。 UFW のルールセットに関する詳しい情� �については、the UFW README を参照してく� さい。
デフォルトのファイアウォールルールの表示
- your GitHub Enterprise Server instanceにSSHでアクセスしてく� さい。 詳しい情� �については「管理シェル(SSH)にアクセスする」を参照してく� さい。
$ 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 Supportに問い合わせて、元のファイアウォールルールを再設定してく� さい。 元のファイアウォールルールを復元すると、サーバーでダウンタイ� が発生します。
- カスタ� のファイアウォールルールを設定する。
status numbered
コマンドを使って、新しいルールそれぞれのステータスをチェックします。$ sudo ufw status numbered
- カスタ� のファイアウォールルールをバックアップするには、
cp
コマンドを使用してルールを新しいファイルに移動します。$ sudo cp -r /etc/ufw ~/ufw.backup
your GitHub Enterprise Server instanceをアップグレードした後は、カスタ� のファイアウォールルールを再適用しなければなりません。 ファイアウォールのカスタ� ルールを再適用するためのスクリプトを作成することをお勧めします。
デフォルトのファイアウォールルールのリストア
ファイアウォールルールの変更後に何か問題が生じたなら、オリジナルのバックアップからルールをリセットできます。
警告: ファイアウォールに変更を� える前にオリジナルのルールをバックアップしていなかった� �合は、GitHub Enterprise Support にお問い合わせく� さい。
- your GitHub Enterprise Server instanceにSSHでアクセスしてく� さい。 詳しい情� �については「管理シェル(SSH)にアクセスする」を参照してく� さい。
$ 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)