Dostęp do naszego komputera (nie tylko do Internetu) musi być ograniczony dla kont moich dzieci (7, 8), dopóki nie osiągną wystarczającego wieku, aby same sobie z tym poradzić. Do tego czasu musimy być w stanie zdefiniować:
- godziny dnia, w których przetwarzanie jest w porządku (np. 5-21)
- dni tygodnia, w których korzystanie z komputera jest nieprawidłowe (np. od poniedziałku do piątku)
- dozwolony czas na dzień (np. 2 godziny)
W wersji 11.10 wszystkie poniższe funkcje, które były używane do wykonania tej pracy, już nie działają:
- Timekpr : dla> 11.10 nie jest już dostępny za pośrednictwem ppa.
- Limit czasu : alternatywa dla wiersza poleceń, ale z wersji 11.10 usunięta z repozytoriów .
- Gnome Nanny : Wygląda świetnie, ale ciągle się zawiesza, aby wymusić ponowne uruchomienie X-serwera. Dlatego nie możemy w tej chwili używać ani polecać tego programu.
Czy są jakieś inne alternatywy?
Odpowiedzi:
Timer blokady ekranu
Utwórz własny Timer blokady ekranu zamiast aplikacji innych firm
Chociaż istnieją do tego aplikacje innych firm, możesz utworzyć własne. Podsumowanie kroków:
gedit
do tworzenia skryptulock-screen-timer
lock-screen-timer
lock-screen-timer
jako plik wykonywalnySłuży
gedit
do tworzenia skryptulock-screen-timer
Otwórz za
Terminal
pomocą Ctrl+ Alt+ Ti wpisz:Skopiuj i wklej kod z okna poniżej do
lock-screen-timer
Wróć do tego ekranu i skopiuj następujący kod, podświetlając go i naciskając Ctrl+ C:
Następnie przełącz się z powrotem do pustego
gedit
okna i wklej kod za pomocą Ctrl+ V. Zapisz plik i zamknij edytor z powrotem do wiersza polecenia.Oznacz
lock-screen-timer
jako plik wykonywalnyTeraz musimy uczynić skrypt wykonywalnym, wpisując:
Sprawdź to!
Przed wywołaniem skryptu z GUI wywołamy go z terminala, abyśmy mogli zobaczyć, czy są wyświetlane komunikaty o błędach:
Zostaniesz zapytany o liczbę minut:
Ustaw żądaną liczbę minut i kliknij OK, aby uruchomić stoper. Gdy pozostało 15, 10, 5, 3, 2 i 1 minuta, słychać dźwięk systemu i pojawia się dymek informujący, kiedy ekran zostanie zablokowany. Po zablokowaniu ekranu musisz wprowadzić hasło, aby odblokować ekran.
Skonfiguruj Nautilus do wykonywania skryptów bash
Nautilus określa, co się stanie, gdy klikniemy dwukrotnie skrypt wykonywalny, gdy jest to okno wyświetlania plików lub link na pulpicie. Normalnym zachowaniem jest edycja skryptu za pomocą
gedit
. Chcemy zmienić to zachowanie, tak aby zostało wykonane.Uruchom Nautilus i przejdź do katalogu zawierającego
lock-screen-timer
. Kliknij raz lewym przyciskiem myszy, aby ustawić ostrość. Najedź myszką na górny pasek menu, aż pojawi się menu „Edycja pliku ...”, użyj:Edit
menu rozwijaneProperties
opcjęBehavior
zakładkęExecutable Text Files
Run executable text files when they are opened
Utwórz skrót do pulpitu
Z poprzedniej sekcji
lock-screen-timer
wciąż się koncentruję. Jeśli nie, przejdź do skryptu i kliknij go raz lewym przyciskiem myszy, aby ustawić fokus. Następnie użyj:Make Link
.Link to lock-screen-timer
.Teraz możesz dwukrotnie kliknąć łącze skrótu na pulpicie, a skrypt zostanie uruchomiony. Pojawi się okno dialogowe z liczbą minut. Przedstawiono dwa przyciski Canceli OK. Kliknięcie przycisku,
X
aby zamknąć okno, jest równoznaczne z wybraniem Cancel.Po uruchomieniu stopera i dwukrotnym kliknięciu go pierwsza uruchomiona kopia zostanie „zabita”. Możesz teraz rozpocząć nowe odliczanie blokady scren lub kliknąć, Cancelaby nie odliczać.
Wyświetl pozostały czas w obszarze paska / obszaru powiadomień
Podczas działania timera blokady ekranu rejestruje, ile minut pozostało do pliku
~/.lock-screen-timer-remaining
. Możesz obejrzeć ten plik za pomocąwatch
polecenia lub wyświetlić go na pasku zadań / paska narzędzi Ubuntu, jak pokazano na górze tej odpowiedzi. Aby wyświetlić pozostały czas w obszarze powiadomień, postępuj zgodnie z instrukcjami zawartymi w tym pytaniu : ( Czy BASH może wyświetlać się w pasku zadań jako wskaźnik aplikacji? ).źródło
Ubuntu <= 11.10 Użytkownik postępuj zgodnie z tym przewodnikiem dla Ubuntu User> = 11.10 przeczytaj zawiadomienie na dole strony:
Tak, wszystkie te programy są nieaktualne, na wszystkie pytania udzielono odpowiedzi tutaj i dobrze wyglądają one z kontrolą rodzica .....
Kiedy mówimy o zmuszeniu użytkownika do wylogowania, tak naprawdę mówimy o wprowadzeniu ograniczeń czasowych na koncie dostępu do systemu lub usług. Najłatwiejszym sposobem na wdrożenie ograniczeń czasowych jest użycie modułu wtyczki o nazwie Linux-PAM .
Pluggable Authentication Module (PAM) to mechanizm uwierzytelniania użytkowników. W szczególności użyjemy tego
pam_time
modułu do kontrolowania dostępu użytkowników do usług w określonym czasie.Za pomocą
pam_time
modułu możemy ustawić ograniczenia dostępu do systemu i / lub określonych aplikacji o różnych porach dnia, a także w określone dni lub przez różne linie terminali. W zależności od konfiguracji możesz użyć tego modułu, aby odmówić dostępu poszczególnym użytkownikom na podstawie ich nazwy, pory dnia, dnia tygodnia, usługi, o którą się ubiegają oraz terminala, z którego wysyłają żądanie .Podczas używania
pam_time
należy zakończyć składnię każdej linii (lub reguły) w/etc/security/time.conf
pliku za pomocą nowej linii. Możesz skomentować każdą linię znakiem funta [#], a system zignoruje ten tekst do nowej linii.Oto składnia reguły:
Oto przykład typowego zestawu reguł:
Reguły te ograniczają możliwość logowania się użytkownika bobby między godzinami 0800 i 2000, a także ograniczają dostęp do Internetu w tych godzinach. Root byłby w stanie zalogować się w dowolnym momencie i przeglądać Internet przez cały czas.
Uwaga: System rejestruje błędy według tych reguł jako syslog (3).
W systemie Ubuntu Linux można przypisać do komputera ograniczenia czasowe, aby zapobiec podłączeniu jednego lub więcej użytkowników do systemu. Ograniczenia czasowe pozwalają na przykład ograniczyć dostęp dzieci do komputera (w skrócie kontrolę rodzicielską) , a nawet zabezpieczyć połączenie z serwerem w określonych godzinach.
Konfiguracja ręczna
Zrozum, co będziesz robić
W tym samouczku będziemy używać PAM (Pluggable Authentication Modules, English Pluggable Authentication Modules). Pozwala kontrolować uwierzytelnianie użytkowników podczas ich łączenia. Następnie użyjemy plików konfiguracji zabezpieczeń do zdefiniowania dozwolonych godzin logowania. Te manipulacje mogą być wykonywane na dowolnej wersji Ubuntu i wymagają tylko prostego edytora tekstu (vim, emacs, nano, gedit, kate, aby wymienić tylko kilka). Włącz godziny ograniczeń za pośrednictwem modułu PAM
Przede wszystkim przejdź do
/etc/pam.d/
, gdzie znajdują się wszystkie konfigurowalne usługi:Jeśli chcemy zablokować połączenie z komputerem, będziemy musieli zmienić usługę gdm. Zmodyfikuj plik, aby gdm i dodaj następujący wiersz kodu (na końcu pliku):
GDM to dystrybucje ekranu logowania Ubuntu, Edubuntu i Xubuntu. W przypadku Kubuntu, który korzysta z KDE, wywoływana jest usługa kdm, będzie to plik, który otworzy. I skończyłeś konfigurować PAM! Umożliwi to kontrolę godzin w tej usłudze.
Jeśli masz serwer, prawdopodobnie nie masz GUI. W takim przypadku GDM / KDM nie jest zainstalowany, a połączenie nie zostanie zablokowane. Aby zapobiec połączeniu z TTY, musisz zmodyfikować login tego samego pliku i dodać ten sam wiersz kodu, co wcześniej potwierdzony. Ta akcja dotyczy także osób, które zainstalowały GUI i chcą zablokować dostęp do ekranu logowania i terminali.
Skonfiguruj godziny dostępu
Teraz, gdy usługa PAM została aktywowana, musimy jedynie skonfigurować czasy dostępu. Otwórz
/etc/security
. Dostępnych jest kilka plików konfiguracyjnych:Edytuj plik
time.conf
. Niektóre wyjaśnienia i przykłady (w języku angielskim) wprowadzające. Aby ustawić harmonogramy dostępu, skopiuj i wklej następujący wiersz kodu (jak zawsze na końcu pliku):Zamiast pola użytkownika wprowadź konto logowania, które chcesz zablokować.
Jeśli chcesz zablokować wielu użytkowników, wprowadź ich login z rzędu, oddzielając je znakiem operator. Na przykład, jeśli chcę zamrozić konta Patricka, Johna i Emily:
Z drugiej strony, jeśli chcesz zablokować dostęp do systemu wszystkim użytkownikom, z wyjątkiem jednego, użyj! przed osobą zainteresowaną. Na przykład, jeśli chcę dostęp do komputera jest zabroniony wszystkim użytkownikom, z wyjątkiem Nicolasa i Xaviera:
Przechodzę teraz do stref polowych. W tym polu możliwy będzie wybór dni i godzin połączenia. Najpierw musisz określić dzień tygodnia, używając następujących skrótów:
Uważaj, aby nie pomylić skrótów Wk i Wd wprowadzają w błąd! szczególnie słabo zidentyfikowane w Internecie: łatwo znajdziesz sprzeczne informacje!
Następnie określamy terminy. Powinny być sformatowane 24 godziny, składające się z 4 cyfr. Na przykład, aby ograniczyć 15:17 do 18:34, piszemy: 1517-1834. Aby umożliwić Marie łączenie się tylko we wtorek, w godzinach od 15:17 do 18:34, otrzymujemy wynik:
Połączenia poza tymi godzinami zostaną zablokowane. Użytkownicy mogą korzystać z operatorów | i! wskazać kilka razy (!! oznacza, że wszystkie godziny logowania są dozwolone, z wyjątkiem tych, które zostaną pokazane).
Dwie gwiazdki (symbole wieloznaczne) na początku wiersza kodu są odpowiednio polami usług tty. Ponieważ chcesz zablokować cały dostęp do systemu, nie trzeba określać, która usługa lub jakie urządzenie chcesz zablokować. Jeśli jednak chcesz uniemożliwić korzystanie z określonej usługi, po prostu określ ją jako następujący przykład:
W związku z tym użytkownik poślubiający nie może połączyć się z TTY, 4 i 5 w weekend.
Niektóre przykłady harmonogramu ograniczeń
mathilde może łączyć się codziennie od 13:20 do 15:20 i od 16:00 do 20:30:
Stone, Frank i Florian mogą łączyć się w godzinach od 14.00 do 18:45 w dni powszednie i od 14:00 do 22.15 w weekend:
Oliwka nigdy nie może się połączyć. Jessica może zalogować się w środę od 13:00 do 16:00:
2 różne linie, na dwa różne czasy dla każdego użytkownika Wygaśnięcie sesji
Gdy sesja wygasa (przekracza czas, gdy użytkownik jest już podłączony), PAM może do niego dotrzeć. Chociaż mathilde łączy się w dozwolonych godzinach, przekraczanie tych godzin jest całkowicie darmowe! W tym celu użyjemy nowego programu: „cron”. Ta aplikacja wykonuje polecenia w odstępach czasu. W naszym przypadku użyjemy polecenia „umiejętność-KILL-u”, aby odłączyć użytkownika po wygaśnięciu sesji. Obsługa jest bardzo prosta. Po prostu edytuj plik ´ / etc / crontab´. Następnie dodaj następujący wiersz kodu:
Tak jak poprzednio, zastępując harmonogramy pól Minute i pożądany czas. Następnie wpisz dzień (dni) do dnia (dni) zablokowany (e) lub po prostu wpisz gwiazdkę (*), aby wskazać wszystkie dni tygodnia. Na koniec zmień pole używane przez konto logowania, które ma być blokowane, i voila!
Dni nie zauważają tego samego w
cron
pracy! Oto lista skrótów używanych w tym programie:Niektóre przykłady
cron
zadań (z przykładami czasów w poprzedniej sekcji)Jessica może zalogować się w środę od 13:00 do 16:00
mathilde może łączyć się codziennie od 13:20 do 15:20 i od 16:00 do 20:30.
Stone, Frank i Florian mogą łączyć się w godzinach od 14.00 do 18:45 w dni powszednie i od 14:00 do 22.15 w weekendy
Polecenie KILL-u odłącza użytkownika od GUI, a także TTY. Jest doskonale użyteczny dla administratorów serwerów. To polecenie jest jednak natychmiastowe i rozłączenie zostanie wykonane bez powiadomienia. Dlatego lepiej byłoby zapobiec instalacji tego urządzenia przez użytkowników danego komputera lub sieci!
Możliwe jest zapobieganie użytkownikom za pomocą
wall
polecenia uruchomionego nacron
kilka minut przed końcem przedziału czasowego , który będzie wyświetlany na terminalach wszystkich użytkowników.Aby zapobiec użytkownikom z GUI, można użyć zamiast polecenia wall
notify-send
znajduje się w pakiecie libnotify-binUbuntu 11.10 Użytkownik
Widziałem wokół użytkowników, którzy mają problemy z Pam i widziałem wiele błędów w tym, więc dlaczego jest powód ??? jest tak prosty Ubuntu 11.10 doens't wsparcie GDM już nowy menedżer wyświetlania jest lightGDM problem jest kontynuacją gdzie sklep Niniejsza dyrektywa
account required pam_time.so
myślę jest/etc/pam.d/lightdm
albo/etc/pam.d/lightdm-autologin
ale bug jak ???więc w pobliżu możesz sprawdzić 2 pliki dziennika LightGdm:
lub uruchom LightGdm w trybie debugowania:
lub zgłoś błąd:
Zgłaszam, że Bug jest tutaj, więc trzymaj kciuk i czekaj ....
źródło
TimeKpr
Myślę, że ma wszystko, czego potrzebujesz. Ogranicz czas dostępu dziennie na użytkownika, łatwe GUI do konfiguracji, możliwość obejścia na jeden dzień, dodaj „czas nagrody”, powiadomienie o pozostałym czasie dla użytkowników itp.
Strona projektu jest tutaj . Mają też PPA dla Ubuntu, które można dodać do swoich źródeł oprogramowania:
deb http://ppa.launchpad.net/timekpr-maintainers/ppa/ubuntu lucid main
. I zainstalować za pomocą Centrum oprogramowania lub poprzez CLI:sudo apt-get install timekpr
.źródło
Timekpr
może być używany w 11.10 z uruchomionym LightDM do konfigurowania ograniczeń dla użytkowników poprzez dodanie następującego wiersza do
/etc/pam.d/lightdm
Może być konieczne usunięcie libpam-smbpass, aby umożliwić przełączanie użytkowników, dopóki błąd # 835310 nie zostanie naprawiony.
Wszystkie ograniczenia zdefiniowane w oknie aplikacji działają zgodnie z definicją w graficznym interfejsie użytkownika timekpr.
Aby wyświetlić ikonę klienta timekpr w Unity, musimy umieścić na białej liście
'timekpr'
w ustawieniach panelu Unity, a ponadto musimy dodaćUnity
do następującego wiersza w/etc/xdg/autostart/timekpr-client.desktop
:Aby rozpocząć odliczanie przyznanego czasu, może być konieczne uruchomienie demona timekpr
dla 14.04:
Nowsza release / widelec z timekpr został opublikowany dla Ubuntu 14.04 przez Eduards Bezverhijs w jego
ppa:mjasnik/ppa
.źródło
Automatyczne wylogowanie jest wyjątkowo frustrujące, jeśli coś jest w środku. Jest gwałtowny, brutalny, jest po prostu niegrzeczny. I nie ma znaczenia, ile masz lat. To jedna rzecz, gdy jesteś uzależniony od komputera i zupełnie inaczej, gdy śledzisz czas i zostajesz wyrzucony na 5 sekund, zanim zdążysz kliknąć ten przycisk przesyłania lub zapisać dokument. Sugeruję, aby rozważyć użycie automatycznego przypomnienia zamiast auto-kickera. To nauczy twoje dzieci wzajemnego szacunku i pozwoli sobie nawzajem chętnie korzystać z komputera.
Istnieje nawet lżejsza alternatywa. Zacznij od śledzenia czasu, jaki każde dziecko spędza z komputerem, i udostępnij zgromadzone dane wszystkim, aby mogły je zobaczyć. Ta niewiarygodnie prosta rzecz (zastosowana do przepustowości łącza internetowego) uratowała mi życie, kiedy byłem administratorem sieci w biurze pełnym dorosłych. Publiczne statystyki dotyczące wykorzystania przepustowości dla każdego komputera (tylko liczba bajtów, nie deanonimizacji informacji, takich jak listy odwiedzanych witryn itp.) Zmieniły sytuację z „ja - zły chciwy administrator przeciwko nim - biednym nadużywanym użytkownikom biurowym” na „człowieka, pobrałeś 5 razy więcej niż ja, to źle! ” „przepraszam, pobrałem rzeczywiście, oglądałem dużo youtube podczas przerw na lunch, nie zrobię tego już w tym tempie” - po prostu zostałem wykluczony ze scenariusza konfrontacji.
źródło
Też miałem ten problem. Napisałem więc skrypt kidtimer, który pozwala zdefiniować czasy użytkowania i sumy. Projekt można znaleźć na Github w następującej lokalizacji:
Oto jak go zainstalować i używać:
Skopiuj i wklej kod do pliku o nazwie
kidtimer.install
.Wykonaj to:
Uruchom:
Skonfiguruj istniejące konto użytkownika.
Gotowy.
O pomoc:
Dodaj czas do konta użytkownika (tylko na ten dzień):
Cechy:
Kluczowe pliki:
Cronjobs:
Uwaga:
Aplikacja używa,
notify-send
aby ostrzec użytkownika, że czas się kończy. Kiedy skończy się czas, wszystkie procesy użytkownika zostaną zakończone, więc przygotuj użytkownika.źródło
timekpr - ten program będzie śledził i kontrolował użycie kont użytkowników przez komputer. Możesz ograniczyć ich codzienne użycie w oparciu o czasowy czas dostępu i skonfigurować przedziały dnia, w których mogą się zalogować lub nie. Dzięki tej aplikacji administratorzy mogą ograniczyć czas logowania się na konto lub godziny dostępu do konta. Aplikacja działa jako kontrola czasu rodzicielskiego i będzie przydatna dla rodziców, którzy chcą ograniczyć czas dostępu dziecka.
Możesz zaktualizować swój system o nieobsługiwane pakiety z tego niezaufanego PPA, dodając
ppa:timekpr-maintainers/ppa
do źródeł oprogramowania systemu.Ten pakiet jest dostępny w:
Wytrzymały
Co to są umowy PPA i jak z nich korzystać?
PROBLEM:
Zgłaszam, że Bug jest tutaj, więc trzymaj kciuk i czekaj ....
źródło
Wprowadzenie
Możemy sprawdzić, czy użytkownik jest zalogowany za pomocą polecenia:
co daje nam dane wyjściowe takie jak:
W wyniku otrzymujemy pid użytkownika docelowego, który należy zatrzymać, jeśli czas przekroczy limit.
Rozwiązanie
Zakładając, że użytkownik nie ma
sudo
uprawnień:To rozwiązanie jest małym skryptem w tle. Ogranicza dzienne użycie do określonej liczby minut, które można ustawić w skrypcie. Po skonfigurowaniu (co nie jest zbyt trudne) działa bardzo łatwo i nie wymaga żadnych dodatkowych działań.
Aby zapobiec niechcianej utracie danych przez potencjalnie otwarte pliki, 60 sekund przed upływem limitu czasu użytkownika docelowego, pojawi się na nim komunikat
DISPLAY
:Scenariusz
Jak używać
limit
limit_use
(bez rozszerzenia) w folderze i spraw, aby był wykonywalnyEdytuj w nagłówku skryptu nazwę użytkownika, którą chcesz ograniczyć, oraz maksymalną liczbę dozwolonych minut. W przykładzie:
Skopiuj folder do katalogu
/opt
:Teraz edytuj,
/etc/rc.local
aby skrypt działał tak, jakroot
podczas uruchamiania:Tuż przed linią
inna linia:
Wyjaśnienie; jak to działa
/opt/limit/uselog
). Jeśli dzienny limit zostanie osiągnięty, skrypt nie pozwala już na zalogowanie się, zabija proces, jeśli taki istnieje.rc.local
tylko użytkownicy z uprawnieniami sudo mogą zatrzymać skrypt, nawet jeśli użytkownik zna nazwę procesu.Zatrzymaj skrypt
Jeśli chcesz zatrzymać skrypt, użyj polecenia:
Aby to zrobić, potrzebujesz hasła sudo.
źródło
Próbowałem,
timekpr
ale nie udało mi się. Następnie stworzyłem jego wariant, który działa na moim Ubuntu. Oto, co należy zrobić dla tego wariantu:Dodaj limit czasu w
/var/lib/timelimit/user_to_be_limited.limit
pliku tylko z uprawnieniami administratora. np. 1800 przez 1800 sekund (30 minut) dzienny limit.Twórz
/usr/local/bin/timelimit.sh
z prawami roota za pomocą:Dodaj do
/etc/rc.local
:Uruchom ponownie Ubuntu
źródło
Właśnie udostępniłem odpowiedź łatwo. Kod wyjaśniono w wątku http://forums.linuxmint.com/viewtopic.php?f=213&t=77687 . W skrócie: limit skonfigurowany w minutach dziennie, zadanie cron co minutę, wiadomość dla użytkownika informująca go i wymuszone wylogowanie.
Aby pobrać i zainstalować to, otwórz Terminal i uruchom poniższe polecenia:
Hasło administratora będzie wymagane podczas procesu instalacji (w celu zainstalowania zadania cron, skopiowania skryptu,…). Stamtąd zostaniesz poprowadzony dla wszystkich. Na wszelki wypadek w tym samym miejscu jest także plik ./uninstall.sh. Jest budowany do pracy ze wszystkimi dystrybucjami opartymi na Ubuntu (Mint itp. Prawdopodobnie wszystkie również z Debianem). Jeśli wystąpi jakikolwiek problem, proszę o informację, w tym wersję systemu i środowisko graficzne w komentarzach:
Thomas Baeckeroot
źródło
Właśnie wydałem wersję beta mojej nowej aplikacji,
LittleBrother
która jest w stanie monitorować czas gry na maszynach z systemem Linux. Użytkownicy testowi mogą wypróbować pakiet Debian. Instrukcje dotyczące pobierania i korzystania z niego można znaleźć tutaj: https://github.com/marcus67/little_brother . Jednak instalacja może być trochę trudna. Oto funkcje aplikacji:Niektóre zrzuty ekranu:
źródło