[gelöst] vpnc->ssh: kein Login via Hostname

Einrichten des lokalen Netzes, Verbindung zu anderen Computern und Diensten.
Antworten
Benutzeravatar
hikaru
Moderator
Beiträge: 13968
Registriert: 09.04.2008 12:48:59

[gelöst] vpnc->ssh: kein Login via Hostname

Beitrag von hikaru » 01.03.2012 13:48:33

Hallo,

ich habe hier zwei Rechner mit frisch installiertem Squeeze (kein dist-upgrade), einen mit LXDE und ohne Recommends-Pakete, der andere mit Gnome und mit Recommends. Unter beiden habe ich Debianvpnc installiert und möchte mich nun via ssh hostname mit Rechnern im VPN verbinden. Dabei kriege ich jedoch auf beiden folgende Fehlermeldung:

Code: Alles auswählen

ssh: could not resolve hostname
Versuche ich mich über die IP-Adresse zu verbinden klappt dies. Dass der DNS-Server des VPN funktioniert weiß ich, da ich mich von einer VBox-VM mit Slax und eigenem vpnc die auf den beiden Rechnern läuft über den Hostnamen verbinden kann. Gleiches galt für ein vorher auf einem der Rechner laufendes Ubuntu 8.04. Auch ein weiterer über ein dist-upgrade von Lenny nach Squeeze gelangter Rechner (schon immer LXDE) kann sich auch nach dem dist-upgrade über den Hostnamen verbinden.
Die vpnc-Konfiguration ist auf allen Rechnern identisch und /etc/hosts ist auf allen Rechnern unverändert.

Es muss also irgendwas Squeeze-spezifisches sein. Ich vermute ja irgendein fehlendes Paket oder eine Konfiguration die sich zwischen Lenny und Squeeze geändert hat, aber ich habe überhaupt keine Idee wonach ich suchen muss. Auch an den per dist-upgrade nach Squeeze gelangten Rechner komme ich momentan nicht ran.

Hat jemand einen Ansatzpunkt?
Zuletzt geändert von hikaru am 05.03.2012 23:35:53, insgesamt 1-mal geändert.

uname
Beiträge: 12481
Registriert: 03.06.2008 09:33:02

