Vodiči

Управљање Linux SSH Кључевима: Методе и Савети

  • 7 минута за читање
  • Hostragons тим
Управљање Linux SSH Кључевима: Методе и Савети

Увод

Уклањање Linux SSH кључа представља веома важан корак, нарочито када желимо да уклонимо или променимо SSH кључ. Можда ћемо желети да поништимо кључеве како бисмо побољшали безбедност наших SSH веза или прешли на нови SSH безбедносни систем. У овом чланку ћемо размотрити методе којима се може уклонити SSH кључ, предности и мане овог процеса, као и могућа алтернативна решења. Поред тога, сврставаћемо се примере и одговорићемо на често постављена питања на крају.

1. Шта је SSH кључ и зашто га је потребно уклонити?

SSH (Secure Shell) је протокол и алатна група која омогућава безбедно повезивање на удаљене сервере. Метод “аутентификације засноване на кључу” пружа сигурно и практично коришћење. У следећим ситуацијама може бити потребно уклањање Linux SSH кључа:

  • Безбедност: Ако сте забринути да су ваши кључеви компромитовани или да су направљени помоћу застарелих алгоритама.
  • Промена корисника: Прелазак на нови члан тима или прекид приступа стручњацима који напуштају пројекат.
  • Нова конфигурација: Поновно креирање кључева за јаче алгоритме (нпр. Ed25519) или другачије SSH безбедносне конфигурације.

Уклањање SSH кључа може бити од значаја не само у ризичним ситуацијама, већ и као део редовних безбедносних политика. Брисање неискоришћених или неважних кључева смањује потенцијалне векторе за сајбер нападе.

2. Основни кораци за уклањање SSH кључа

Уклањање SSH кључа или његово поништавање обично захтева преглед две различите локације:

  1. Брисање кључева на локалној машини: Обично уклањање приватних (private) и јавних (public) кључева из директоријума ~/.ssh/.
  2. Брисање регистрованих кључева на удаљеном серверу: Чишћење редова у фајлу ~/.ssh/authorized_keys на серверу.

Ова два поступка треба извршити синхроно. Чак и ако локално уклоните ваш кључ, ако информације на серверу остану, нападач може и даље да искористи кључ на серверу.

2.1 Уклањање локалног кључа

На Linux или macOS системима, SSH кључеви обично се налазе у директоријуму ~/.ssh. Примери:

  • ~/.ssh/id_rsa (Приватни кључ)
  • ~/.ssh/id_rsa.pub (Јавни кључ)
  • ~/.ssh/id_ed25519 (Приватни кључ)
  • ~/.ssh/id_ed25519.pub (Јавни кључ)

Када уклањате, будите опрезни. Ако је именовање урађено под посебним именом (mycustomkey итд.), морате пронаћи исправне фајлове. Пример команде је:

cd ~/.ssh/
rm id_rsa id_rsa.pub
# или
rm id_ed25519 id_ed25519.pub

Ако планирате нови пројекат или ћете променити корисника, довољно је да уклоните ове фајлове. Међутим, ако радите са више кључева на истом серверу, будите опрезни да не уклоните погрешан фајл.

пример екрана за уклањање linux ssh кључа

2.2 Уклоните кључ са удаљеног сервера

Када прелазите на корак уклањања Linux SSH кључа на серверу, потребно је да уклоните ред у фајлу ~/.ssh/authorized_keys за корисника којег сте повезали. Можете извршити следеће:

# Приступите серверу.
ssh [email protected]

# Након тога идите у свој home директоријум и отворите фајл authorized_keys
nano ~/.ssh/authorized_keys

# Нађите ред који желите да уклоните и обришите га.

На пример, садржај id_rsa.pub ће се појавити као дугачак ред у authorized_keys. Пронађите тај ред или редове и потпуно их уклоните. Када сачувате и изађете, тај кључ више неће имати приступ серверу.

2.3 Специјална метода: Реверзна операција са ssh-copy-id

ssh-copy-id обично се користи за додавање кључева. Међутим, опција "уклони" није уграђена. Ипак, кључеви додати преко ssh-copy-id одговарају одређеним редовима у authorized_keys, што подразумева ручно уклањање тих редова. Дакле, командом попут ssh-copy-id -r не можете извршити уклањање. Због тога можете очистити authorized_keys помоћу уредника или скрипте.

3. Предности и мане уклањања Linux SSH кључа

Пре него што предузмете било какав корак, важно је размотрити предности и мане, што може спречити потенцијалне проблеме. Ево предности и мане уклањања кључа:

3.1 Предности

  • Повећање безбедности: Уклањањем старих кључева који више не користите или који су можда компромитовани, смањићете површину напада.
  • Чисто управљање: Лако ћете прекинути приступ особама које су напустиле ваш тим, што побољшава управљивост.
  • Редовна ажурирања: Редовно брисање и поновно креирање кључева можете да унапредите вашу безбедност користећи модеран алгоритам шифровања.

