5
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

GitlabのSSHの設定をしてみた

Posted at

#はじめに
Gitlabのアカウントを初めて登録して、SSH認証の設定をした流れを記述します。
すでにGithubのSSHも持った状態です。なので今回は複数のSSHを管理する方法を学びます。

Githubでキーを使用しているにも関わらず新たSSHキーを生成、上書きしてしまい二度手間になりました。
もう一度作り直さないと行けなくなるので注意が必要です。

ディレクトリ構成は下記

$ cd ~/.ssh 
.ssh
  .config
    .githubフォルダ
     |_id_rsa
     |_id_rsa.pub
    ・gitlabフォルダ
     |_id_rsa
     |_id_rsa.pub
    known_hosts 

同じキーを色々なアプリで使い回せないので上記の様にアプリごとにキーの管理します。


####ちなみにSSHとは

SSH(Secure Shell)とは通信規格の一種です。
他にはHTTP,HTTPSなどがありますがこれらよりもSSHはセキュリティがしっかりしています。

ローカルリポジトリの情報をリモートリポジトリに送るときは、認証を行い他人からのアクセスをができない様に制限します。


##keyの生成
Gitlabに登録しているメールアドレスを入力してください

$ ssh-keygen -t rsa -C "xxxxxxxx@example.com"

# keysの保存先聞かれる
Enter file in which to save the key (/Users/name/.ssh/id_rsa): ディレクトリ位置のパスを指定

# 例 指定した位置に生成される。 特に指定がない場合はEnter。
Enter file in which to save the key (/Users/name/.ssh/id_rsa): /Users/name/.ssh/gitlub/id_rsa 

yを入力、再びEnter。

The key's randomart image is:

の下にkeyが表示されればOK
lsコマンドでフォルダの中身を確認

$ ls ~/.ssh/gitlab
id_rsa		id_rsa.pub	

id_rsa.pubとid_rsaの2つの鍵(公開鍵と秘密鍵)が書かれたファイルが生成されているはず。

##Gitlabへkeyの設定
catコマンドでファイルの中身を表示
ssh-rsa から メールアドレスの末尾まで をすべてコピー

$ cat ~/.ssh/gitlab/id_rsa.pub

もしくはコピペコマンドで

$ pbcopy < ~/.ssh/gitlab/id_rsa.pub

コピーできたら Gitlabのユーザー設定 > SSH鍵
キーのフォーム内に貼り付け追加する

##~/.ssh/configの設定

ファイル作成

$ touch ~/.ssh/config

権限を変更

$ chmod 700 ~/.ssh/config

権限が変更されたか確認する。下記の様になればOK

$ ls -la ~/.ssh 
-rwx------   1 username  staff     0  4 27 18:45 config

ファイルに設定を書く

vim ~/.ssh/config

"i"(insert)で入力

Host gitlab.com
    HostName gitlab.com
    User name
    #ディレクトリで分けている
    IdentityFile ~/.ssh/gitlab/id_rsa
    TCPKeepAlive yes
    IdentitiesOnly yes

Host github.com
    HostName github.com
    User name
    IdentityFile ~/.ssh/github/id_rsa
    TCPKeepAlive yes
    IdentitiesOnly yes

esc #インサート終了
:wq #保存して閉じる

known_hostsから特定のsshを削除する
ssh/config記事参照

##SSH接続確認

$ ssh -T git@gitlab.com
Welcome to GitLab, @name!

Welcomeが表示されれば成功!

###以上

5
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?