SSHでPermission denied (publickey,gssapi-keyex,gssapi-with-mic)の原因と解決方法

ITで知っておくべき知識
スポンサーリンク

SSHログインでPermission denied (publickey,gssapi-keyex,gssapi-with-mic)と出た時の原因と解決方法をまとめました。

スポンサーリンク

Permission denied (publickey,gssapi-keyex,gssapi-with-mic)が出た

ローカルのWindowsパソコンから、インターネット上のLinuxサーバー(CentOS 8)にSSHで接続すると以下のエラーが出ました。

 

どうやらユーザー名やパスワードを入れるどころではないですね。

なんでだろうか?

Permission deniedエラーの意味と原因

このようなエラーが出る原因としてはSSHサーバーの設定にあるようです。

 

Linuxサーバー側のSSHサーバーの設定ファイル

/etc/ssh/sshd_config

を開いてみます。

 

なるほど、パスワードによる認証が禁止になっていました。

このようにしておくとパスワードでログインできないのでセキュリティ上は安心ですね。

 

では、どうすればパスワード認証をオフにしたままでクライアントからサーバーにSSHでログインするのでしょうか?

Permission deniedエラーの解決策

この場合、公開鍵と秘密鍵を作成し設定することでサーバーにSSHログイン可能です。

ローカルPCで公開鍵と秘密鍵のペアを作成

接続する側のマシンで公開鍵と秘密鍵のペアを作成します。

 

今回、MobaXterm を使いました。

https://urashita.com/archives/26666

 

MobaXtermで

を実行します。

 

/home/mobaxterm/.ssh/

の下に

id_rsa.pub
id_rsa

の2つのファイルが作成されます。

 

id_rsa.pubが公開鍵、id_rsaが秘密鍵です。

どちらもテキストファイルです。

ローカルPC側に秘密鍵を設定

秘密鍵はこのまま、ローカルPCの

/home/mobaxterm/.ssh/id_rsa

に置いたままにしておきます。

接続するサーバー側に公開鍵を設定

接続するサーバー側に公開鍵を設定します。

 

接続ユーザのホームディレクトリの下に

/home/user1/.ssh/authorized_keys

というファイル名で設置する必要があります。

 

id_rsa.pubを/home/user1/.ssh にコピーしてauthorized_keysにリネームするか、または、

新規に作成したauthorized_keysにid_rsa.pubの中身をそのままコピーするとよいでしょう。

 

パーミッションを以下のように設定する必要があります。

/home/user/.ssh は 0700
/home/user/.ssh/authorized_keys は 0600

にします。

 

これでSSH接続時のエラーは解決します。

 

ITで知っておくべき知識
スポンサーリンク
スポンサーリンク
うらしたをフォローする
スポンサーリンク
urashita.com 浦下.com (ウラシタドットコム)

コメント

タイトルとURLをコピーしました