6
3

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.

SSHってなんぞや?

Posted at

##はじめに

githubやgitlabなどのバージョン管理ツールで「SSH接続」なんてよく聞くかと思います。
ですが、駆け出しエンジニアの僕は、SSH?ってとても疑問に思いました。
なんのためにSSH接続?とやらを行うのか、そもそもSSHとはなんなのか?
という疑問を調べてまとめていきたいと思います。

ぜひ参考にしていただければと思います。

##対象読者

  • プログラミング初心者
  • 駆け出しエンジニア
  • SSHってなんぞや?って方

##SSHとは
「Secure Shell」の略で、ネットワークに接続された機器を遠隔操作し、管理するための手段。
Secureとは安全という意味で、どうやら安全にネットワーク機器を遠隔操作する手段みたいだ。
リモートコンピュータと通信するためのプロトコル。

従来のtalnet⇨パスワードでもなんでもそのまま送る(平文をそのまま送る)
SSH⇨暗号化して送信

###メリット
ネットワーク上の全ての通信が暗号化されるため安全に通信が行える。
認証の仕組みが多様化している。(パスワード、公開鍵、ワンタイムパスワード等)

##SSHを使う理由
現代において、各種サーバー機器は、ほとんどの場合、操作する人から離れた場所にある。
操作する人が安全にインターネット経由で接続できる手段が必要となる。
理由としては、第三者がサーバーにログインできてしまうと、サーバー内でよからぬ操作をされてしまう可能性があるから。
SSHを利用すると、サーバーに安全に接続しできる。

##SSLとは?
似たような言葉で「SSL」というものがある。

下記のような違いがある。
SSH⇨サーバーに接続するのが目的でサーバーの管理者が対象者となる
SSL⇨Webサイトを安全に表示し、Webサイトの閲覧者が対象者となる。

##認証方法
離れた場所にあるサーバへ安全に接続するため、
サーバーへのログインの適正チェックの方法は複数用意されている。

###パスワード認証方式
認証方法:パスワード
安全度:低い

####メリット
設定が簡単

####デメリット
パスワードがバレると終わる(泣)

###公開鍵認証方式
認証方法:「公開鍵」など生成したファイル
安全度:高い

####メリット
暗号化して通信を行い、暗号化した内容を解読するのに秘密鍵がないと解読できないから。
そこまで設定も難しくない。

####デメリット
なんだろう?
秘密鍵を見られたら終わる

公開鍵認証方式の流れ
①クライアント側で秘密鍵・公開鍵を作成
②公開鍵をサーバー側に預ける
③ログインしようとする
④サーバー側で公開鍵で暗号作成
⑤サーバー側からクライアント側に暗号を渡す。
⑥クライアント側で秘密鍵を復号
⑦複合した情報をサーバー側に渡す
⑧既存情報と一致することを確認する

現在は公開鍵認証方式が主に使われている。

###SSH鍵の作り方
環境:Mac OS Big Sur (M1チップ)

ルートディレクトリにて

ssh-keygen -t rsa

こちら打ちますと、パスワードが必要かどうかなどが聞かれますが、
特に必要がなければ全て「Enter」でOK。

##SSH鍵が作成されたかの確認方法

ルートディレクトリにて

ls -a

表示されたディレクトリの中に、.sshがあれば成功。

※ ls -a ディレクトリを全て表示する
lsだけだと隠されたディレクトリが表示されないので注意。

Finderのホームディレクトリで、
Shift+command+.
でも見ることができます。


cat .ssh/id_rsa.pub

上記コマンドで公開鍵の内容を見ることができます。

ちなみに.sshの中身ですが、.pubがついているのが公開鍵です。
id_rsa⇨秘密鍵
id_rsa.pub⇨公開鍵

##終わりに
調べているとSSHについてなんとなくわかるようになってきました。
簡単にまとめると
クライアント側で、鍵を二つ作る。
公開していい鍵と、絶対公開してはならない鍵。
公開鍵をサーバー側と共有。
データをクライアント側からサーバー側に投げると、
サーバー側がデータを暗号化してクライアント側に返す。
その暗号は絶対公開してはならない鍵でしか読み解けない。
みたいな感じかな(どんな感じだよ。)

間違ってたらすいません。。。💦

##参考記事一覧

6
3
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
6
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?