RaspberryPiに公開鍵認証でSSH接続を制限する

スポンサーリンク

どうもTK(@simplewasbest)です。

今更感はあるんですが、最近自宅のRaspberryPiのセキュリティを上げている最中です。VPNサーバ兼homebridgeになっているので、万が一VPN突破されたらとか、万が一SSHでログインされたらとか考えると多少なりともバックドアを埋めておくに越したことはないので。

ということで、今回はラズパイ君への接続を公開鍵認証方式にして、秘密鍵を持っているパソコン、つまり自分の作業用PCからしかアクセス出来ないようしておきます。

 

スポンサーリンク

公開鍵暗号方式とは?

データの暗号化方式には、共通鍵暗号と公開鍵暗号の大きく2つがあります。共通鍵暗号においては
データの暗号化と復号に同じ鍵を使用しますが、公開鍵暗号では暗号化に公開鍵を使用して、復号に
秘密鍵という別の鍵を使用します。公開鍵暗号では、受信者は公開鍵を公開しておき、送信者はその
公開鍵で暗号化し送信します。データは受信者のみ持つ秘密鍵でしか復号できないので盗聴されにくい。
引用元:https://www.infraeye.com/study/linuxz55.html

Linuxでは結構メジャーに使いますよね。特に運用では必ず組み込んでいるところあると思いますし、ただ少し運用が面倒になるものではありますが。

スポンサーリンク

作業用PC側での作業

先ずは作業用PC側で公開鍵と秘密鍵を作成します。因みに私の作業用PCはMacで実施しています。基本的なコマンドはLinuxと同じですね。Macの場合は標準のターミナルで実行できます。保存場所、パスフレーズ等は各々好きなところに修正してくださいね。

これで公開鍵と秘密鍵が作成できました。鍵の場所は、~/.sshに入っているはずので、今度はこれをRaspberryPiに転送してあげる必要があります。

 

RaspberryPi側での作業

こちらでの作業は少しコマンドを叩いてあげる必要があります。(そもそも本記事の読者であれば、簡単すぎるかもしれませんが。。)転送された公開鍵をRaspberryPiのssh authorized_keysに登録します。

そして次に sshの設定で、公開鍵認証を使うように設定し、余計な操作を禁止にしておきます。

 

 

ログインできるかの確認

これで設定は全ておしまいです。あとは作業用PCからログインできるかを確認し、念のため鍵無しPCからログインできないことを試して終了です。

そして鍵無しのPCではログインできないことを確認。

 

これで一応のログイン規制はできましたね。あくまでも念のためという意味はありますが、VPNなどで外部で一部出ているところもあるので、これで少しは安全になったんじゃないかと思います。

ではこんな感じで。

 

 

 

 

 

 

スポンサーリンク

あわせて読みたい

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です