Próbowałem skonfigurować połączenie SSH z Github zgodnie z tym samouczkiem:
https://help.github.com/articles/testing-your-ssh-connection/
Natknąłem się na następujące polecenie:
$ ssh -T [email protected]
# Attempts to ssh to github
Zaciekawiony, zajrzałem do instrukcji ssh. Powiedział, co następuje:
-T Disable pseudo-tty allocation.
Co to jest alokacja tty? Co oznacza tty? Dlaczego go wyłączamy?
Poważnie próbowałem to sprawdzić, ale nie mogłem znaleźć nawet definicji.
Odpowiedzi:
Jak wyjaśniono w " gitolite: żądanie alokacji PTY nie powiodło się na kanale 0 ", ważne jest, aby wykonać połączenie testowe ssh
-T
, ponieważ jakiś serwer może całkowicie przerwać transakcję, jeśli zażądano terminalu tekstowego (tty) .-T
unika żądania wspomnianego terminala, ponieważ GitHub nie ma zamiaru oferować interaktywnej bezpiecznej powłoki, w której można by wpisać polecenie.GitHub chce tylko odpowiedzieć na Twoje żądanie ssh, aby upewnić się, że polecenie ssh działa (masz odpowiednie klucze publiczne / prywatne, a publiczny został zarejestrowany na Twoim koncie GitHub )
PuTTy byłby przykładem emulatora terminala , konsoli szeregowej i aplikacji do przesyłania plików w sieci. Obsługuje kilka protokołów sieciowych, w tym SCP, SSH, Telnet i rlogin.
Nazwa „
PuTTY
” nie ma ostatecznego znaczenia , chociaż „tty” to nazwa terminala w tradycji uniksowej, zwykle uważanej za skrót od Teletype .Inne przypadki użycia
-T
(poza testowaniem)ssh -fnT -L port:server:port user@server
(-f w tle: nie chcesz wykonywać polecenia, nie potrzebujesz TTY i po prostu chcesz ustanowić tunel)źródło