3.2 Мане

  • Грешка у уклањању кључа: Уклањање погрешног фајла или реда може довести до губитка приступа системима.
  • Привремени губитак приступа: Током операције, неискусни корисници могу имати тешкоћа у поновном повезивању.
  • Tрошак радне снаге: Управљање овим процесом за велики број сервера или корисника може бити временски захтевно.

Стога, поред предности, морате имати на уму и неочекиване ризике и применити ове поступке планирано и пажљиво.

4. Алтернативне или додатне методе

Осим уклањања SSH кључева, постоје и различити приступи. Прегледавање овог дела може помоћи у неким посебним сценаријима:

4.1 Ажурирање passphrase-a

Ако желите само да промените лозинку кључа у основи SSH безбедносне конфигурације, можете обновити passphrase помоћу команде ssh-keygen -p, што подиже ниво безбедности без потребе да разматрате потпуно уклањање кључа.

4.2 Списак поништених кључева (KRL)

У верзијама OpenSSH 6.2 и старијим, постоји опција Списак поништених кључева (KRL). То значи да можете држати списак на серверу о томе који кључеви више нису важећи или које сертификате не прихватате. Креирајте KRL помоћу команди попут ssh-keygen -k -f revoked_keys, и конфигуришите SSH у зависности од тога.

4.3 Блокирање уз помоћ SSH конфигурационог фајла

На серверу, неке параметре у /etc/ssh/sshd_config можете користити да бисте блокирали кориснике или одређене типове кључева. На пример, поставке попут PasswordAuthentication no дозвољавају само приступ заснован на кључу, а по потреби можете креирати различите политике за DMZ или тест системе. Међутим, ово је метод који мења протокол општег приступа уместо "уклањања кључа".

5. Конкретни примери и савети

Дижимо примере које можете размотрити у практичној примени:

  1. Пример развојног тима: Имате тим од 5 особа. За особу која напушта, само уклоните њен ред из authorized_keys датотеке. Такође, требало би да бришете и њен локални private key.
  2. Прелазак сервера: Када мењате инфраструктуру, укидајте све SSH кључеве на старом серверу и користите само актуелне кључеве на новом. На тај начин, пропусти на деактивираним системима се неће поновити.
  3. Сценарио хитне ситуације: У случају да се сумња да је кључ компромитован или украден, одмах можете уклонити Linux SSH кључ и спречити неовлашћени приступ. Након тога, можете направити нови кључ и додати га вашем систему.

Ови примери показују колико је важно донети одлуке о уклањању кључева у различитим ситуацијама и на различитим нивоима.

6. Спољне и унутрашње везе

Ако вам затребају додатне информације о SSH-у, можете пронаћи сву документацију на Официјелном сајту OpenSSH (DoFollow).

Такође, можете погледати различите примере конфигурације у нашој категорији Линук.

7. Резиме и закључак

Уклањање Linux SSH кључа је један од кључних корака када је у питању безбедност и управљивост. Можда ће вам бити потребно уклонити SSH кључ због безбедносних повреда, промена у тиму или једноставно за унапређење управљања. Процес уклањања углавном се састоји из два корака: чишћење ваших локалних кључева и уклањање одговарајућих редова у датотеци authorized_keys на серверу.

Топло се препоручује да будете опрезни на свим фазама, да управљате процесима SSH безбедносне конфигурације написаним политиком и да осигурате координацију унутар тима. Коришћење актуелних криптографskih метода, редовна проверка и деактивирање неискоришћених кључева представљају важан системски заштитни механизам против напада. Запамтите, мала неопрезност може довести до озбиљних компромитација података.

Често постављана питања (ЧПП)

1. Да ли је потребно да буде отворена сесија на систему за уклањање Linux SSH кључа?

Обично да. За уклањање SSH кључа, морате имати приступ серверу. Када је сесија отворена, можете да уредите authorized_keys датотеку и уклоните локалне датотеке у вашем ~/.ssh директоријуму. Међутим, током операције можете имати и управљачки приступ (нпр. коришћење root консоли), што вам омогућава измене без отворене сесије.

2. Шта да урадим да бих се поново повезао након уклањања SSH кључа?

Ако сте уклонили стари кључ, више нећете моћи да се повежете помоћу тог кључа. Ако планирате нову SSH безбедносну конфигурацију, требало би да креирате нове кључеве помоћу команде ssh-keygen и додате јавни кључ у authorized_keys на серверу.

3. Користим исти кључ на више сервера, да ли треба све да уклоним?

Ако планирате потпуно да деактивирате кључ, онда да, морате уклонити authorized_keys записи на свим серверима. У супротном, још увек можете имати приступ различитим серверима.

Поделите овај чланак:

Hostragons тим

Ажурирани водичи нашег стручног тима о хостингу, серверима и доменима. Хајде да заједно пронађемо право решење за ваш пројекат.

Контактирајте нас