私は息子の端末から時々インターネットにアクセスできるようにするためにこれを行います(デフォルトでは無効になっています)。
./unblockinternet.sh
<enter password>
次のスクリプトを使用してください。
su -c "iptables -D OUTPUT -m owner --uid-owner son -j REJECT"
1時間後にネットワークを自動的に再ブロックするにはどうすればよいですか?(すでに再起動後にユーザーに対して再ブロックしていますが、son
3600秒後もブロックしたいと思います。)
su -c "iptables -A OUTPUT -m owner --uid-owner son -j REJECT"
より正確には、パスワードを入力せずに3600秒後に実行するようにタイマーを追加するにはどうすればよいですか?どうやら私はしません。正確に3600秒後、彼の端末が現れた。
ベストアンサー1
使用できるat
:
sudo at next hour -f myiptablesscript
アクセスを無効にするコマンドはどこにmyiptablescript
ありますか?または、次の行にあります。
sudo at next hour -f /dev/stdin <<< "iptables -A OUTPUT -m owner --uid-owner son -j REJECT"
組み合わせることができますやるそしてブロックする2行のスクリプトで書かれています:
#!/bin/bash
iptables -D OUTPUT -m owner --uid-owner son -j REJECT
at next hour -f /dev/stdin <<< "iptables -A OUTPUT -m owner --uid-owner son -j REJECT"
実行権限を使用してこのスクリプトを保存すると、unblockinternet
次のように呼び出すことができます。
sudo ./unblockinternet
これにより、ブロックルールがすぐに削除され、復元されるまで1時間待機します。