Okay, ich habe kürzlich einen Raspberry Pi bekommen und ihn mit meinem Wi-Fi verbunden - ich habe den SSH aktiviert und Hiawatha installiert, und ich konnte von meinem Desktop, auf dem zu diesem Zeitpunkt Puppy Linux lief, problemlos darauf zugreifen.
Ich konnte auch gut darauf zugreifen, wenn ich unter Windows gestartet wurde (PuTTY unter Win XP Pro), und das Netbook konnte auch über PuTTY darauf zugreifen. (Win 7 Starter)
Beim Booten von Ubuntu wurden jedoch alle SSH-, HTTP- und HTTPS-Verbindungen abgelehnt. Um zu bestätigen, dass Ubuntu und nur Ubuntu Verbindungsprobleme hatten, habe ich Puppy Linux neu gestartet - eine gute Verbindung und Windows - eine gute Verbindung. Das Netbook konnte auch ohne Probleme eine Verbindung zu allen drei Diensten herstellen. Es war nur Ubuntu, das besagte Verbindung verweigerte.
Ich möchte wissen, was falsch ist - ich habe bereits alle grundlegenden Fehlerbehebungsmaßnahmen durchgeführt: Neustart des RPi, Neustart meines Computers, Neustart des WLAN-Routers usw. Auf dem Raspberry Pi ist keine Firewall aktiviert, und mein Router bietet alle angeschlossenen Geräte an LAN uneingeschränkter Zugriff aufeinander. Ich habe umfangreiche Tests durchgeführt, und Ubuntu hat sich zweifelsohne als der einzige erwiesen, der nicht bereit ist, eine Verbindung herzustellen.
UPDATE: Ich habe gerade den Zugriff über meine externe IP getestet und alles läuft unter Ubuntu reibungslos! Ubuntu kann jedoch immer noch nicht von einem lokalen Ort aus auf den Pi zugreifen, und ich habe gerade erneut bestätigt, dass dies bei meinen anderen Betriebssystemen möglich ist . Ich finde es seltsam, dass Ubuntu Probleme hat, eine lokale Verbindung herzustellen (im Gegensatz zu meinen anderen Betriebssystemen), aber über meine externe IP-Adresse problemlos auf den Pi zugreifen kann.
UPDATE 2: Durch Deaktivieren meiner Firewall kann ich auf das Gerät zugreifen , das Kennwort wird jedoch jedes Mal als falsch gemeldet . Single . Zeit . Ich habe versucht, es in Gedit einzugeben und es dann während der SSH-Anmeldung per Drag & Drop in die Kennwortabfrage zu ziehen. Die Autorisierung erfolgt beim Zugriff [email protected]
, jedoch NICHT beim Zugriff [email protected]
. Das ist unglaublich frustrierend.
quelle
ssh -vvv user@host
auf der Clientseite,sudo tail -f /var/log/auth.log
auf der Serverseite. Vielleicht ist es sinnvoll, die Ausführlichkeit auch in der SSH-Serverkonfiguration zu erhöhen.Antworten:
Bis Sie die
ufw
Standardeinstellungen auf Ihrem Ubuntu-Computer aktiviert hatten, wurde die Verbindung immer gemeldetConnection refused
. Nachdem Sie denufw
Client auf Ihrem Client deaktiviert haben, wird die Verbindung hergestellt, aber das Kennwort wird immer abgelehnt.Ich würde in diesem Fall vermuten, dass Ihr Problem darin besteht, dass die
192.168.2.128
IP-Adresse zurück zu Ihrem Client-Ubuntu-Computer geleitet wird und Sie tatsächlich eine Verbindung zu demssh
Server herstellen, der auf Ihrem Ubuntu-Computer ausgeführt wird. Dies würde erklären:Warum Sie eine Verbindung über das Internet herstellen können.
Warum Ihre Verbindung abgelehnt wurde, als die Firewall auf Ihrem Ubuntu-Client aktiviert war.
Warum die Verbindung bei ausgeschalteter Client-Firewall nicht mehr abgelehnt wird.
Warum jetzt die Verbindung hergestellt wird, aber die Authentifizierung fehlschlägt.
So beheben Sie diesen Fall:
Überprüfen Sie den Hostschlüssel des Servers mit
ssh -v [email protected]
auf eine lokale und eine Internetverbindung. Gibt es den gleichen Schlüssel?Oder während Sie eine Verbindung von lokal herstellen und an der Eingabeaufforderung aufgefordert werden, Ihr Kennwort von einem anderen Terminal aus einzugeben:
sudo netstat -tupan
und prüfen Sie, ob eine Verbindung zusshd
Ihrem Ubuntu hergestellt wurde.Dieser Fall würde zwar alles erklären, aber es ist so seltsam, dass ich Zweifel habe, dass dies Ihr Problem ist.
quelle
ssh -vvv
Ausgabe. Er sagte auch in der Frage, dass auf dem Pi keine Firewall aktiviert ist, so dass das UFW auf dem Client ist, und er sagte, er habe es deaktiviert, aber er kann sich immer noch nicht anmelden. Der Port kann auch kein Problem sein, weil er kann von anderen Computern aus eine Verbindung zu demselben Port herstellen.Es ist durchaus möglich, dass Ihr Ubuntu-Computer eine andere Netzwerk-IP-Adresse erhält als erwartet. Versuche Folgendes:
ifconfig | grep 192.168
ifconfig | grep 192.168
Um in Ihrem lokalen Netzwerk miteinander kommunizieren zu können, sollten beide dasselbe Subnetz verwenden. Überprüfen Sie im dritten Abschnitt der IP-Adresse, ob dies der Fall ist. In Ihrem Fall sollten sich beide im Subnetz 192.168.2. * Befinden.
Stellen Sie sicher, dass sie auch unterschiedliche IP-Adressen haben. Dies mag offensichtlich erscheinen, kann jedoch passieren, wenn einer von ihnen DHCP verwendet und der andere statisch eingestellt ist.
Wenn das alles ausgecheckt ist, führen Sie den folgenden Befehl aus, um zu sehen, wohin Ihre Pakete gehen sollen:
route -n
Suchen Sie in der Ausgabe nach dem Ziel-Subnetz, das für Ihren Himbeer-Pi gilt. Es sollte eigentlich nur 3 Zeilen geben:
Wenn Sie mehr Reihen haben oder Dinge zu seltsamen Stellen werden, dann ist das die Antwort.
Ich vermute, dass Ihre SSH-Verbindung auf einen anderen SSH-Server als den auf Ihrem Himbeer-Pi trifft, weshalb das Ändern der Ubuntu-Firewall davon betroffen ist und Ihre Anmeldungen nicht funktionieren.
quelle
Je nachdem, was sich in Ihrem PasteBin befindet, zeigt die "Verbindung abgelehnt" an, dass Sie einen TCP-Reset von der IP-Adresse erhalten.
Sanity Check: Deaktivieren Sie während der Fehlerbehebung ufw.
Können Sie bei deaktivierter Desktop-Firewall den Pi von Ihrem Desktop aus anpingen? Können Sie den Desktop von Ihrem Pi aus anpingen?
Überprüfen Sie nach dem Versuch, in beide Richtungen zu pingen, die Ausgabe von 'arp -n' auf beiden Computern. Sehen sie die MAC-Adressen (Ethernet-Hardware) des anderen oder wird der Datenverkehr umgeleitet / abgefangen?
Wenn Sie in beide Richtungen pingen können und 'arp -n' angibt, dass die richtigen MAC-Adressen verwendet werden (überprüfen Sie 'ifconfig' auf dem gegenüberliegenden Computer), besteht der nächste Schritt darin, /var/log/auth.log auf dem Pi zu untersuchen. Es sollte Ihnen sagen, was mit dem Verbindungsversuch nicht stimmt.
Wenn das oben genannte nicht hilft, zeigen Sie uns bitte die Ausgabe der folgenden Befehle auf dem Pi:
Und auf Ihrem Desktop:
Ich sehe einige davon in den obigen Kommentaren eingefügt, aber das Ganze ist wichtig, um es zuerst bei ausgeschalteter Firewall zu greifen. Wenn Sie es bei ausgeschalteter Firewall zum Laufen bringen können, können Sie mit der Fehlerbehebung bei Ihren Firewall-Regeln fortfahren.
Auch wenn Sie auf eine IP-Adresse abzielen, sind die DNS-Einstellungen weiterhin wichtig, da SSH DNS während der Überprüfung des Hostschlüssels verwendet.
quelle
~/.ssh/known_hosts
Datei löschen und erneut versuchen. Wenn zuvor ein Host mit derselben IP-Adresse ssh verfügbar war, behalten Sie möglicherweise einen ungültigen Fingerabdruckquelle
Unter Ubuntu 13.10 konnte ich nicht auf mein Pi ssh, als ich es zuvor auf 13.04 und Mint 16 konnte. Beim Versuch
Ich habe :
Ich bin auf einen Vorschlag gestoßen, der besagt, dass die MTU für die Maschine (nicht die pi) auf 1200 anstatt auf automatisch eingestellt werden soll. Ich tat dies, schaltete aus -> dann über mein WLAN und verband mich beim ersten Versuch mit ssh mit PI. Hoffe das hilft jemandem.
quelle