Re: vpnc->ssh: kein Login via Hostname (Squeeze-Neuinstallat

Beitrag von uname » 01.03.2012 14:00:27

Wie löst du denn überhaupt die Namen innerhalb des VPN auf? Nutzt du /etc/hosts für alle Systeme also auch für die VPN-Clients?

Egal. Was sagt denn z.B.:

Code: Alles auswählen

ssh -v user@server
oder die zugehörigen strace-Ausgaben:

Code: Alles auswählen

strace -ff -o out.txt ssh user@server

Cae
Beiträge: 6349
Registriert: 17.07.2011 23:36:39
Wohnort: 2130706433

Re: vpnc->ssh: kein Login via Hostname (Squeeze-Neuinstallat

Beitrag von Cae » 01.03.2012 14:20:49

Evtl. wird die /etc/hosts auch ignoriert? Wenn in /etc/nsswitch.conf bei hosts: kein files steht, wird sie gar nicht angefasst. Ist nicht der Standard, sollte aber kontrolliert werden. Was sagen ping, dig $hostname?

Gruß Cae
If universal surveillance were the answer, lots of us would have moved to the former East Germany. If surveillance cameras were the answer, camera-happy London, with something like 500,000 of them at a cost of $700 million, would be the safest city on the planet.

—Bruce Schneier

Benutzeravatar
hikaru
Moderator
Beiträge: 13968
Registriert: 09.04.2008 12:48:59

Re: vpnc->ssh: kein Login via Hostname (Squeeze-Neuinstallat

Beitrag von hikaru » 01.03.2012 14:24:32

uname hat geschrieben:Wie löst du denn überhaupt die Namen innerhalb des VPN auf? Nutzt du /etc/hosts für alle Systeme also auch für die VPN-Clients?
Soweit ich weiß läuft das über NIS oder LDAP. Das VPN selbst ist aber nicht unter meiner Kontrolle, daher kann ich dazu wenig sagen.
uname hat geschrieben:Egal. Was sagt denn z.B.:

Code: Alles auswählen

ssh -v user@server
Reiche ich heute Abend nach. Irgendwas besonderes was interessant wäre? Ich habe es gerade mal innerhalb des Netzwerks ohne VPN laufen lassen und die Ausgabe kann ich hier unmöglich ungefiltert posten.

Edit:
Cae hat geschrieben:Evtl. wird die /etc/hosts auch ignoriert? Wenn in /etc/nsswitch.conf bei hosts: kein files steht, wird sie gar nicht angefasst. Ist nicht der Standard, sollte aber kontrolliert werden. Was sagen ping, dig $hostname?
Ebenfalls heute Abend.

uname
Beiträge: 12481
Registriert: 03.06.2008 09:33:02

Re: vpnc->ssh: kein Login via Hostname (Squeeze-Neuinstallat

Beitrag von uname » 01.03.2012 14:27:29

Entscheidend sind eher nur die letzten Zeilen, da ja die SSH-Verbindung nicht zustande kommt. Macht natürlich nur bei Systemen Sinn wo sie nicht zustande kommt.

Benutzeravatar
hikaru
Moderator
Beiträge: 13968
Registriert: 09.04.2008 12:48:59

Re: vpnc->ssh: kein Login via Hostname (Squeeze-Neuinstallat

Beitrag von hikaru » 01.03.2012 20:04:21

Code: Alles auswählen

hikaru@debiann270:~$ ssh -v hikaru@hostname
OpenSSH_5.5p1 Debian-6+squeeze1, OpenSSL 0.9.8o 01 Jun 2010
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
ssh: Could not resolve hostname hostname: Name or service not known
Der strace-Output: NoPaste-Eintrag36280

ping:

Code: Alles auswählen

hikaru@debiann270:/home/hikaru# ping hostname
ping: unknown host hostname
dig (sieht unter Slax genauso aus):

Code: Alles auswählen

hikaru@debiann270:/home/hikaru# dig hostname

; <<>> DiG 9.7.3 <<>> hostname
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 1735
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0

;; QUESTION SECTION:
;hostname.				IN	A

;; AUTHORITY SECTION:
.			10079	IN	SOA	a.root-servers.net. nstld.verisign-grs.com. 2012030100 1800 900 604800 86400

;; Query time: 97 msec
;; SERVER: VPNGatewayIP#53(VPNGatewayIP)
;; WHEN: Thu Mar  1 19:37:19 2012
;; MSG SIZE  rcvd: 98

uname
Beiträge: 12481
Registriert: 03.06.2008 09:33:02

Re: vpnc->ssh: kein Login via Hostname (Squeeze-Neuinstallat

Beitrag von uname » 02.03.2012 09:44:35

Dass "dig" nichts ausgibt könnte am Domain-Suffix liegen, der in beiden Fällen nicht angegeben ist. Interessant wären vielleicht noch im Vergleich /etc/hosts und /etc/resolv.conf von dem Problemrechner und Slax. Und ob vielleicht der Domain-Suffix abweicht. Bin mir aber absolut nicht sicher.

Benutzeravatar
hikaru
Moderator
Beiträge: 13968
Registriert: 09.04.2008 12:48:59

Re: vpnc->ssh: kein Login via Hostname (Squeeze-Neuinstallat

Beitrag von hikaru » 02.03.2012 09:59:56

/etc/hosts ist bei beiden identisch. resolv.conf hatte ich mir auch schon auf beiden angeschaut. Genau weiß ich es nicht mehr, aber ich glaube da gab es auch keine signifikanten Unterschiede. Das werde ich aber nochmal prüfen.

Ich glaube aber kaum dass es daran liegt, denn die Dateien habe ich nie angefasst. vpnc fasst sie unter Debian nicht an soweit ich weiß und das vpnc-Paket habe ich persönlich von Lenny nach Slax portiert, selbst wenn doch müssten sie sich also identisch verhalten. Was ssh angeht weiß ich es natürlich nicht, aber wenn es ein reines ssh-Problem wäre hätte doch vermutlich schon jemand anders aufgeschrien.

Eine gezielte Verbindung mit Domain-Suffix werde ich heute Abend nochmal probieren.

Benutzeravatar
hikaru
Moderator
Beiträge: 13968
Registriert: 09.04.2008 12:48:59

Re: vpnc->ssh: kein Login via Hostname (Squeeze-Neuinstallat

Beitrag von hikaru » 02.03.2012 17:18:26

Ok, /etc/resolv.conf, bzw deren Veränderung durch vpnc ist der Übeltäter. Verbindungen mit Angabe des Domain-Suffix' funktionieren auch unter Squeeze. Unter Slax sieht /etc/resolv.conf bei aktiver VPN-Verbindung so aus:

Code: Alles auswählen

#@VPNC_GENERATED@ -- this file is generated by vpnc
# and will be overwritten by vpnc
# as long as the above mark is intact
# Generated by dhcpcd for interface eth1
search lan domain-suffix.de
nameserver VPNGatewayIP
nameserver VPNDNSIP
Unter Squeeze fehlt domain-suffix.de in der search-Zeile. Wenn ich das nachtrage kann ich mich auch hier ohne Suffix-Angabe verbinden. Leider merkt sich vpnc diese Änderung nicht bei einer neuen Verbindung und aus der Dateiliste des vpnc-Pakets geht für mich auch kein resolv.conf-Template hervor das man manipulieren könnte. Irgendwo muss es das aber geben und es scheint nicht vom dist-upgrade aktualisiert zu werden da ja die Auflösung auf dem Rechner mit dem Lenny-Squeeze-Upgrade nach wie vor funktioniert. Dabei ist es egal ob man als User (mit sudo) oder als root vpnc startet.

Weiß jemand wo ich nach dieser vpnc-Konfiguration suchen muss? Es ist nicht: /etc/vpnc/*.conf

uname
Beiträge: 12481
Registriert: 03.06.2008 09:33:02

Re: vpnc->ssh: kein Login via Hostname (Squeeze-Neuinstallat

Beitrag von uname » 02.03.2012 19:33:28

Ich würde das Problem eher bei DHCP und somit wahrscheinlich im Paket Debianisc-dhcp-client suchen, sofern du dieses Paket als DHCP-Client nutzt. Die Frage ist eigentlich wo der Unterschied zwischen Lenny und Squeeze liegt. Vielleicht kannst du auch in den Konfigurationen siehe

http://packages.debian.org/de/squeeze/i ... t/filelist

etwas interessantes finden.

Benutzeravatar
hikaru
Moderator
Beiträge: 13968
Registriert: 09.04.2008 12:48:59

Re: vpnc->ssh: kein Login via Hostname (Squeeze-Neuinstallat

Beitrag von hikaru » 05.03.2012 14:28:14

Der einzige Unterschied scheint darin zu liegen dass unter Squeeze in /etc/dhclient.conf keine ntp-Server mehr angefordert werden. So sah es unter Lenny aus:

Code: Alles auswählen

request subnet-mask, broadcast-address, time-offset, routers,
	domain-name, domain-name-servers, domain-search, host-name,
	netbios-name-servers, netbios-scope, interface-mtu,
	rfc3442-classless-static-routes, ntp-servers;
Unter Squeeze fehlt der ntp-servers-Eintrag. Das kann ja aber eigentlich keine Auswirkung auf DNS-Einträge haben.

Abgesehen davon sind beide Pakete fast identisch. Die sonstigen Änderungen sind der Verschiebung von /sbin/dhclient nach /sbin/dhclient3 sowie dem Setzen des Hostnamen und einer Modemgeschichte geschuldet.

Benutzeravatar
hikaru
Moderator
Beiträge: 13968
Registriert: 09.04.2008 12:48:59

Re: vpnc->ssh: kein Login via Hostname (Squeeze-Neuinstallat

Beitrag von hikaru » 05.03.2012 23:35:09

Ok, ich habe die Lösung! Damit vpnc den den DNS des VPN in die resolv.conf eintragen kann muss Debianresolvconf installiert sein. Dann kann man auch ohne Domain-Suffix zu Hostnamen innerhalb des VPN verbinden.
Die Erkenntnis ist vermutlich trivial ...wenn man sie erstmal hatte. :roll:

Antworten