SSHである特定のユーザーやグループだけにパスワード認証/鍵認証を使わせる

サーバーを管理する際に使われるSSH接続においては、基本的には鍵認証を用いるべきです(Rootになれるユーザーは特に)。しかし、実際の運用では、SFTPログインでファイル管理するユーザーにまで鍵を用意するのはなかなか面倒です。そんな時に便利な小技を解説します。当方はCentOSサーバー(さくらのVPS)を使用しています。参考サイト→[OpenSSH] sshd_configの設定項目 – Life with IT

もくじ

  • Matchを使ってユーザーを識別→例外設定を使う
  • 設定の手順と設定例
  • 注意点

Matchを使ってユーザーを識別→例外設定を使う

sshd_configの設定で、通常はサーバーのリモートログインには鍵認証を使うようにしていると思います(してなかったら…サーバー管理人なら言わなくてもわかるかと)。しかし、例外設定であるユーザーだけパスワード認証でのログインを出来るようにすることもできます。その辺りの設定を組むときにMatch文が出てきます。

こんな感じで使います。

指定できる条件は、

  • User ユーザー名
  • Group グループ名
  • Host ホスト名
  • Address アドレス
になります。今回はUserとGroupを使って設定してみます。

設定の手順と設定例

それではやってみます。sshd_configを開き、ファイル末尾に設定を追加していきます。

こんな感じで一部のユーザーのみにパスワード認証を解禁し、後は全部鍵認証にしてしまうのが安全です。

注意点

鍵認証をサーバー全体で導入しているのは、セキュリティ強化のためです。今回の設定例では、いわば「例外」の穴を開けています。そこがセキュリティホールになったらまずいので、Rootになれるユーザーについては面倒でも鍵認証を使うようにしましょう。

このブログを応援する・寄付する

当ブログでは暗号通貨による寄付を募っております。

Bitcoin:

Monacoin:

Litecoin: