はじめに
企業環境ではセキュリティの観点から、社内ネットワークからのインターネットアクセスが制限されていることがよくあります。
こうした状況でも、リモートサーバを経由してGitHubリポジトリをクローンする方法として、「SSHローカルフォワーディング」が有効です。
この記事では、ローカルフォワーディングを活用してGitHubに安全にアクセスする手順を詳しく解説します。
前提条件
- ローカルマシンにSSHクライアントがインストールされていること
- リモートサーバへのSSHアクセス権限があること
- リモートサーバがGitHubにアクセスできること
- GitHubアカウントとアクセスしたいリポジトリへの権限があること
1. SSHローカルフォワーディングの設定
まず、ローカルマシンからリモートサーバへのSSH接続を確立し、ポートフォワーディングを設定します。
ssh <username>@<remote-server> -L 8080:localhost:80
usernameはリモートサーバのユーザー名に、remote-serverはリモートサーバのアドレスに置き換えてください。
2. GitHubでのトークン作成
右上のプロフィールアイコンをクリックし、Settingsを選択します。
左サイドメニューからDeveloper settingsをクリックします。
Personal access tokens > Tokens (classic)を選択します。
Generate new token (classic)をクリックします。
repoにチェックを入れます。
トークンが表示されたら、忘れずにコピーして安全な場所に保存してください。
3. リポジトリのクローン
ポートフォワーディングが確立された状態で、以下のコマンドを使用してリポジトリをクローンします:
git clone -c "http.proxy=127.0.0.1:8080" http://<username>:<token>/<repository>.git
usernameにはGitHubのユーザー名を、repositoryにはクローンしたいリポジトリ名を入力してください。また、tokenには先ほど生成したトークンを入力してください。
注意点
- SSHセッションの維持:このセットアップはSSHセッションがアクティブな間のみ機能します。セッションが切断されると、再度接続を確立する必要があります
- セキュリティポリシーの確認:企業のセキュリティポリシーに違反しないよう、必ず適切な許可を得てから実行してください
まとめ
SSHローカルフォワーディングを使用することで、直接のインターネットアクセスが制限された環境でも、安全にGitHubリポジトリをクローンすることができます。この方法は、企業のセキュリティ要件を満たしつつ、効率的な開発作業を可能にします。





