
Ubuntu 18.04をベースに、
午前9時から午後5時までのみアクセスを許可したい(労働時間) を SSH サーバーにインストールします。(OpenSSH-server
パッケージを使用)
ユーザー管理からPAM設定まで参考になりそうな資料をGoogleで調べてみましたが、SSHタイムゾーンでアクセスを制限する情報はないようですね。
(ただし、 のようなファイアウォール関連のサービスを使用する必要はありませんufw
。)
もし助けていただけることがありましたら、お知らせください。ありがとうございます。
(私は英語が得意ではないので、英語が不自然になることがあるかもしれませんが、ご了承ください。)
答え1
このpam_time
モジュールはこのために設計されています。
pam_time
ssh pam config の最初のステートメントとして追加します。このコマンドは、行のすぐ上にaccount
ステートメントを挿入します。account required pam_time.so
@include common-account
sed -i -e '/^.include common-account/i account required pam_time.so' /etc/pam.d/sshd
- 必要に応じて設定します
/etc/security/time.conf
。このコマンドは設定を追加しますsshd;*;*;Wk0900-1700
。これにより、すべてのユーザーの SSH 接続が平日の午前 9 時から午後 5 時の間に制限されます。
echo 'sshd;*;*;Wk0900-1700' >> /etc/security/time.conf
参照
答え2
cron ジョブを使用して、特定の時間に ssh サーバーを停止および起動します。たとえば、/etc/cron.d/start-stop-ssh
次の内容のファイルを作成します。
0 9 * * * root /usr/sbin/service ssh start
0 17 * * * root /usr/sbin/service ssh stop
これにより、ssh サービスは毎日 9:00 に開始され、毎日 17:00 に停止されます。
サービスが停止すると、誰も(管理者であっても)ssh 経由でログインできなくなることに注意してください。