Windows Serverに入れたOpenSSHのセキュリティを改善

投稿者: | 2021年1月8日

DHCP Serverログのリモート監視用に導入した OpenSSH for Windows のセキュリティを見直してみました。>
先回、OpenSSHを入れたWindows Server 2012ベースのサーバは、プライマリドメインコントローラでもある重要な基幹機であることからも、以下の項目でセキュリティを強化してみたいと思います。

  • パスワード認証無効化
  • ポートフォワーディング無効化
  • ログイン即ログ監視バッチ起動
  • Firewallでリモートアドレスを限定

そもそもWindows版OpenSSHの場合、sshd_configは何処にあるのか気にしていなかったのですが、設定関連は「%PROGRAMDATA%\ssh\」にまとまっていました。

図1.sshd_configファイル

図1.sshd_configファイル


ちなみに、sshd_configのデフォルトファイルはバイナリと同じフォルダにあるので、万が一の確認用に。
図2.sshd_configデフォルトファイル

図2.sshd_configデフォルトファイル


尚、Windows版OpenSSHのsshd_configで設定可能な項目は、公式Wikiに解説されています。

パスワード認証無効化

前回既に鍵認証でのログインを実装済みなので、心置きなくパスワード認証を無効にしてしまいましょう。

実際に弾いてくれるのか試してみます。

ポートフォワーディング無効化

sshを踏み台にしたり、VPN代わりに使われる機会も増えてきているので、ここも塞いでしまいます。

ログイン即ログ監視バッチ起動

ログイン後、Powershellのバッチを手動で呼び出すのが毎日地味に面倒だったのですが、これをログイン後起動するコマンドに登録してしまうことを思いつきました。

これでsshログイン即ログ監視開始となり、CTRL-Cするとsshからも抜けるので、結果的にそれ以外の目的にsshを使えなくすることが出来ます。

Firewallでリモートアドレスを限定

これはsshd_configではありませんが、FirewallのInbound Rulesに登録済みのsshdに関するルールの、アクセス元IPアドレスを限定的にしてしまいます。

図3.sshdに対するFirewall設定

図3.sshdに対するFirewall設定

正直なところ、ログ監視だけの為にsshサービス立てることに引け目があったのですが、これだけ対策しておけば罪滅ぼしになるでしょう。

コメントを残す

メールアドレスが公開されることはありません。

CAPTCHA