はちくもきりの技術メモ

個人的な技術メモ.

windowsからSSHでubuntuに接続するメモ(内部ネットワーク編)

設定や環境構築ってそんなにする頻度高くないからすぐ忘れますよね,私は忘れます.

やったこと

内部ネットワーク内でのssh接続.公開鍵認証を使います.
今回は完全自分用なのでセキュリティが甘いと思います.
公開鍵:サーバに置くやつ.誰かに見られてもいい.
秘密鍵:クライアントに置くやつ.誰にも見られるな.

環境

サーバ:ubuntu20.04 クライアント:6年前のwindows PC
クライアントソフト:MobaXterm

鍵の作成(クライアント)

ssh-keygen -t rsa -b 4096 -f [key name]

-t rsarsa方式(暗号化の種類らしい)での作成,-b 4096は鍵の長さの指定.
鍵の名前はデフォルトだとid_rsa(秘密鍵)とid_rsa.pub(公開鍵).
このコマンドを打つとパスフレーズを入力させられる.未入力で設定しないこともできる.セキュリティ的には多分入れたほうがいい.

公開鍵をサーバに送る

私はUSB使ったけど,コマンドもあるらしい(参考).

ssh-copy-id -i ~/.ssh/id_rsa.pub [リモートユーザー]@[リモートサーバーのホスト名]

サーバでの設定をする

USBで持ってきた公開鍵が~/.ssh/id_rsa.pubだとします.

cd
cat .ssh/id_rsa.pub >> .ssh/authorized_keys #追記にしないと複数ssh接続する時に死にます
rm .ssh/id_rsa.pub
chmod 700 .ssh
chmod 600 .ssh/authorized_keys

また,/etc/ssh/ssh_configを適当に書き換えます.
今回はPortを22から変えました.攻撃怖いので....そのほか,パスワード認証やルートでのログインを禁止にしたほうが安全です.
再起動します.

sudo service sshd restart

最後にポートを開きます.

sudo ufw allow 22 #さきほど設定したポート番号にします

クライアントで接続テスト

ぶっちゃけMobaXtermだとめっちゃくちゃ簡単.
起動→左上の"Session"→一番左の"SSH"で各種設定をします.
Advanced SSH settings→Use private keyで秘密鍵を設定できます.
ちなみに踏み台サーバとか使うときはNetwork settingsからできるらしい.外部からもつなぎたいので次はこれやる.