
Ich verwende immer mehr als ein Terminal, muss aber vor der Verwendung immer in jedes Terminal die Anmeldeinformationen eingeben. Wie kann ich in inittab festlegen, dass nur in tty1 nach Anmeldeinformationen gefragt wird und nach erfolgreicher Anmeldung automatisch mit demselben Benutzer in allen anderen virtuellen Terminals angemeldet wird?
Antwort1
Ich muss den ersten Kommentaren zustimmen und screen verwenden. Die Autologin-Methode funktioniert zwar, ist aber wirklich unsicher. Für zu Hause mag das in Ordnung sein, aber für ein Produktionssystem ist das ein großes Sicherheits-No-Go und würde jeden Sicherheitsbeamten in einen Wutanfall versetzen. Die anderen Antworten zur Verwendung von Schlüsseln mit Putty oder einem anderen SSH-Client sind ebenfalls gut, aber für die direkte Konsolenanmeldung würde ich screen verwenden.
Antwort2
Wenn Sie das unbedingt tun möchten, hier ist eine Idee. Im Moment habe ich keine Zeit, meine Idee zu testen, aber so etwas KÖNNTE funktionieren:
1) Installieren mingetty
, wenn es nicht bereits verwendet wird (es unterstützt --autologin, also 1:2345:respawn:/sbin/mingetty --autologin thiado --noclear tty2
sollten Dinge wie möglich sein
2) Haben Sie eine normale/etc/inittabund noch einer wie/etc/inittab.autologinverfügbar. Für Ihre Auto-Login-TTYs stellen Sie/etc/inittab.autologinenthalten so etwas wie
2:2345:respawn:/sbin/mingetty --autologin thiado --noclear tty2 3:2345:respawn:/sbin/mingetty --autologin thiado --noclear tty3 4:2345:respawn:/sbin/mingetty --autologin thiado --noclear tty4 5:2345:respawn:/sbin/mingetty --autologin thiado --noclear tty5 6:2345:respawn:/sbin/mingetty --autologin thiado --noclear tty6
3) In Ihrem.bashrcoder was auch immer, um zu testen, ob 1) das aktuelle TTY TTY1 ist und wenn ja, 2) um zu testen, ob alle anderen TTYs bereits verwendet werden oder nicht.
4) Bei erfolgreichem Login an tty1 ersetzen Sie Ihre normale/etc/inittabmit/etc/inittab.autologinund sende ein HUP-Signal anAbonnierenum die Konfiguration neu zu laden.
5) Gewinn! Dadurch sollte die automatische Anmeldung möglich sein.
Eine andere Möglichkeit statt des Ersetzens von /etc/inittab besteht darin, tty1 mit den Runleveln 1, 2 und 3 und alle anderen nur mit 4 zu starten. Dann könnten Sie jedes Mal, wenn Sie alle ttys benötigen, mit dem Befehl zu Runlevel 4 wechseln init 4
und ttys mit init 3
(oder was auch immer Ihr normaler Runlevel ist) verschwinden lassen.
Aber das alles ist im besten oder schlimmsten Fall übles Hacken. Versuchen Sie das nicht zu Hause und vor allem nicht bei der Arbeit. Der screen
hier mehrfach erwähnte Ansatz ist ein viel besserer.
Antwort3
Für Windows-Clients (funktioniert auch unter Linux, aber der Vorgang ist einfacher, da Sie nur den Schlüssel kopieren und fertig sind) könnte die Public Key-Authentifizierung Sie näher heranbringen.
Sie richten ein Schlüsselpaar mit ssh-keygen ein und führen dann den privaten Schlüssel durch putty-gen aus, um die Schlüsseldatei in ein Putty-Format zu bringen. Dann erstellen Sie eine Putty-Sitzung mit den gewünschten Einstellungen und dem Hostnamen sowie der privaten Schlüsseldatei, die Sie durch putty-gen ausgeführt haben, und speichern sie. Sie können dann PAgent verwenden, um sich automatisch zu authentifizieren. Sie können dann einfach mit der rechten Maustaste auf das Putty-Fenster klicken und zu „Sitzung duplizieren“ gehen und schon haben Sie ein neues Terminal, das authentifiziert und einsatzbereit ist (oder verwenden Sie das Pagent-Symbol).
http://www.ualberta.ca/CNS/RESEARCH/LinuxClusters/pka-putty.html
Das klingt zwar mühsam, ist es aber wirklich nicht. Sie richten das meiste davon einmal ein (es bleibt zwischen den Herunterfahren bestehen). Danach geben Sie Ihr Passwort einmal ein, wenn Sie PAgent starten, und öffnen dann einfach den Putty-Verbindungsnamen (alles erfolgt über ein Taskleistensymbol neben der Uhr).
Wenn Sie wirklich Wert auf Automatisierung legen, können Sie eine Startaufgabe einrichten, um dies noch weiter zu automatisieren (Sie werden einmal nach einem Kennwort gefragt):
http://hamisageek.blogspot.com/2009/01/pageant-with-your-ssh-provate-key-added.html
Wenn Ihr Client Linux ist, sollten Sie einen Control-Master-Socket einrichten. Dieser fordert einmal zur Authentifizierung auf und alle zukünftigen Verbindungen verwenden dann den Socket. Dadurch werden die Verbindungszeiten nach der ersten Anmeldung ebenfalls auf Millisekunden verkürzt, im Vergleich zu etwa 2-3 Sekunden. http://www.linux.com/archive/feed/54498
Antwort4
Verwenden Sie ein X-Terminal