Linux-сервердің негізгі қауіпсіздік тәсілдері | Статья в журнале «Молодой ученый»

Отправьте статью сегодня! Журнал выйдет 11 декабря, печатный экземпляр отправим 15 декабря.

Опубликовать статью в журнале

Автор:

Рубрика: Молодой ученый Қазақстан

Опубликовано в Молодой учёный №41 (383) октябрь 2021 г.

Дата публикации: 08.10.2021

Статья просмотрена: 2 раза

Библиографическое описание:

Олегов, Данияр Айдарулы. Linux-сервердің негізгі қауіпсіздік тәсілдері / Данияр Айдарулы Олегов. — Текст : непосредственный // Молодой ученый. — 2021. — № 41 (383). — С. 314-319. — URL: https://moluch.ru/archive/383/84483/ (дата обращения: 03.12.2021).



Қазіргі күні Linux операциялық жүйелерінде алуан түрлі сервелер орнатылады. Серверлерді желіге қосқаннан бастап қауіпсіз ортаға тап болады. Сканерлер мен түрлі боттар сервелерді анықтап, оның қауіпсіздігіне қауіп төндіретін осалдылықтармен қате баптауларды іздейді. Мақалада осы қауіп-қатерлердің алдын алуға бағытталған қадамдар қарастырылады.

Кілт сөздер: SSH кілттері, firewall, root, fail2ban.

В настоящее время в операционных системах Linux устанавливаются различные серверы. Начиная с подключения серверов к сети, вы столкнетесь с безопасной средой. Сканеры и различные боты обнаруживают серверы и ищут неправильные настройки с уязвимостями, которые угрожают его безопасности. В статье рассматриваются шаги, направленные на предотвращение этих рисков.

Ключевые слова: SSH ключи, firewall, root, fail2ban.

Алғашқы қадам ретінде, сервер көтерілгеннен кейін root-пайдаланушыдан басқа пайдаланушыны тіркеу қарастырылады. Root-пайдаланушыныңжүйеде абсолюттік мүмкіндіктері бар. Қазіргі заман талаптарына сай, алыс қашықтықтан басқару, IT-қызметкерлерінің жалпы әрекеттерінің бірі болып табылады, сондықтан root-пайдалунышысына алыс қашықтықтан басқару мүмкіндігі берілсе, ол хакерлердің бірден-бір шабуыл жасау нысанына айналады. Осы себепке орай, басқа пайдалунышыны тіркеп және оған алыс қашықтықтан басқару мүмкіндігін беріп, ал root-пайдаланушының алыс қашықтықтан басқару(SSH қызметі) мүмкіндігін өшіру қажет.

– Жаңа пайдаланушы useradd командасы арқылы тіркеледі;

– Жаңа пайдаланушыға Passwd командасы арқылы құпия сөз беріледі;

– Кейін мүмкіндіктерін асыра қолдануға болатын пайдаланушылар тобына(sudo) usermod командасы арқылы қосу қажет.

Жоғарыда айтылып өткен кадамдар сурет 1-де көрсетілген. Лабараториялық жұмыстар Ubuntu операциялық жүйесінде орындалады.

Сурет 1. Жаңа пайдаланушыны тіркеу

SSH кілттері. Құпия сөзді bruteforce арқылы бұзу немесе социальды инженерия арқылы ұрлау қалыпты практикалардың біріне айналған, сондықтан, қауіпсіздікті қаматамасыз ету үшін серверге құпия сөз арқылы аутентификациялануды өшіріп, SSH кілттері арқылы аутентфикациялануды қолдануды баптау қажет. SSH протоколын жүзеге асыруға мүмкіндік беретін көптеген бағдарламалар түрі бар, оның ішінде ең таңымал әрі кеңінен қолданылатыны OpenSSH [1]. OpenSSH бағдарламасын орнату және іске қосу:

– Серверде орнату: sudo apt install openssh-server

– SSH қызметін іске қосу және автожүктеу қызметіне енгізу үшін: systemctl enable --now ssh командасын қолданамыз.

