ssh
一日の特定の時間にサーバーを無効にしたいと思います。私は最近無差別代入によるクラッキングを経験したので、これをやりたかったですssh
。crontab
SSHを有効/無効にするために使用できますか?
ssh
そうでない場合は、1日の特定の時間に無効にする他の方法はありますか?
答え1
答え2
特定の時間にSSHサーバーをシャットダウンするのではなく、次のものを使用することをお勧めします。pam_time代わりに、モジュールは1週間の特定の時間に認証を拒否します。これはハッキングではなく、cronに依存せず、認証ルールセットを定義するためのより柔軟性を提供します。
UsePAM yes
あなたのsshd_config
- モジュール
/etc/pam.d/sshd
を挿入するには編集してください。pam_time
- にタイムアウトルールを作成してください
/etc/security/time.conf
。
答え3
選択できるさまざまなオプションがあります。
cron
次のようにサーバーの電源を入れたり切ったりssh
できます。- ポートのブロック
iptables
とブロック解除に使用できます。ssh
ssh
別のポートで実行すると、これらすべての問題を解決できます。- ポートノッキングを実装できます
- 外部アクセスを完全に無効に
ssh
し、VPNを強制的に使用できます。
利用可能な他の解決策があると確信していますが、5つで停止しました。
答え4
time
iptablesモジュールがあります:
iptables ... -m time --timestart TIME --timestop TIME --days DAYS -j ACTION
-p tcp -j REJECT --reject-with tcp-rst
ポートが閉じたふりをするために使用されます(デフォルトの動作REJECT
はICMPパケットです)。
ESTABLISHED
また、開いている接続が機能し続けるようにするには、接続を通過させる別の規則を前に追加します。
これは、スクリプトを使用して特定の時間に特定のタスクを実行するソリューションに比べて大きな利点があります。これは、静的構成であり、アクセスを永久にブロックするなどの障害モードが発生する可能性が低いためです。