Ubuntu <= 11.10ユーザーはUbuntuユーザー> = 11.10についてはこのガイドに従ってください。
はい、これらのプログラムはすべて古くなっており、あなたの質問はすべてここで回答されており、親コントロールでよく見えます.....
ユーザーに強制的にログオフさせることについて話すとき、実際に話しているのは、システムアクセスまたはサービスのアカウントに時間制限を実装することです。時間制限を実装するのに最も簡単な方法は、Linux-PAMというプラグインモジュールを使用することです。
Pluggable Authentication Module(PAM)は、ユーザーを認証するためのメカニズムです。具体的にはpam_time
、ユーザーがサービスにアクセスするタイミングを制御するためにモジュールを使用します。
このpam_time
モジュールを使用して、特定の日またはさまざまな端末回線を介して、1日のさまざまな時間にシステムおよび/または特定のアプリケーションにアクセス制限を設定できます。構成によっては、このモジュールを使用して、名前、時刻、曜日、申請しているサービス、および要求元の端末に基づいて個々のユーザーへのアクセスを拒否できます。 。
を使用する場合pam_time
、/etc/security/time.conf
ファイル内の各行(またはルール)の構文を改行で終了する必要があります。ポンド記号[#]を使用して各行にコメントを付けることができ、システムは改行までそのテキストを無視します。
ルールの構文は次のとおりです。
サービス、端末、ユーザー、時間
The first field — services — is a logic list of PAM service names.
The second field — tty — is a logic list of terminal names.
The third field — users — is a logic list of users or a netgroup of users.
The fourth field — times — indicates the applicable times.
典型的なルールのセットの例を次に示します。
login ; * ; !bobby ; MoTuWeThFr0800-2000
login ; * ; !root ; !Al0000-2400
http ; * ; !bobby ; MoTuWeThFr0800-2000
http ; * ; !root; !Al0000-2400
これらのルールは、ユーザーbobbyが0800〜2000時間の間にログオンすることを制限し、これらの時間中のインターネットアクセスも制限します。ルートはいつでもログオンし、いつでもインターネットを閲覧できます。
注:システムは、これらのルールのエラーをsyslog(3)として記録します。
Ubuntu Linuxでは、1人以上のユーザーがシステムに接続するのを防ぐために、コンピューターに時間制限を割り当てることができます。時間制限を使用すると、たとえば、お子様のコンピューターへのアクセスを制限したり(簡単に言うと、ペアレンタルコントロールの一種)、特定の時間にサーバーへの接続を保護したりすることもできます。
手動設定
あなたがすることを理解する
このチュートリアルでは、PAM(プラグ可能な認証モジュール、英語のプラグ可能な認証モジュール)を使用します。接続時にユーザー認証を制御できます。次に、セキュリティ構成ファイルを使用して、許可されるログオン時間を定義します。これらの操作はUbuntuのどのバージョンでも実行でき、簡単なテキストエディター(vim、emacs、nano、gedit、kateなど)のみが必要です。PAMモジュールを介して制限時間を有効にする
まず、すべての/etc/pam.d/
構成可能なサービスがあるに移動します。
$ Ls /etc/pam.d/
atd common-account common-session gdm login ppp sudo
chfn common-auth cron gdm-autologin Other samba
chsh common-cupsys gnome-screensaver password passwd su
コンピューターへの接続をブロックする場合は、gdmサービスを変更する必要があります。ファイルを編集してgdmにし、次のコード行を(ファイルの最後に)追加します。
account required pam_time.so
GDMは、Ubuntu、Edubuntu、およびXubuntuのログイン画面ディストリビューションです。KDEを使用するKubuntuの場合、kdmサービスが呼び出され、それが開くファイルになります。これで、PAMの構成は完了です。これにより、このサービスの時間を制御できるようになります。
サーバーがある場合は、おそらくGUIがありません。この場合、GDM / KDMはインストールされず、接続はブロックされません。TTYへの接続を防ぐには、同じファイルのログインを変更し、以前に確認したものと同じコード行を追加する必要があります。このアクションは、GUIをインストールし、ログイン画面と端末へのアクセスをブロックしたい人にも適用されます。
アクセス時間を構成する
PAMサービスがアクティブになったので、アクセス時間を設定するだけです。を開きます/etc/security
。いくつかの構成ファイルが利用可能です。
$ Ls /etc/security/
access.conf namespace.conf pam_env.conf
group.conf namespace.init time.conf
limits.conf opasswd time.conf.bak
ファイルを編集しますtime.conf
。いくつかの説明と例(英語)を紹介しています。アクセススケジュールを設定するには、次のコード行をコピーして貼り付けます(いつものように、ファイルの最後に)。
*;*;user;scheduler
ユーザーフィールドの代わりに、ブロックするログインアカウントを入力します。
複数のユーザーをブロックする場合は、ログイン名を|で区切って連続して入力します。オペレーター。たとえば、パトリック、ジョン、エミリーのアカウントを凍結したい場合:
*;*;Patrick|jean|emilie;scheduler
短所として、特定の1人を除くすべてのユーザーのシステムへのアクセスをブロックする場合は、!関係者の前に。たとえば、NicolasとXavierを除くすべてのユーザーにコンピューターへのアクセスを拒否する場合:
Nicolas *;*;!|xavier;scheduler
次にフィールドゾーンに目を向けます。このフィールドでは、日と時間の選択により接続が許可されます。最初に、次の略語を使用して曜日を指定する必要があります。
Mo : Monday Fr : Friday Wd : Sa/Su
Tu : Tuesday Sa : Saturday wk : Mo/Tu/We/Th/Fr
We : Wenesday Su : Sunday
Th : Thursday Al : All Days
WkとWdが誤解を招く略語を混同しないように注意してください!特にインターネット上での識別が不十分です。矛盾する情報を簡単に見つけることができます。
次に、期限を指定します。これらは4桁で構成される24時間フォーマットでなければなりません。たとえば、午後3時17分から午後6時34分に制限するには、1517-1834と書きます。Marieが火曜日の午後3時17分から6時34分にのみ接続できるようにするには、次の結果を取得します。
*;*;marie;Tu1517-1834
これらの時間外の接続は禁止されます。ユーザーに関しては、演算子を使用することが可能です| そして!数回表示する(!は、表示する時間以外のすべてのログオン時間が許可されることを示す)。
コード行の先頭にある2つの星(ワイルドカード)は、それぞれttyサービスフィールドです。システムへのすべてのアクセスをブロックするため、ブロックするサービスまたはttyを指定する必要はありません。ただし、特定のサービスの使用を禁止する場合は、次の例のように指定します。
login;tty1|tty4|tty5;marie;!Wd0000-2400
したがって、ユーザーは週末にTTY、4および5に接続できません。
制限スケジュールの例
mathildeは、毎日午後1時20分から午後3時20分まで、および午後4時から8時30分まで接続できます。
*;*;mathilde;Al1320-1520|Al1600-2030
ストーン、フランク、フロリアンは、平日は午後2時から午後6時45分まで、週末は午後2時から午後10時15分まで接続できます。
*;*;Stone|franck|florian;Wk1400-1845|Wd1400-2215
オリーブは接続できません。ジェシカは、水曜日の午後1時から午後4時までログオンできます。
*;*;olivier;!Al0000-2400
*;*;jessica;We1300-1600
各ユーザーの2つの異なる時間の2つの異なる行セッションの有効期限
セッションが期限切れになると(ユーザーが既に接続している時間を超えます)、PAMはユーザーに到達できます。マチルデは許可された時間内に接続しますが、これらの時間を超えることは完全に無料です!このため、新しいプログラム「cron」を使用します。このアプリケーションは、時間間隔でコマンドを実行します。この例では、セッションの有効期限が切れたときにユーザーを切断するためにコマンド「skill-KILL-u」を使用します。取り扱いは非常に簡単です。ファイル「/ etc / crontab」を編集するだけです。次に、次のコード行を追加します。
Minute Hour Day * * (s) root skill -KILL -u User
前と同様に、Minuteフィールドのスケジュールと希望する時間を置き換えます。次に、禁止日(s)ごとに日を記入するか、アスタリスク(*)を入力して、すべての曜日を示します。最後に、ログインアカウントで使用するフィールドをブロックするように変更します。
日はcron
仕事で同じように気づいていません!このプログラムで使用される略語のリストは次のとおりです。
mon : monday fri : friday
tue : tuesday sat : saturday
wed : wednesady sun : sunday
thu : thursday * : all hours
cron
ジョブの例(前のセクションの時間の例を含む)
ジェシカは水曜日の午後1時から午後4時までログオンできます。
->切断:火曜日の午後4時。
00 16 * root * wed skill -KILL -u jessica
mathildeは、毎日午後1時20分から午後3時20分までと午後4時から8時30分まで接続できます。
->切断:毎日、午後8時30分から午後3時20分まで。
20 15 * * * root skill -KILL -u mathilde
30 20 * * * root skill -KILL -u mathilde
ストーン、フランク、フロリアンは、平日は午後2時から午後6時45分まで、週末は午後2時から午後10時15分まで接続できます。
->切断(1):月曜日、火曜日、水曜日、木曜日、金曜日、18:45。->切断(2):土曜日と日曜日の午後10時15分。
45 18 * * mon,tue,wed,thu,fri root skill -KILL -u stone && skill -KILL -u franck && skill -KILL -u florian
15 22 * * sat,sun root skill -KILL -u stone && skill -KILL -u franck && skill -KILL -u florian
コマンドskill-KILL-uは、TTYと同様にGUIからユーザーを切断します。サーバー管理者に最適です。ただし、このコマンドは即時であり、切断は予告なく行われます。したがって、問題のコンピュータまたはネットワークのこのデバイスユーザーのインストールを防止することが望ましいでしょう!
すべてのユーザーの端末に表示される、タイムフレームの終了の数分前までにwall
起動されるコマンドを持つユーザーを防ぐことができます。cron
40 18 * * Mon,Tue,wed,thu,fri root echo "end of session in 5 minutes" | wall
ユーザーがGUIを使用しないようにするには、wallコマンドの代わりにlibnotify-binnotify-send
パッケージを使用します
40 18 * * Mon,Tue,wed,thu,fri stone DISPLAY=:0 notify-send "end of session in 5 minutes"
Ubuntu 11.10ユーザーの
私はユーザーがPamで問題を抱えているのを見てきましたが、それについて多くのバグを見ましたので、なぜですか?それほど単純ではUbuntuの11.10 doens'tサポートGDMは、新しいディスプレイマネージャがlightGDM問題は店がこのディレクティブのフォローであるもうあるaccount required pam_time.so
私は考えるがである/etc/pam.d/lightdm
か/etc/pam.d/lightdm-autologin
が、バグか?
そのため、この2つのLightGdmログファイルを確認できます。
- /var/log/lightdm/lightdm.log
- /var/log/lightdm/x-0.log
または、デバッグモードでLightGdmを実行します。
LightDM-デバッグ
またはバグを報告する:
ubuntu-bug lightdm
ここにバグがあるので報告してください。