Жоғарыда орындалған командалардан кейін ssh қызметінің күйі(сурет 2):

Сурет 2. SSH қызметінің күйі

Жаңа пайдаланушы practice-қа кілттер жұбын құру қажет:

Сурет 3. Кілттер жұбын құру

Ашық(қоғамдық) кілт(сурет 4) кеңейтілімі.pub файлында сақталады:

Сурет 4. Ашық(қоғамдық кілт)

Осы кілтке жүйенің ішінде қолжетімділікті шектеу қажет [2]. Оны келесі командалар арқылы іске асыруға болады:

– chmod 700 /home/practice/.ssh арқылы кілт тұрған директорияға қолжеткізуді шектеу;

– chmod 600 /home/practice/.ssh/id_rsa.pub арқылы файлға practice пайдаланушысынан басқа ешкім қолжеткізе алмайды.

– chown -R practice:practice /home/practice/.ssh командасы арқылы директория және оның ішіндегі файлдардың иесі мен негізгі тобын ауыстыру арқылы қолжетімділікті шектеу.

Келесі қадам ретінде құпия кілтті клиентке көшіріп және оның орналасқан жерін көрсету қажет. Құпия кілті арқылы алыс қашықтықтан қауіпсіз байланыс орнатуға болады [3].

Желіаралық экран. Желіаларалық экран серверге тек қана рұқсат етілген порттармен трафиктердің өтуін қамтамасыз етеді. Бұл басқада қызметтермен бірге байқаусызда қосылған порттардың хакерлермен қолдану мүмкіндігін шектейді. Желіаралық экранды қосар алдында SSH қызметінің бұғатталмауына көз жеткізу керек, себебі бұғатталуға түскен болса алыс қашықтықтан серверге қол жеткізу мүмкіндігі шектеледі [4]. Ubuntu операциялық жүйесінде ufw(Uncompiled Firewall) қолданылады. Төменде көрсетілген суретте(сурет 5) желіаралық экранға ssh қызметін бұғаттамау және оны іске қосу командалары көрсетілген:

Сурет 5. Желіаралық экранды баптау

Fali2Ban. Fail2Ban қызметі сервердегі лог файлдарды талдап және әрбір IP — адрестен неше рет қолжеткізу тырысқандығын санайды. Осы қызмет арқылы ережелер орнатуға болады: қандай да бір уақыт аралығында қанша рет қолжеткізуге болатының және кейіннен осы шекті ретті асқанда алдын-ала көрсетілген уақыт аралаығына бұғаттау қою [5]. Мысалға, SSH қызметі бойынша бір IP — адресқа 2 сағат уақыт аралығына сәтті аутентификациялану үшін тек 3 мүмкіндік береміз, 3 мүмкіндікте сәтсіз өтсе осы IP-адрес 12 сағатқа бұғатталады. Fail2Ban қызметін келесі командалар арқылы орнатылыпп іске қосылады:

– sudo apt install fail2ban;

– systemctl start fail2ban;

– systemctl enable fail2ban;

/etc/fail2ba/jail.conf баптау файлдың ішінде жоғарыда айтылып өткен бұғаттау ережелерін баптауға болады:

Сурет 6. Fail2Ban баптаулары

– Bantime — қанша уақытқа бұғатталатыны көрсетіледі;

– Findtime — Канша уақыт аралығында логтарды іздеу керектігі көрсетіледі;

– Maxretry — қанша мүмкіндік беретіні көрсетіледі [6];

Автоматтандырылған қауіпсіздік жаңартулары. Барлық бағдарламаларды күн өте жаңа осалдылықтар табылады. Осалдылықтар табылған соң оларды эксплоит-қаптамаларға қосады, бұл эксплоиттарды кейіннен көптеген хакерлер немесе жасөспірімдер қолданады. Сондықтан бұл жаңартуларды бірден орнату қауіпсіздіктің өте бір маңызды бөлігі болып табылады.

