Łatwo jest „pobrać” (tj. Narysować lokalnie) zdalnie działającą aplikację Linux: Jeśli ssh -Y
przejdę na komputer zdalny i uruchomię aplikację, aplikacja ta z pewnością wyskoczy na moim lokalnym pulpicie.
Jeśli jednak podczas ssh'ed na zdalnym komputerze, ja su
do innego użytkownika, nie mogę przekazać aplikacji X na mój komputer lokalny. To mówi wrong authentication
.
Nie jestem pewien, jak rozwiązać tę sprawę. echo $DISPLAY
Jest nadal poprawna (ustawiany przez początkowego ssh -Y
logowania), ale ciasteczko sesji jest prawdopodobnie ustawiona tylko dla początkowego użytkownika, który zalogował się ssh.
Jak mogę przezwyciężyć tę trudność i przekazać dalej inne aplikacje X, które są uruchamiane przez różnych użytkowników?
Powodem, dla którego nie ssh'ing bezpośrednio jest to, że nie chcę, aby ten użytkownik był dostępny przez ssh (jest to użytkownik „virtualbox”, który jest oczywiście łatwym celem dla botów próbujących ssh na ten serwer) ...
źródło
ssh -Y
do zdalnego komputera jak ty.xauth list
. Pojawi się lista elementów MAGIC-COOKIE. Twoja sesja logowania najprawdopodobniej jest najniższa na liście. (Sprawdź to, patrząc na nazwę hosta i kod numeryczny UNIX, i porównując go z nazwą hosta, z którego wykonałeś ostrzał, i bieżącym localhost: ## DISPLAY zmienna env.)xauth add
+ całą linię MAGIC-COOKIE z góry.xlogo
.źródło
USER="otherusername" && MAGIC_COOKIE=`xauth list | tail -n1` && su -c "xauth add $MAGIC_COOKIE" $USER && su - $USER
Podoba mi się odpowiedź Randy'ego, ale dla mnie to nie zadziałało.
Oto, co mam do pracy:
ssh -Y as user1
xauth list | grep `uname -n`
unset XAUTHORITY
xauth generate :0 .
xauth add :0 . <KEY-FROM-STEP-2>
Zwróć uwagę na dwa okresy w krokach 5 i 6.
Jeśli tylko podążę za odpowiedzią Randy'ego,
XAUTHORITY
zmienna user2 nadal wskazuje.Xauthority
plik użytkownika1. A jego składnia klawisza + nie działała.źródło
To nie jest odpowiedź, więc jeśli ją znajdziesz, to oczywiście lepiej.
Jeśli nie, a to jest podstawowa przyczyna twojej zagadki:
Nie wydaje mi się to dobrym rozumowaniem. „Jaki cel mają boty” WRT dobrze skonfigurowany sshd jest w dużej mierze nieistotny. Czy będą brzęczeć wokół portu 22 w dowolnym miejscu? Najwyraźniej tak. Czy to oznacza, że faktycznie mają szansę na sukces?
Spróbuj googlować po historii o kimś, kto miał przypadkowego anonimowego bota z powodzeniem włamał się do sshd. Jestem pewien, że to musiało się gdzieś przytrafić (i oczywiście możesz nigdy nie wiedzieć), ale nie mogę znaleźć żadnych raportów na ten temat. Interesująco byłoby przeczytać, jaka była używana konfiguracja.
SSH jest bardzo bezpieczny, jeśli jest właściwie stosowany. Gdyby tak nie było, handel internetowy nie byłby możliwy. Dlaczego więc te boty przeszkadzają? Przez „właściwie używane” mam na myśli przede wszystkim obowiązkowe pary kluczy publiczny / prywatny. Jeśli to zrobisz i jesteś pewien, że twój klucz prywatny jest bezpieczny (i powinieneś być), bądź pewny co do sshd.
Myślę, że powodem wszystkich tych „prób włamania” jest duża grupa użytkowników, którzy nie robią takich rzeczy, jak zadawanie pytań na temat U&L;) i nie czytają stron podręcznika i używają wyłącznie ochrony hasłem, co jest trochę jak pozostawienie karty bankomatowej gdzieś w maszynie ze znakiem „Zgadnij!”.
Jeśli jednak myślisz o swoim prywatnym kluczu, takim jak karta bankomatowa - jako o czymś fizycznie zabezpieczonym przez ciebie (którym w istocie jest), cel staje się znacznie bardziej eteryczny. Wszystko, co mogą zrobić boty, to udowodnić, że tak, naprawdę zajęłoby tysiące maszyn tysiące lat wspólnej pracy, aby brutalnie użyć klucza 2048-bitowego.
Jeśli masz dość czytania raportów o próbach włamania, zmień port. Widziałem tutaj ludzi, którzy kupowali to poo-poo jako „bezpieczeństwo przez zaciemnienie”, jednak sshd, który jest odpowiednio zabezpieczony na porcie 22, nie będzie mniej bezpieczny na porcie 57, ale nie będzie przypadkowo przeszkadzał. Oczywiście wszyscy twoi wrogowie-drony mogą po prostu przeskanować cały adres IP - ale wiesz co? Oni nie. Zakładam, że dzieje się tak, ponieważ szukają kogoś, kto ma system, który nawet na to nie patrzył
/etc/ssh/sshd_config
, a tym bardziej sam się kształcił i dostrajał.źródło