📘

SSH接続

2024/10/06に公開

SSH接続とは

SSH:セキュアシェル

ネットワークを介して別のコンピュータを遠隔操作するためのツール

似たようなサービスに「Telnet」がある。

違いは?

暗号化されるかされないか
→ネットワーク上に流れるデータを覗き見されたとしたら、暗号化されていないと、情報が筒抜けになってしまう。

どんな場面で使用するか?

サーバーのセットアップかメンテナンスを行う場合

レンタルサーバーの場合は、管理画面にアクセスして画面上で管理することができるが、
AWSなどの場合はコマンドを使うのが一般的。コマンドなどを用いることで、自分の好きな様にセットアップなどができると言うメリットがある。

リモートのサーバーにアクセスする方法

  • リモートのサーバーに入る際に、sshコマンドを使用する
  • 現在は秘密鍵・公開鍵暗号を使う。
大まかな流れ
  1. 秘密鍵と公開鍵のペアを生成
  2. 公開鍵をサーバーに置く
  3. 秘密鍵を指定して、サーバーにアクセス

sshコマンド

ssh -i 秘密鍵 ユーザー名@ホスト名(IPアドレスなど)
認証までの流れ

1.サーバー立ち上げの際には、キーペアを作成するのが一般的
2.AWSで新しく作るを選択すると、pemファイルが作られ、それをダウンロードする
3.ダウンロードしたファイルは.ssh/ディレクトリに移動
4.ファイルのアクセス権限を変更する
 >理由:鍵ファイルは、ユーザー本人しかアクセスできないようにしておかないといけないから
【権限変更】

chmod 600

他の開発者がそのサーバーに入りたい時はどうするか?

結論:自身のPCで公開鍵と秘密鍵を生成する
→ その後、公開鍵を渡して、それをサーバーに置いてもらってアクセスする!

【公開鍵/秘密鍵生成】

ssh-keygen

基本、指定しない限り、id_rsaとなる。
./sshディレクトリに何か名前をつけて保存するのがベスト。
例)/User/~~/.ssh/ssh_test

そうすると、公開鍵と秘密鍵が作成できる!
・公開鍵

ファイル名:ssh_test.pub

・秘密鍵

ファイル名:ssh_test

参照

SSHって何?
SSH接続の方法

Discussion