На практика всяка система Unix и Linux включва команда ssh. Той е проектиран да изпълнява клиентска програма, която осигурява сигурна връзка към SSH сървър на отдалечена машина. Командата ssh се използва при въвеждане на отдалечена машина, за прехвърляне на файлове между две устройства и за изпълнение на команди на отдалечен компютър.
SSH е софтуерен пакет, който осигурява сигурна системна администрация и прехвърляне на файлове през несигурни мрежи. Използва се в почти всеки център за данни, във всяко голямо предприятие.
Протоколът използва криптиране, за да защити връзката между клиента и сървъра. Всички потребителски удостоверения, команди, изход и трансфер на файлове са криптирани, за да се предпазят от мрежови атаки.
Протоколът Secure Shell първоначално е бил разработен от Tatu Ilonen през 1995 г. в отговор на инцидент с хакери във финландската университетска мрежа. На сървъра, свързан директно с гръб, е инсталиран sniffer за пароли, а когато е бил открит, в неговата база данни има хиляди потребителски имена и пароли, включително няколко компании от Ylonen.
Този инцидент провокира изучаването на криптографията и разработването на решение, което Илонен би могъл да използва за сигурен достъп до интернет. Приятелите му предлагат допълнителни възможности и три месеца по-късно, през юли 1995 г., Илоен публикува първата версия с отворен код. Това беше OpenSSH. По-късно той прие протокол за стандартизация в IETF и разработи протокола за трансфер на файлове SSH.
Днес Tattoo Ilonen продължава да работи по теми, свързани с Secure Shell, особено по отношение на ключовото управление, както и по-широки теми за киберсигурност.
Днес протоколът се използва за управление на повече от половината от световните уеб сървъри и на всички Unix или Linux компютри, както офлайн, така и в облака. Специалистите по информационна сигурност и системните администратори я използват, за да конфигурират, управляват, поддържат и използват повечето защитни стени, рутери, комутатори и сървъри в милиони критични мрежи и среди в нашия дигитален свят. Той е вграден в много решения за прехвърляне на файлове и управление на системата.
Новият протокол замени няколко остарели инструменти и протоколи, включително telnet, ftp, ftp / S, rlogin, rsh и rcp.
Командата осигурява сигурна, кодирана връзка между два възела в несигурна мрежа. Тази връзка може да се използва и за достъп до терминала, прехвърляне на файлове и тунелиране на други приложения. Графичните приложения на X11 могат също да бъдат безопасно пуснати през SSH от отдалечено устройство.
Има и други опции за команди, различни от клиента. Всяка от тях има своя собствена страница:
keygen - създава чифт ключове за удостоверяване с публичен ключ;
copy-id - прави публичния ключ разрешен на сървъра;
агент за съхранение на частен ключ за единично влизане;
add - инструмент за добавяне на ключ към агент;
scp е клиент за прехвърляне на файлове с RCP-подобен команден интерфейс;
sftp - клиент за прехвърляне на файлове с FTP интерфейс;
sshd е OpenSSH сървър.
Обикновено Linux използва OpenSSH клиент. Командата ssh за влизане в отдалечената машина е много проста. За да влезете в отдалечен компютър Въведете следната команда в командния ред: sample.ssh.com.
Ако използвате ssh за първи път, за да се свържете с този отдалечен компютър, ще видите съобщение като: „Невъзможно е да се удостовери хостът“ sample.ssh.com ”. Наистина ли искате да продължите връзката (да / не)? ”Въведете yes, за да продължите. Това ще добави сървъра към списъка с известни хостове (~ / .ssh / known_hosts). Това се показва от следното съобщение: "Предупреждение: Постоянно е добавен" sample.ssh.com "(DSA) в списъка на известните хостове."
След като се установи връзката със сървъра, потребителят се удостоверява. По правило се изисква парола. За някои сървъри може да се наложи да въведете еднократна парола, генерирана от специален хардуерен маркер.
Когато удостоверяването бъде прието, ще влезете в командния ред за отдалечената машина.
Можете също да използвате друго потребителско име на отдалечена машина, като въведете командата: [email protected].
Горното може да се изрази и чрез синтаксиса: ssh -l алтернативно потребителско име sample.com.
Командата ssh също се използва за изпълнение на команди на отдалечен компютър без въвеждане на обвивката. Синтаксисът за това е ssh hostname. Например, за да изпълните SSH команда: ls / tmp / doc на хост sample.ssh.com, въведете следната команда в командния ред: sample.com ls / tmp / doc. След автентификацията на отдалечения сървър, съдържанието на отдалечената директория ще се покаже и ще бъдете върнати в локалния ред на обвивката.
За да настроите удостоверяването на публичен ключ без парола, можете да създадете ключ и да конфигурирате файла с оторизираните файлове.
Параметрите на командния ред могат да се използват за конфигуриране на препращане на портове. Локалното преместване означава, че локалният порт (на клиентския компютър) е тунелиран до IP адреса и порта от сървъра. Дистанционното препращане означава, че отдалеченият порт (на сървъра) се пренасочва към посочения IP адрес и порт от клиентския компютър.
OpenSSH също така поддържа пренасочване на Unix домейни и IP пакети от тунелно устройство за създаване на VPN (виртуална частна мрежа).
Някои от най-важните опции за команден ред за отдалечена SSH команда включват:
използвайте само протокол версия 1 или 2;
използвайте само IPv4 или IPv6 адреси;
активиране на препращането на свързване с агент за удостоверяване;
използване на компресиране на данни;
изберете спецификация за шифроване на сесията.
В допълнение, използвайте динамично пренасочване на портове на ниво приложение.