Windows 10 i Cmder – problemy z SSH

Podczas pracy z wygodnym emulatorem konsoli cmder napotkałem kilka uciążliwych problemów. Jednym z nich jest „zamrożenie” się zakładki z aktywną sesją SSH (co akurat dotyczyć może też innych klientów SSH, np. PuTTY), a drugim – szybkie migotanie Midnight Commandera. Jeśli spotkał cię któryś z tych problemów, przeczytaj ten krótki artykuł, by poznać proste rozwiązanie. Podziel się także innymi rozwiązaniami któregoś z opisanych tu problemów, sam z chęcią je sprawdzę w swoim środowisku.

Spis treści:

Uwaga!Opis dotyczy instalacji w środowisku Windows 10 (64-bitowy). Jeśli posiadasz inną wersję Windows, nie powinieneś mieć większego problemu, gdyż cały proces przebiega podobnie.

1. Utrzymanie sesji SSH

Często pracując przy projektach, mam uruchomioną w tle sesję SSH. Po pewnym, dość krótkim czasie nieaktywności w konsoli (1-2 minuty) po powrocie do konsoli nie reaguje ona na żadną akcję użytkownika. Można ją ubić i ustanowić nowe połączenie. Jest to niezbyt wygodne, więc warto to zmienić. Dlaczego tak się dzieje? Mianowicie wiele firewalli dostawców internetu ubija nieaktywne sesje po krótkim czasie bezczynności. Co zrobić?
Jeśli używasz puTTY, wejdź w ustawienia połączenia danej sesji i ustaw cykliczne wysyłanie pustych pakietów do utrzymania aktywnej sesji, np. co 50 sekund:

Jeśli natomiast korzystasz z Cmder, przejdź do folderu głównego swojego profilu (np. poleceniem Uruchom -> %UserProfile%)
Następnie odnajdź folder .ssh i w pliku ssh_config (jeśli tego pliku nie masz w tym folderze, utwórz nowy o takiej nazwie) i dodaj wpis:

 Host *
    ServerAliveInterval 50
    ServerAliveCountMax 100

Zapisz plik, uruchom ponownie Cmder i twoja sesja nie powinna by już szybko zamknięta. Wartość ServerAliveInterval możesz ustawić według własnych upodobań, ja ustawiłem na 50 sekund.

2. Migoczący Midnight Commander (mc)

Przyczyną jest zainstalowany (chyba domyślnie) klient OpenSSH w Windows 10 (podejrzewam jakiś bug w OpenSSH).

Co trzeba zrobić? Należy używać SSH wbudowanego np. w Cmder. Masz go, jeśli zainstalowałeś pełną wersję – z wbudowanym klientem Git dla Windows. Jeśli nie, to możesz doinstalować go z https://gitforwindows.org/. Zakładam, że to zrobiłeś, więc teraz powinieneś odnaleźć do niego ścieżkę i ją skopiować (dokładnie, to ścieżkę do podfolderu usr/bin/):
Teraz wystarczy skopiowaną ścieżkę dopisać do zmiennej systemowej Path:
Ponieważ znajduje się tam także (w moim przypadku) podana ścieżka do OpenSSH, przenoszę wprowadzoną ścieżkę wyżej na liście, tak aby znajdowała się nad OpenSSH (Windows wyszukując polecenia SSH przeszuka najpierw folder GIT for Windows).
Zapisz zmiany, zrestartuj Cmder, i Midnight Commander nie powinien już więcej migotać. U mnie to rozwiązanie pomogło, mam nadzieję, że tobie również pomoże.

Info: Masz jakieś pytania? Chciałbyś coś dodać do tego artykułu, czy też zauważyłeś jakieś błędy? Zostaw komentarz, a postaram się odpowiedzieć.

Udostępnij

Zobacz również

Komentarze

Subskrybuj
Powiadom o
guest

0 komentarzy
Inline Feedbacks
View all comments