Ich erhalte immer wieder diesen Fehler und habe verschiedene Möglichkeiten ausprobiert, die online diskutiert wurden, um diesen Fehler zu beheben. Ich habe Setup-SSH-Schlüssel, also wenn ich 'ssh [email protected]'
es automatisch starte, meldet ich mich an, ich habe diesen Benutzer auch so eingestellt visudo
, dass 'newton ALL=(ALL:ALL) ALL'
ich dann auch versucht habe, ihn hinzuzufügen'newton ALL=NOPASSWD: /var/www/script.sh'
Leider ssh [email protected] 'sudo /var/www/script.sh'
komme ich jedes Mal zurück, wenn ich von Cygwin weglaufe. Ich habe auch versucht, hinzuzufügen, -t -t
aber dann fordert es mich zur Eingabe des Passworts auf.
total size is 21209180 speedup is 314.69
sudo: no tty present and no askpass program specified
Sorry, try again.
sudo: no tty present and no askpass program specified
Sorry, try again.
sudo: no tty present and no askpass program specified
Sorry, try again.
sudo: 3 incorrect password attempts
sudo: no tty present and no askpass program specified
Sorry, try again.
sudo: no tty present and no askpass program specified
Sorry, try again.
sudo: no tty present and no askpass program specified
Sorry, try again.
sudo: 3 incorrect password attempts
ssh example.com sudo echo hello
von einem Linux-System zu einem anderen. Ich habe Ihren Titel entsprechend aktualisiert. Ich habe Ihre Frage auch für die Migration auf die Unix-Site markiert.Antworten:
Zum Ausführen muss ein Terminal verfügbar sein,
sudo
damit Sie zur Eingabe des Kennworts aufgefordert werden können. Wenn Sie einen Befehl übergeben,ssh
wird davon ausgegangen, dass der Befehl kein Terminal benötigt und kein Terminal erstellt, es sei denn, Sie übergeben ihn-t
. Siehe SSH in SSH schlägt mit "stdin: is not a tty" fehl, um eine genauere Erklärung zu erhalten.Wenn Sie das Kennwort auch mit nicht eingeben
-t
können, liegt das Problem möglicherweise an Windows. Die Windows-Konsole emuliert ein Unix-Terminal nicht vollständig. Unter diesen Umständen kann es für Cygwin-Anwendungen schwierig sein, ein Terminal ordnungsgemäß zu emulieren (da bin ich mir nicht sicher, bitte beachten Sie). Wenn das ist das Problem, liefssh
in einem Terminal - Emulator wie Console2 oder Mintty (in der Cygwin - Distribution enthalten) - siehe besten Weg , um eine Schale mit Cygwin unter Windows 7 zu verwenden .Wenn Sie erwartet haben, dass die SSH-Passphrase Ihr Passwort für die Authentifizierung bei sudo ersetzt, wird dies nicht passieren. Für Sudo ist ein Kennwort erforderlich (es sei denn, Sie fügen das
NOPASSWD
Tag in die sudoers-Datei ein). Beachten Sie, dass Sie immer noch ein Terminal benötigen, auchNOPASSWD
wenn dierequiretty
Option in der sudoers-Datei festgelegt ist.Wenn Sie sich passwortfrei bis zum Root-Konto anmelden möchten (was aus Sicherheitssicht im Allgemeinen keine gute Idee ist), verwenden Sie SSH, um das Root-Konto zu erreichen, vorzugsweise in zwei Schritten. Siehe SSH in SSH schlägt mit "stdin: is not a tty" (mit
[email protected]
for[email protected]
) fehl .quelle
Lassen Sie uns für nodejs command / binary kein Passwort aktivieren.
Visudo ändern
Mit folgender Zeile wird kein Passwort für einen Befehl freigeschaltet. Pass besteht aus mehreren Befehlen mit Kommas und Leerzeichen nach jedem Befehl.
Ex.
sunthara ALL = NOPASSWD: /usr/local/bin/node
quelle
Bearbeiten Sie die Konfigurationsdatei von ssh-server und fügen Sie sie unten an:
quelle
service sshd restart
=>/etc/ssh/sshd_config: line 91: Bad configuration option: User
Match User newton
User
in Ihre sshd-Datei schreiben können, da diese Konfigurationsoption nicht vorhanden ist. (Zumindest ist das auf meinem System Ubuntu 16.04 der Fall)Match
Block in Ihrer Antwort ...Ich bin auf diesen Fehler gestoßen, als ich in / etc / sudoers einen Fehler gemacht habe. Anstatt mehrere Befehle wie diesen anzugeben:
Ich habe gespeichert als:
dh ohne Komma. Jetzt erhalte ich die Nachricht "no tty present", wenn ich es versuche
quelle
Ich weiß nicht, ob es verwandt ist, aber als ich "... NOPASSWD: /xyz/script.shl" in der sudoers-Datei hatte, bekam ich diese Fehlermeldung, bis ich die
#!/bin/shellname
Zeile oben in der/xyz/script.shl
Datei einfügte .quelle
Das Kommentieren der folgenden Parameter in der Datei / etc / sudoers hat mir geholfen.
---> kommentieren Sie die Parameter wie folgt aus
quelle