3 начина за защита на SSH сървър в Linux

SSH е страхотен, тъй като ни позволява да получим терминален достъп до други Linux компютри и сървъри през мрежата или дори интернет! И все пак, колкото и невероятна да е тази технология, има някои крещящи проблеми със сигурността, които правят използването й опасно. Ако сте обикновен потребител, няма реална нужда да инсталирате сложни инструменти за сигурност на SSH. Вместо това помислете за следните основни стъпки, за да защитите SSH сървър на Linux.

Променете порта за връзка по подразбиране

Безспорно най-бързият и лесен начин да защитите SSH сървър е да промените порта, който използва. По подразбиране SSH сървърът работи на порт 22. За да го промените, отворете терминален прозорец. Вътре в прозореца на терминала, SSH към отдалечения компютър, хостващ SSH сървър.

ssh [email protected]

След като влезете, преминете от обикновен потребител към Root. Ако имате Root акаунта, влизането със su е добър избор. В противен случай ще трябва да получите достъп с sudo.

su -

или

sudo -s

Сега, когато имате администраторски достъп, отворете SSH конфигурационния файл в Nano.

nano /etc/ssh/sshd_config

Превъртете през конфигурационния файл за „Порт 22“. Премахнете #, ако има такъв, след което променете „22“ на друго число. Обикновено порт над 100 или дори един в диапазона 1000 ще бъде достатъчен. След като промените номера на порта, натиснете клавишната комбинация Ctrl + O, за да запазите редакциите. След това излезте от редактора, като натиснете Ctrl + X.

  6-те най-добри Linux операционни системи за поверителност

Редактирането на конфигурационния файл няма да превключи незабавно вашия SSH сървър към използването на правилния порт. Вместо това ще трябва ръчно да рестартирате услугата.

systemctl restart sshd

Изпълнението на командата systemctl трябва да рестартира SSH демона и да приложи новите настройки. Ако рестартирането на демона не успее, друга опция е да рестартирате вашата машина на SSH сървър:

reboot

След рестартиране на демона (или машината), SSH няма да бъде достъпен през порт 22. В резултат на това свързването през SSH изисква ръчно указване на порта.

Забележка: не забравяйте да промените „1234“ с порта, зададен в SSH конфигурационния файл.

ssh -p 1234 [email protected]

Деактивирайте влизането с парола

Друг чудесен начин да защитите SSH сървър е да премахнете паролата за влизане и вместо това да преминете към влизане чрез SSH ключове. Преминаването по маршрута на SSH ключ създава кръг на доверие между вашия SSH сървър и отдалечени машини, които имат вашия ключ. Това е криптиран файл с парола, който е труден за разбиване.

  Как да използвате текстовия уеб браузър W3M на Linux

Настройте с SSH ключ на вашия сървър. Когато сте настроили ключовете, отворете терминал и отворете SSH конфигурационния файл.

su -

или

sudo -s

След това отворете конфигурацията в Nano с:

nano /etc/ssh/sshd_config

По подразбиране SSH сървърите обработват удостоверяване чрез паролата на потребителя. Ако имате сигурна парола, това е добър начин, но криптираният SSH ключ на доверени машини е по-бърз, по-удобен и сигурен. За да завършите прехода към „вход без парола“, вижте конфигурационния файл на SSH. Вътре в този файл превъртете и намерете записа, който казва „PasswordAuthentication“.

Премахнете символа # от пред „PasswordAuthentication“ и се уверете, че има думата „не“ пред него. Ако всичко изглежда добре, запазете редакциите на SSH конфигурацията, като натиснете Ctrl + O на клавиатурата.

След като запазите конфигурацията, затворете Nano с Ctrl + X и рестартирайте SSHD, за да приложите промените.

systemctl restart sshd

Ако не използвате systemd, опитайте да рестартирате SSH с тази команда вместо това:

service ssh restart

Следващия път, когато отдалечена машина се опита да влезе в този SSH сървър, тя ще провери за правилните ключове и ще ги пусне без парола.

  Как да инсталирате Paper GTK тема на Linux

Деактивирайте Root акаунта

Деактивирането на Root акаунта на вашия SSH сървър е начин за смекчаване на щетите, които могат да възникнат, когато неоторизиран потребител получи достъп през SSH. За да деактивирате Root акаунта, е наложително поне един потребител на вашия SSH сървър да може да получи Root чрез sudo. Това ще гарантира, че все още можете да получите достъп на ниво система, ако имате нужда от него, без Root парола.

Забележка: уверете се, че потребителите, които имат достъп до привилегиите на Root чрез sudo, имат защитена парола или деактивирането на акаунта на суперпотребител е безсмислено.

За да деактивирате Root, повишете терминала до привилегии на суперпотребител:

sudo -s

Използването на sudo -s заобикаля необходимостта от влизане с su и вместо това предоставя root обвивка чрез sudoers файла. Сега, когато обвивката има достъп на суперпотребител, изпълнете командата за парола и кодирайте Root акаунта с –lock.

passwd --lock root

Изпълнението на горната команда кодира паролата на Root акаунта, така че влизането през su е невъзможно. Отсега нататък потребителите могат да влизат само по SSH като локален потребител, след което да преминат към Root акаунт чрез sudo привилегии.