Ubuntu серверіне unattended-upgrades бағдарламасын қою қажет. Бұл бағдарлама орнатылған кейін серверде қажет жаңартуларды белгілі бір уақытта орнатып отырады.

Порттарды өзгерту. SSH 1995 жылы telnet (23-порт) және ftp (21-порт) ауыстыру үшін жасалды, сондықтан бағдарламаның авторы Тату Илтонен SSH-ң порты ретінде 22-портты таңдады және ол IANA-да бекітілді.

Әрине, барлық шабуылдаушылар SSH қай портта жұмыс істейтінін біледі және портты білу арқылы оны әртүрлі сканерлермен тексеріп, бағдарламаның нұсқасын анықтап, root-ң стандартты құпия сөздерін қолдану мүмкіндіктерін жібермейді.

Стандартты порттарды ауыстыру — обфускация-қоқыс трафигін, журналдардың көлемін және серверге жүктемені бірнеше есе азайтады, сондай-ақ шабуыл бетін азайтады. Кейбіреулер бұл әдісті «түсініксіздік арқылы қорғау» (security through obscurity) деп сынға алады. Себебі, бұл әдіс іргелі сәулеттік қорғауға қарсы. Сондықтан, мысалы, АҚШ — тың ұлттық стандарттар және технологиялар институты «сервер қауіпсіздігі жөніндегі нұсқаулықта» ашық сервер архитектурасының қажеттілігін көрсетеді: «жүйенің қауіпсіздігі оның компоненттерін жүзеге асырудың құпиялылығына сенбеуі керек», — делінген құжатта.

Теориялық тұрғыдан, порттардың әдепкі өзгеруі ашық сәулет тәжірибесіне қайшы келеді. Бірақ іс жүзінде зиянды трафиктің мөлшері азаяды, сондықтан бұл қарапайым және тиімді шара.

Порт нөмірін /etc/ssh/sshd_config конфигурация файлындағы “Port 22” директивасын өзгерту арқылы теңшеуге болады. Ол sshd -де “-p ” параметрімен де көрсетілген. SSH клиенті мен sftp бағдарламалары “-p ” опциясын да қолдайды.

Әдебиет:

  1. T. Ylonen, «SSH Key Management Challenges and Requirements», 2019 10th IFIP International Conference on New Technologies, Mobility and Security (NTMS), 2019, pp. 1–5, doi: 10.1109/NTMS.2019.8763773.
  2. Peter Gutmann: Do Users Verify SSH Keys?;login:, 36(4):35–36, USENIX, August 2011.
  3. Jin Peng and Xin Zhao: SSH-Based Device Identity and Trust Initialization. Information Security Journal: A Global Perspective, 19(5):237–242, 2010.
  4. Yotam Harchol, Ittai Abraham and Benny Pinkas: Distributed SSH Key Management with Proactive RSA Threshold Signatures. In Proceedings of the International Conference on Applied Cryptography and Network Security (ANCS 2018), pp. 22–43, 2018.
  5. M. Ford et al., «A process to transfer Fail2ban data to an adaptive enterprise intrusion detection and prevention system», SoutheastCon 2016, 2016, pp. 1–4, doi: 10.1109/SECON.2016.7506771.
  6. Muakhori, I., Sunardi, S. and Fadlil, A. (2020) “Security Of Dynamic Domain Name System Servers Against DDOS Attacks Using IPTABLE And FAIL2BA: Security Of Dynamic Domain Name System Servers Against DDOS Attacks Using IPTABLE And FAIL2BA”, Jurnal Mantik, 4(1), pp. 41–49. Available at: http://iocscience.org/ejournal/index.php/mantik/article/view/673 (Accessed: 6October2021).
Основные термины (генерируются автоматически): SSH, DDOS, IPTABLE, ANCS, IFIP, NTMS, RSA, USENIX, оса, сервер.


Ключевые слова

SSH кілттері, firewall, root, fail2ban
Задать вопрос