【SSH】初心者必見!SSHキーを作成【秘密鍵と公開鍵】

2023年1月31日Git

Gitlab
ミニマリスト_カミ

みなさんこんにちは!
カミ@god48_です。

この記事はSSHの秘密鍵」「公開鍵」が詳しくない方に向けて、SSHキーを作成するための記事になるます。

ぜひ参考にしてみてくださいね。

SSHキーを作成【秘密鍵と公開鍵】の流れ

  • .sshディレクトリを作成
  • cd .sshへ移動
  • SSH キーの作成
  • ファイル名の指定
  • パスワードを2回入力

秘密鍵とは

秘密鍵:公開鍵で暗号化された通信を復号するために使うキーのことです。

スポンサードサーチ

公開鍵とは

公開鍵:通信するときに暗号化するときに使うキーのことです。

秘密鍵と公開鍵をわかりやすく説明

秘密鍵と公開鍵は、例えるなら鍵穴とキーみたいなものです。
誰でも開けれるわけではなく、そのキーを知っている自分のみが開けれるというふうに覚えてもらえれば大丈夫です。

スポンサードサーチ

SSHとは

SSHとは、Secure Shell(セキュアシェル)の省略で、ネットワークの接続方式です。
接続はリモートコンピューターと通信をするためのプロトコルです。
ネットワークを経由して、サーバー通信します。

秘密鍵とは、公開鍵暗号方式です。

.sshディレクトリの確認

// ssh確認
ls -al ~/.ssh

「.ssh」が見つからなければ、作成していないと言うことになります。

.sshディレクトリのへ移動

// ディレクトリをsshに移動.
cd ~/.ssh

sshコマンドを打ってエラーが返ってきても、確認できますよ。

No such file or directory

-bash: cd: /Users/User名/.ssh: No such file or directory

コマンドを打って、「No such file or directory」が表示された時は「.sshディレクトリが存在しない」場合のエラーです。

sshディレクトリに移動できない場合は、先に鍵を作成します。

sshディレクトリの作成

.sshディレクトリが作成してないのを確認ができたので、「.sshディレクトリ」を作成します。

.sshディレクトリの作成

// sshディレクトリの作成
mkdir ~/.ssh

「mkdir」はディレクトリ作成のコマンドになります。

スポンサードサーチ

cdを.sshディレクトリに移動

// ディレクトリを.sshに移動.
cd ~/.ssh

いよいよ本題に入ります。
sshディレクトリが作成できたことによって、sshディレクトリに移動します。

SSH キーの作成

// 鍵の生成   鍵のタイ   ファイル名
ssh-keygen -t rsa -C メールアドレス@example.com

SSHキーを作成します。
まずは「ssh」ディレクトリに移動して、その後にメールアドレスを登録します。
※sshキーの登録がない方は、作成を行います。

Generating public/private rsa key ''.
Enter file in which to save the key (/Users/user/.ssh/id_rsa): 

次のテキストが表示されたらそのまま「Enter」を押してください。
ファイル名を任意で指定したい場合は指定してください。

そうでない場合はそのままEnterを押してください。

Enter passphrase (empty for no passphrase): 
Enter same passphrase again:

二度パスワードを入力する必要があるので、入力しだください。

パスワードを入力すると、鍵の作成されました。

Last login: Fri Jul 23 19:26:07 on ttys004
You have new mail.

The default interactive shell is now zsh.
To update your account to use zsh, please run `chsh -s /bin/zsh`.
For more details, please visit https://support.apple.com/kb/HT208050.
MacBook-Pro:~User$ cd ~/.ssh
MacBook-Pro:.ssh User$ ssh-keygen -t rsa -C example@example.com
Generating public/private rsa key ''.
Enter file in which to save the key (/Users/User/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /Users/User/.ssh/id_rsa.
Your public key has been saved in /Users/User/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:floBu2kkn47yWNGOK6OpYLir4s9aepNL/5K7Hh0P768 example@example.com
The key's randomart image is:
+---[RSA 3072]----+
|                 |
|                 |
|        .        |
|       . o       |
|      ooS .      |
|.     .O=+ .     |
|o. o..+.Ooo      |
|+.====.=.+       |
|O**==XO.oEo.     |
+----[SHA256]-----+
MacBook-Pro:.ssh User$ 

秘密鍵の確認

lsで確認できます。

// 秘密鍵の確認
MacBook-Pro:.ssh User$ ls

問題なく、表示れていれば秘密鍵が作られています。

id_rsa		
id_rsa.pub
+---[RSA 3072]----+
|                 |
|                 |
|        .        |
|       . o       |
|      ooS .      |
|.     .O=+ .     |
|o. o..+.Ooo      |
|+.====.=.+       |
|O**==XO.oEo.     |
+----[SHA256]-----+
MacBook-Pro:.ssh User$ ls
id_rsa		id_rsa.pub

SSH Keyのコピー

% pbcopy < ~/.ssh/id_rsa.pub (Macでの取得)
% clip < ~/.ssh/id_rsa.pub (Windowsでの取得)

SSH Keyの中身をコピーしたい場合は上記コマンドでコピーすることができます。
「Github」「Gitlab」への設定で貼り付けしたい場合に使用してください。

実装やエラーが解決できない場合

プログラミングの実装やエラーでどうしてもわからない場合はメンターに相談するのが一番です。

考えている、見えている範囲が狭くなり、解決から遠くに行って何時間も、何日も経っていることなんてよくある話です。

そういう時は聞ける先輩や、メンターに相談することが大事です。

僕にも相談可能なので気軽に相談してください。

Twitterからの連絡だと確実ですよ。

オンラインスクールやプログラミングスクールといったプログラミングを学べる方法もあるので、そちらもぜひ活用してもいいと思います。

Web開発で分からない時

オンライン完結型スクール DMM WEBCAMP PRO

アプリ開発で分からない時

プログラミング×稼げる副業スキルはテックキャンプ

プログラミングについて分からない時

RUNTEQ(ランテック)

僕への個人でもメンターでも、スクールでもお好きな方を活用ください。

GitGit

Posted by kami