Secure Shell
SSH (ang. secure shell) to standard protokołów komunikacyjnych używanych w sieciach komputerowych TCP/IP, w architekturze klient-serwer a od wersji 2 nawet w architekturze serwer-klient.
W ścisłym znaczeniu SSH to tylko następca protokołu Telnet, służącego do terminalowego łączenia się ze zdalnymi komputerami. SSH różni się od Telnetu tym, że transfer wszelkich danych jest zaszyfrowany oraz możliwe jest rozpoznawanie użytkownika na wiele różnych sposobów. W szerszym znaczeniu SSH to wspólna nazwa dla całej rodziny protokołów, nie tylko terminalowych, lecz także służących do przesyłania plików (SCP, SFTP), zdalnej kontroli zasobów, tunelowania i wielu innych zastosowań. Wspólną cechą wszystkich tych protokołów jest identyczna z SSH technika szyfrowania danych i rozpoznawania użytkownika. Obecnie protokoły z rodziny SSH praktycznie wyparły wszystkie inne mniej bezpieczne protokoły, takie, jak np. rlogin czy RSH.
Ogólne założenia protokołu SSH powstały w grupie roboczej IETF. W użyciu są obie jego wersje - 1 i 2. W wersji 2 możliwe jest użycie dowolnych sposobów szyfrowania danych i 4 różnych sposobów uwierzytelnienia, podczas gdy SSH1 obsługiwało tylko stałą listę kilku sposobów szyfrowania i 2 sposoby rozpoznawania użytkownika (klucz RSA i zwykłe hasło).
Wersja 2 została przeprojektowana od zera ze względu na ujawnione w wersji 1.5 podatności na ataki kryptoanalityczne, umożliwiające wstrzykiwanie komend do zaszyfrowanego strumienia SSH. W 2009 roku opublikowano kolejny atak tego typu na wersję 2. Problem został naprawiony w OpenSSH 5.2 za pomocą zmiany domyślnego trybu szyfrowania z CBC na CTR.
Najczęściej stosowany sposób szyfrowania to AES, choć część serwerów nadal używa szyfrowania Blowfish i technik z rodziny DES.
Uwierzytelnienie użytkownika może się opierać na haśle, kluczu (RSA, DSA) lub protokole Kerberos.
Dwie najbardziej znane implementacje SSH to zamknięte ssh.com i otwarte OpenSSH. Z kolei najbardziej znaną implementacją klienta jest PuTTY.
Protokoły z rodziny SSH korzystają zwykle z portu 22 protokołu TCP, choć często stosuje się porty o innych numerach w celu utrudnienia wykrycia serwera SSH.
Protokół SSH jest zaimplementowany na warstwie aplikacji modelu OSI w ramach połączenia TCP.
Zobacz też
- SCP
- SSHFS - system plików
- Tunel (informatyka)
Windows |
Linux |
Mac |
Pozostałe |
|
|
|
|
|
|
|
|
|
|
|
|
PuTTY
PuTTY – bezpłatny program będący klientem usług TELNET, SSH i rlogin, działający pod systemami operacyjnymi Microsoft Windows oraz Unix/Linux, przeniesiony także m.in. na systemy Windows CE i Symbian. Aplikacja została stworzona przez Simona Tathama i rozpowszechniana jest na licencji MIT.
PuTTY emuluje terminal tekstowy, co pozwala w łatwy sposób łączyć się z serwerem za pomocą jednego z następujących protokołów: TELNET, rlogin, SSH-1 lub SSH-2. Program posiada zaimplementowane metody szyfrowania takie jak: AES, 3DES, Blowfish oraz DES.
Zobacz też
- OpenSSH
- WinSCP
- ConnectBot
Windows |
Linux |
Mac |
Pozostałe |
|
|
|
|
|
|
|
|
|
|
|
|
GRUPA MEDIA INFORMACYJNE & ADAM NAWARA |