Mam problem z przekazywaniem X przez SSH. Walczyłem od wieków, ale nikt nie może pomóc.
Teraz wybieram inny takt. Chciałbym wiedzieć, jak debugować błędy?
Jakie dzienniki powinienem sprawdzić, jakie dodatkowe flagi powinienem ustawić (-v itp.) I czego powinienem szukać?
Dalsza edycja:
Jeśli zaloguję się do Putty na serwerze i spróbuję xeyes
, otrzymam:
Proxy PuTTY X11: próba niewłaściwego protokołu autoryzacji Błąd: Nie można otworzyć display: localhost: 10.0
Jeśli xauth generate $DISPLAY
dostanę:
Proxy PuTTY X11: próba nieprawidłowego protokołu autoryzacji xauth: (argv): 1: nie można otworzyć wyświetlacza „localhost: 10.0”.
ssh
logging
debug
x11-forwarding
wkdmarty
źródło
źródło
Odpowiedzi:
Moje rozwiązanie krok po kroku:
1) zaloguj się z opcją -X zdalny katalog główny hosta zdalnego
2) sprawdź, czy istnieje plik .Xauthority
3) skopiuj plik .Xauthority do katalogu drugiego użytkownika
4) ustaw uprawnienia dla tego pliku
5) zaloguj się użytkownik oracle
6) ustawienie wyświetlania w localhost: 10.0
7) zawiera listę istniejących plików cookie xauth
8) dodawanie
9) test
Mam nadzieję, że służą! @wcaraza
źródło
Upewnij się, że serwer SSH ma
xauth
zainstalowane narzędzie i że Twój~/.Xauthority
plik jest zapisywalny. (Nieistniejące jest również w porządku, o ilexauth
można je utworzyć).Sprawdź, czy dane xauth są aktualizowane:
Spróbuj ręcznie dodać fikcyjne dane xauth (ponownie na serwerze SSH) i sprawdź, czy występują
xauth
jakieś problemy (np. Niemożność utworzenia pliku blokady lub modyfikacji samego pliku Xauthority):W razie potrzeby uruchom ponownie pod
strace
.Uruchom usługę SSH w trybie debugowania, ustawiając
LogLevel DEBUG2
konfigurację serwera (/etc/ssh/sshd_config
) lub uruchamiając bezpośrednio sshd w trybie debugowania:(W tym przykładzie
12234
jest to tymczasowy port SSH, z którym należy się połączyć. Zrobi to dowolny wolny port).źródło
Działa, działa. ha ha.
WRESZCIE.
Po odkryciu, że to nie był system, dodając użytkownika testowego (którego przekierowanie x działało „po wyjęciu z pudełka”), pomyślałem, że zacznę kopiować pliki startowe .bash *, aby virginise „zepsutego” użytkownika.
Żaden z plików nie był inny, więc następnie usunąłem katalog .ssh użytkowników. Kiedy się zalogowałem, narzekałem: „Serwer odmówił naszego klucza”, ale mogłem się zalogować przy użyciu hasła. Po zalogowaniu mogłem x przesyłać dalej idealnie.
Spróbuję teraz ponownie skonfigurować klucz i sprawdzić, czy uda mi się go uruchomić. Potem wróci do normy.
źródło
Jeszcze jedna rzecz, która może powodować ten problem, to istnienie
~/.ssh/rc
pliku na serwerze - komputerze, z którym się łączysz. Usuń go (lub zmień nazwę), aby rozwiązać problem.źródło
man sshd
sshd działa~/.ssh/rc
zamiastxauth
@PimpJuiceIT.rm ~/.Xauth*
a następnie podłącz ponownie.To działa dla mnie. Po więcej szczegółów
źródło