GitLabで作成したリポジトリに対して、ポート22以外のSSH経由でアクセスできるようにする

セキュリティなどの理由からSSHをポート22以外で動かしているサーバにGitLabをインストールした際、
クライアントからそのGitLabで作成したリポジトリ(git@SERVERNAME:USERNAME/REPOSITORY.git)に対してアクセスできるようにする。

確認事項

  • サーバで稼働しているSSHは22以外で動いている(今回は10022)
  • GitLabはユーザgitで動いている(=リポジトリのユーザ名部分がgit)
  • GitLabに登録したSSHの鍵を使ってgit@SERVERNAMEにポート10022に対してSSHで接続できる
    ※接続すると
    Welcome to GitLab, USERNAME
    Connection to SERVERNAME closed.
    と表示されて切断される
    

方法1 クライアント側のSSHの設定ファイルを編集する

vi ~/.ssh/config

  Host SERVERNAME
  Port 10022
  IdentityFile 秘密鍵のパス

アクセスするリポジトリURLはそのまま

git@SERVERNAME:USERNAME/REPOSITORY.git

方法2 GitLabの設定ファイルを編集しSSHのポート番号を指定する

vi config/gitlab.yml

  ssh_port: 10022

その後、GitLabを再起動

GitLabのプロジェクトページにアクセスすると、リポジトリURLが

ssh://git@SERVERNAME:10022/USERNAME/REPOSITORY.git

と変わっているので、そこに対してアクセスする

参考

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中