Сосигури Шell или SSH е добре известен мрежов протокол с отворен код. Протоколът се използва за дистанционно влизане в други машини. Следователно би било лесно да изпълнявате куп команди и да стартирате плавно всяко приложение на отдалеченото устройство, без да е необходимо да сте близо до отдалечената машина. Освен това протоколът SSH е много надежден и сигурен. Потребителите винаги зависят от SSH протокола за копиране на файлове между две различни устройства.
Като цяло, за да установите SSH връзка с отдалечената машина, трябва да въведете потребителското име и паролата за отдалечената машина. Но какво, ако имате нужда от по-сигурен метод от използването на потребителското име и паролата при всяко влизане? Това може да се направи с помощта на SSH ключ, генериран от клиентската машина, след което се копира на отдалечената машина. С допълнителни малки конфигурации ще можете безопасно да влизате в отдалечената машина, без да използвате потребителско име и парола всеки път. Използването на SSH ключ вместо използването на потребителско име и парола при всяко влизане е много по-сигурно; само машината, която държи правилния SSH ключ, може бързо да влезе.
Днес ще ви покажем как да установите SSH връзка, без да е необходимо да въвеждате парола за отдалечена машина. Обикновено използването на парола без парола може да се използва за бързо прехвърляне на файлове между различни машини. Но преди да започнем нашия урок, нека да разгледаме нашата среда.
Подготовка на околната среда
Най-добре би било да имате две машини, клиент и отдалечени машини. Почти цялата работа ще бъде извършена от клиентската машина, която ще се използва за свързване с отдалеченото устройство. И двете устройства са Ubuntu със следните IP адреси
- The клиент машината има IP 192.168.1.20 с потребителско име тута.
- The дистанционно машината има IP 192.168.1.30 с потребителско име хендадел.
Още нещо преди да започнете, уверете се, че и двете машини са актуални, като използвате следните команди:
актуализация на sudo apt
Сега нека започнем нашето ръководство.
Настройване на SSH вход без парола
Етап 1. От клиентската машина се уверете дали има генериран SSH ключ, преди да използвате следващата команда.
ls -al ~ /.ssh / id_ *.кръчма
Както можете да забележите, ако преди това не сте генерирали SSH ключ, ще получите съобщението „Няма такъв файл или директория“. В противен случай бързо ще получите наличните ключове, ако те съществуват.
Стъпка 2. Тъй като преди това нямате генерирани SSH ключове, е време да генерирате нов SSH ключ, като използвате следната команда:
ssh-keygen -t rsa -b 4096
Обикновено предишната команда ще генерира нови два SSH ключа в два различни файла. И двата файла се съхраняват в скрита директория с име „.ssh ”под текущата домашна директория на потребителя. Можете да намерите частен ключ, съхраняван във файл с име id_dsa и друг публичен ключ във файл с име id_dsa.кръчма. Освен това ще бъдете помолени да добавите парола, която се използва за защита на генерираните ключове и можете да я използвате, докато се свързвате чрез SSH. Но можете да натиснете „Въведете”, За да не използвате такъв.
Стъпка 3. Сега можете да изброите съдържанието на .ssh, за да се уверите, че и двата ключа са създадени.
ls -l / home / tuts /.ssh /
Стъпка 4. Също така можете да се уверите, че във файла има ключ, като използвате следната команда:
ssh-keygen -lv
Стъпка 5. За да прегледате съдържанието на файла с публичен ключ.
котка .ssh / id_rsa.кръчма
Стъпка 6. Сега от отдалечената машина се уверете, че имате инсталиран SSH. Ако не е инсталиран, можете да използвате следната команда.
sudo apt install ssh
Стъпка 7. Върнете се към клиентската машина, свържете се с отдалечената машина и създайте нова директория с име .ssh.
sudo ssh remote_machine_username @ remote_machine_IP mkdir -p .ssh
Уверете се, че замените remote_machine_username с реално потребителско име, а remote_machine_IP с отдалечения IP.
Стъпка 8. След това нека копираме от клиентската машина публичния SSH ключ, генериран преди това на отдалечената машина. Полезно би било, ако поставите публичния ключ към файл с име “Оторизирани_клавиши”. Силно се препоръчва да не променяте името на файла, защото когато ще установите SSH връзка, първият файл, който операционната система ще провери, е “Оторизирани_клавиши” файл. Ако системата не намери файла, ще бъдете помолени да въведете потребителско име и парола, за да можете да влезете в отдалечената машина.
судо котка .ssh / id_rsa.кръчма | ssh remote_machine_username @ remote_machine_IP 'cat >> .ssh / allowed_keys '
Стъпка 9. Уверете се, че публичният ключ е копиран успешно от отдалечената машина с име разрешени клавиши.
ls .ssh / котка .ssh / оторизирани_клавиши
Стъпка 10. Сега от клиентската машина, нека се опитаме да установим SSH връзка без потребителско име и парола.
ssh remote_machine_username @ remote_machine_IP
Както можете да забележите, няма да бъдете помолени да въведете потребителско име или парола.
Деактивирайте удостоверяването на парола
За да деактивирате удостоверяването с парола с помощта на публичния ключ, първо трябва да редактирате SSH конфигурационния файл от отдалечената машина и да деактивирате опцията за удостоверяване на паролата. По-долу са описани стъпките за това.
Етап 1. От отдалечената машина отворете конфигурационния файл ssh, като използвате любимия си редактор.
vi / etc / ssh / sshd_config
Стъпка 2. Превъртете до края на SSH конфигурационния файл и добавете следващите няколко реда, за да деактивирате удостоверяването на паролата:
RSAAuthentication да PubkeyAuthentication да PasswordAuthentication не UsePAM no ChallengeResponseAuthentication не
Стъпка 3. Запазете и излезте от файла си.
Стъпка 4. И накрая, рестартирайте услугата SSH и опитайте отново да установите нова връзка от клиентската машина към отдалечената машина.
Това е! Току-що научихте как да установите SSH връзка без парола. Надявам се да ви е харесало.