Nie mogę ssh niczego, co mogłem. Po krótkim kopaniu dowiedziałem się, że nie czyta konfiguracji ssh z mojego katalogu domowego.
$ ssh -xvvv server
OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
debug1: Reading configuration data /etc/ssh_config
(...)
Na identycznym komputerze znajomego, na którym wszystko działa, wygląda to tak:
$ ssh -xvvv server
OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
debug1: Reading configuration data /Users/kuba/.ssh/config
(...)
Działało wcześniej i nie jestem świadomy niczego, co mogłem zrobić, aby spowodować ten problem. Jak to się mogło stać i jak to naprawić?
W linku do dokumentacji wskazanym przez Tike stwierdza to
Ze względu na możliwość nadużycia ten plik musi mieć ścisłe uprawnienia: odczyt / zapis dla użytkownika i niedostępny dla innych.
Moje uprawnienia to:
$ ls -la ~/.ssh
total 80
drwx------+ 42 kuba 1029 1428 Jul 1 16:33 ..
-rwx------ 1 kuba 1029 1528 May 15 13:07 config
(...)
Myślę, że problemem może być zamieszanie dotyczące katalogu domowego. Gdy wymuszam lokalny plik konfiguracyjny, zaczyna on działać, a następnie nagle zaczyna czytać/nas/kuba
$ ssh -xvvvF ~/.ssh/config server
OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
debug1: Reading configuration data /Users/kuba/.ssh/config
debug1: /Users/kuba/.ssh/config line 1: Applying options for *
debug1: /Users/kuba/.ssh/config line 39: Applying options for bio
debug2: ssh_connect: needpriv 0
debug1: Connecting to XXXX [YYYY.YYY.YYY.YYY] port 22.
debug1: Connection established.
debug1: identity file /nas/kuba/.ssh/id_dsa type -1
^^^^^^^^^^
Ale mój domowy katalog wydaje się być w porządku:
$ cd ~; pwd
/Users/kuba
$ echo $HOME
/Users/kuba
ssh
ignoruje HOME
zmienną środowiskową. Ignorowanie złej praktyki HOME
wydaje się, że tak właśnie ssh
jest. Jeśli się nie stosuje HOME
, jedyną znaną mi alternatywą jest sprawdzenie go z uid
. Jeśli masz dwa /etc/passwd
identyczne wpisy uid
, oba kończą na tym samym .ssh/config
pliku, nawet jeśli mają inny dom.