Защита SSH-сервера - порты, ключи, port knocking, iptables

Поделиться
HTML-код
  • Опубликовано: 16 май 2024
  • Мой курс «Хардкорная веб-разработка» - course.to.digital
    Книжный клуб Ботаним!, где мы читаем хорошие ИТ-книги: botanim.to.digital/
    Telegram - t.me/t0digital
    0:00 О port knocking
    1:19 Что такое сетевые порты в TCP и UDP?
    3:17 Замена стандартного порта SSH-сервера
    4:24 Запрет SSH-входа по паролю
    4:56 Что делать, если потеряешь SSH-ключи?
    6:23 Запрет входа root
    6:33 Port knocking и безопасность
    8:52 Покупка сервера в Selectel
    9:40 Создание SSH-ключа с паролем
    11:16 Создание Linux-пользователя
    12:43 Разрешаем SSH-вход пользователю
    13:47 Базовая настройка SSH-сервера
    15:51 Настройка port knocking с knockd, iptables и nmap
    25:50 Ещё несколько возможностей iptables
    26:30 Как сделать сервер непингуемым?
    28:01 Выводы
    Команды из видео
    ===
    Генерация SSH-ключей:
    ssh-keygen -t ed25519
    Копирование публичного ключа:
    cat ~/.ssh/id_ed25519.pub | pbcopy
    Редактирование настроек SSH-сервера:
    sudo vim /etc/ssh/sshd_config
    Настройки:
    AllowUsers www
    PermitRootLogin no
    PasswordAuthentication no
    Port 45916
    Рестарты SSH-сервера:
    sudo service ssh restart
    Установка knockd:
    sudo apt install -y knockd
    Редактирование его настроек:
    sudo vim /etc/knockd.conf
    Настройки:
    [options]
    UseSyslog
    Interface = enp3s0
    [SSH]
    sequence = 7000,8000,9000
    seq_timeout = 5
    tcpflags = syn
    start_command = /sbin/iptables -I INPUT -s %IP% -p tcp --dport 45916 -j ACCEPT
    stop_command = /sbin/iptables -D INPUT -s %IP% -p tcp --dport 45916 -j ACCEPT
    cmd_timeout = 60
    Здесь enp3s0 это сетевой интерфейс, проверяется командой:
    ip a
    Автозапуск:
    sudo vim /etc/default/knockd
    START_KNOCKD=1
    KNOCKD_OPTS="-i enp3s0"
    Сетевой интерфейс аналогично подставляется актуальный вместо enp3s0.
    Старт knockd:
    sudo systemctl start knockd
    sudo systemctl enable knockd
    sudo systemctl status knockd
    Настройка iptables и перманентное сохранение этих настроек:
    sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
    sudo iptables -A INPUT -p tcp --dport 45916 -j REJECT
    sudo apt install iptables-persistent
    sudo service netfilter-persistent save
    Просмотр настроек:
    sudo iptables -L --line-numbers
    Постучаться в три порта - 7000, 8000 и 9000 сервера с IP 46.148.229.113:
    for x in 7000 8000 9000; do nmap -Pn --max-retries 0 -p $x 46.148.229.113; done
    Сброс всех настроек iptables:
    sudo iptables -F
    Запрет ping хоста:
    sudo iptables -A INPUT -p icmp --icmp-type 8 -j DROP
    Удаление этого правила:
    sudo iptables -D INPUT -p icmp --icmp-type 8 -j DROP
    /****************** about ******************/
    Меня зовут Алексей Голобурдин, я программирую с 2004 года и на этом канале делюсь своим опытом. Я основатель и руководитель компаний:
    - Диджитализируй digitalize.team, разрабатываем сложные IT системы для бизнеса;
    - Salesbeat salesbeat.pro, комплексный модуль доставки для интернет магазинов.
    Telegram канал - t.me/t0digital
    ВК - digitalize.team
    RuTube - rutube.ru/channel/24802975/ab...
    Дзен - dzen.ru/id/6235d32cb64df01e6e...

Комментарии • 283

  • @t0digital
    @t0digital  2 месяца назад +6

    Тем временем мой курс «Хардкорная веб-разработка» продолжает набор обучающихся - course.to.digital
    Вжух!

    • @ivanselyt
      @ivanselyt 2 месяца назад

      Прям просится запись где-нибудь в Notion оформленная с разделами, командами из видео) Если сделаешь, пингани меня тут в комментах, чтобы я заметил, спасибо)

    • @t0digital
      @t0digital  2 месяца назад +2

      В описании к видео есть текст всех команд из видео

    • @Stalone13
      @Stalone13 Месяц назад

      @@t0digital Ты на MacBook Air M1 поставил macOS Соному ? Говорят намного быстрее разряжается после обновления на эту макос.

    • @t0digital
      @t0digital  Месяц назад +1

      @@Stalone13 не ставил. Не хочу ломать ничего в системе. На монтерей сижу

    • @Stalone13
      @Stalone13 Месяц назад

      @@t0digital Хах я на Ventura всё хорошо до этого на Monterey был. А вообще MacBook планируешь обновлять ? Или будешь всё время на монтерей сидеть ?:) Я решил вообще Соному пропустить буду сидеть на Вентуре до макос 15.6

  • @user-zj3ih2ux5e
    @user-zj3ih2ux5e 2 месяца назад +101

    Я всё задавался вопросом куда же ты пропал? А он оказывается кушал 😂😂
    Очень рад что ты вернулся.

    • @MakarenkoSasha
      @MakarenkoSasha 2 месяца назад +14

      Такое ощущение, что его взяли в плен и пытали пельменями и шаурмой ))

    • @user-vk4si1oz7w
      @user-vk4si1oz7w 2 месяца назад +6

      Да, располнел заметно ))

    • @user-zj3ih2ux5e
      @user-zj3ih2ux5e 2 месяца назад +6

      @@MakarenkoSasha Я когда на лето к бабушке уезжал, таким же возвращался.

    • @saintkredo7673
      @saintkredo7673 2 месяца назад

      да и вроде умный дядя 30+ а у него всё - здорова котаны....

    • @django8196
      @django8196 28 дней назад

      В яблочко😀

  • @kirillzh4798
    @kirillzh4798 2 месяца назад +52

    Вот пристали-то "поправился", "растолстел","в кадр не влезешь", человеку даже к бабушке уже нельзя съездить что-ли? Хорошего человека должно быть много. Алексей молодец, главное - чтоб здоровье было хорошее, а остальное - ерунда. Благодаря ему работаю девопсом. Спасибо большое за информацию в простой и понятной форме. Алексей, желаю конского здоровья и стальных нервов.

    • @kirsanov2008
      @kirsanov2008 2 месяца назад +17

      действительно, вот пристали, щас родит все пройдет

    • @t0digital
      @t0digital  2 месяца назад +5

      ​@@kirsanov2008двойню!

    • @user-yy6dx1wj9r
      @user-yy6dx1wj9r 2 месяца назад +3

      Да мы его и таким любим, просто в глаза бросается, особенно на превьюшке)
      А для здоровья как раз таки "зимнего запаса" поменьше должно быть)

  • @vladislavske
    @vladislavske 2 месяца назад +26

    Не прекращай радовать видосиками! Самый ламповый и толковый блогер по теме разработки ❤

    • @t0digital
      @t0digital  2 месяца назад +3

      Спасибооо 💪💪💪

  • @user-nn5oj7jl4w
    @user-nn5oj7jl4w 2 месяца назад +2

    Рад тебя видеть старина!

  • @bokoter
    @bokoter 2 месяца назад +2

    Благодарю за то, что когда-то дали комментарий по резюме, когда вам требовался сотрудник, это помогло продолжать путь, и в итоге устроился на первую работу год назад примерно)
    В целом все видосы оч полезные

  • @NatureFitSport
    @NatureFitSport 2 месяца назад +6

    Темы топ, подача топ. Видосы по линуксу просто мастхев 👍

  • @user-fc8ut9mx6x
    @user-fc8ut9mx6x 2 месяца назад

    какие хорошие примеры рад что вы вернулись

  • @sammak3961
    @sammak3961 2 месяца назад +2

    ура главкотан вернулся) и сразу с нужной темой.

  • @NatureFitSport
    @NatureFitSport 2 месяца назад

    Спасибо за видео! Лучший канал о ИТ на ютубе!

  • @user-lc8dw6qu7r
    @user-lc8dw6qu7r 2 месяца назад

    Алексей, спасибо за информацию!!! Очень актуально и полезно!!! Красавчик.

  • @user-zj3ih2ux5e
    @user-zj3ih2ux5e 2 месяца назад +20

    Старенькая, но приколная затычка, которая биндится на дефолтовый 22 порт, прикидывается ssh и при коннекте начинает отмораживаться, но коннект не разрывает. Эдакий honeypot. Первый же вопрос на подбор пароля вязнет и вечно ожидает завершения :)
    endlessh

    • @DrakoshaSStas
      @DrakoshaSStas 2 месяца назад +1

      Интересная подлянка

  • @TimurDE
    @TimurDE 2 месяца назад +1

    Спасибо Алексей!

  • @MrVernuk
    @MrVernuk 2 месяца назад

    Мега полезно 😊 Классно объясняешь!

  • @goodvinsk8
    @goodvinsk8 2 месяца назад

    Спасибо за полезный контент!

  • @user-jp1hx7db2t
    @user-jp1hx7db2t 2 месяца назад

    Спасибо, все круто, как всегда!)

  • @pid625
    @pid625 2 месяца назад +4

    Ого, офигеть, магия б**ь, просто гениальная технология, прям как гномьи двери в Мории, которые не видно) Огромное спасибо за ваш канал, всегда много полезного узнаю

    • @great_kombinator
      @great_kombinator 2 месяца назад +1

      Ага, мне тоже напомнило: молви друг и войди

  • @st7dot
    @st7dot 2 месяца назад +1

    Спасибо за видео !!!!

  • @lexor64
    @lexor64 2 месяца назад +22

    Можно ещё прикрутить fail2ban, чтобы блокировать IP после нескольких неправильных попыток входа

  • @ozodsaidov7427
    @ozodsaidov7427 4 дня назад

    замечательно и полезно как всегда!

  • @markostr
    @markostr 2 месяца назад

    Отлично ! Огромное спасибо !

  • @zatochiSiberian
    @zatochiSiberian 2 месяца назад

    Благодарю, очень полезно.

  • @user-vg5fu2ed6x
    @user-vg5fu2ed6x 2 месяца назад

    Как же это круто!

  • @funkytapir
    @funkytapir 2 месяца назад

    Спасибо очень было интересно)

  • @benjaminshtark5977
    @benjaminshtark5977 2 месяца назад

    Браво!!!
    Обалденное видео, сам работаю с линуксом почти 20 лет, и порт накинг это не новое и известное но в видео показано как это просто сделать.
    к сожалению 99.9% админов этим не заморачиваются, дай б-г чтобы хотя бы вырубили доступ по паролю ))))
    А уже защищать ssh ключи паролем, не говоря уже про порт нокинг это уже космос :))

  • @tihon4979
    @tihon4979 2 месяца назад

    Нормуль! Годно! Берём на вооружение. Спасибо!!!

  • @null_day
    @null_day 2 месяца назад

    Не потолстел, а съел Питона =)
    С нетерпением ждем новое видео! А лучше выпускать хотя бы каждую неделю ) У вас хорошо получается донести информацию

  • @sedelnikovsergey
    @sedelnikovsergey 2 месяца назад

    Супер, спасибо за лекбез

  • @user-vi2fp6dl7b
    @user-vi2fp6dl7b Месяц назад

    Большое спасибо!

  • @Sanek060782
    @Sanek060782 2 месяца назад

    Огонь! Тема для параноиков! Respect!

  • @akiro3522
    @akiro3522 2 месяца назад

    Ура, видосик

  • @user-ww3fv8nw9s
    @user-ww3fv8nw9s 2 месяца назад

    Клевая подача информации!

  • @dev-workshop
    @dev-workshop 2 месяца назад

    Отличное видео, спасибо! Как раз последнее время думаю, как повысить безопасность продакшен серверов
    Буду рад, если будет видео про бронебойный nginx, что нужно, чтобы не пробился никто через веб приложения

  • @user-yl6tx2jy2i
    @user-yl6tx2jy2i 2 месяца назад +6

    Предлагаю в качестве следующей темы для видео рассмотреть механизм защиты "honey pot".

  • @alexwar6821
    @alexwar6821 5 часов назад

    Ай спасибо мил человек! Очень полезное видео!

  • @gnompirogov9259
    @gnompirogov9259 2 месяца назад

    Александр, спасибо. полезно, интересно, наглядно :))))

  • @ZlobniyTapoG
    @ZlobniyTapoG 2 месяца назад +19

    Алексей, нужно двигаться и меньше кушать.
    Трансформация в винни-пуха становится очевидной )

    • @mishuha
      @mishuha 2 месяца назад

      А голос-то какой! Прям мимимишный.

  • @user-wj7mr2rt1r
    @user-wj7mr2rt1r 2 месяца назад

    лайк авансом!)

  • @jenykoo
    @jenykoo 2 месяца назад

    завтра попробую) уже 2 часа утра))

  • @honsour72
    @honsour72 2 месяца назад

    Очень полезно и информативно, не хватает еще bash-скриптяги, чтобы перед ссш автоматически вызывалась команда простукивания!
    Спасибо!

  • @serenitiSever
    @serenitiSever 2 месяца назад

    😂 в начале очень смешно объяснил, от души посмеялся. Полезная информация 😊 благодарю

  • @NESTOWL
    @NESTOWL 2 месяца назад +4

    Уже давно использую доступ к порту ssh только со своего ip и вот если вдруг ip изменится, будет очень неприятно 😅
    В качестве подстраховки надо будет настроить, однажды может пригодится
    Полезная инфа! Спасибо! 👍👍👍

    • @NESTOWL
      @NESTOWL Месяц назад +3

      Ну вот.. Этот день все-таки настал...
      И как обычно в самый не подходящий момент...
      ip изменился и я потерял доступ 🙃И сразу же вспомнил это видео 😅

  • @LazerShrk
    @LazerShrk 2 месяца назад +1

    Только сегодня встал вопрос о защите сервера, и сразу вышел Ваш видос)) Спасибо огромное!

  • @oleg-medovikov
    @oleg-medovikov 2 месяца назад

    Очень классно, не слышал о таком.

  • @Randy131098
    @Randy131098 Месяц назад

    Алексей, благодарю за видео! Подскажи, пожалуйста, какой shell используешь на своем mac? ZSH с OhMyZSH? Я бы с удовольствием от тебя посмотрел бы гайд на тему настройки и кастомизации оболочки.

  • @rabotavsem_biz
    @rabotavsem_biz 2 месяца назад

    Спасибо за очередное полезное видео! Всегда понятное объяснение. Очень интересует настройка на ufw port knocking

    • @konstantinselivanov8513
      @konstantinselivanov8513 2 месяца назад

      Обнови /etc/knockd.conf:
      start_command = ufw allow from %IP% to any port 22
      stop_command = ufw delete allow from %IP% to any port 22
      Открой порты 7000, 8000 и 9000 в ufw
      (замени порты на свои)

  • @user-qg6nh5rj1v
    @user-qg6nh5rj1v 2 месяца назад +12

    Как по мне, вот этого набора правил, будет вполне достаточно, чтобы никакой ебобо, не смог подключиться к серваку:
    - Port 0 - 65536
    - LoginGraceTime 10s
    - AllowUsers Username
    - StrictModes yes
    - MaxAuthTries 1
    - MaxSessions 1
    - PubkeyAuthentication yes
    - PasswordAuthentication no
    - PermitRootLogin no
    - PermitEmptyPasswords no

    • @pokupki29
      @pokupki29 2 месяца назад

      Красава

    • @lexxandr9349
      @lexxandr9349 9 дней назад

      А в чем смысл Port 0 - 65536 ?

    • @user-qg6nh5rj1v
      @user-qg6nh5rj1v 9 дней назад

      @@lexxandr9349 В известности портов

  • @Vjidowkdkcpapqkfjfw
    @Vjidowkdkcpapqkfjfw 2 месяца назад +98

    Ты когда так покушать успел ?

    • @t0digital
      @t0digital  2 месяца назад +17

      на завтрак!

    • @temcodes
      @temcodes 2 месяца назад +5

      Праздники делают с нами и не такое)

    • @tihon4979
      @tihon4979 2 месяца назад +2

      Лол 😂

    • @dmitriiovsiannikov9605
      @dmitriiovsiannikov9605 2 месяца назад +13

      Курс продается хорошо 😂

    • @user-pl9ek9du8p
      @user-pl9ek9du8p 2 месяца назад +1

      Не, это когда наконец-то улыбнулся для обложки

  • @bakla_zhan
    @bakla_zhan 2 месяца назад

    Вообще огонь! Только на днях думал, как защитить ssh-сервер, смотрящий в интернет. Google что уже научился мысли читать?!

    • @t0digital
      @t0digital  2 месяца назад

      Учится понемногу:)

  • @SuperEuro
    @SuperEuro 2 месяца назад

    Возможно ли использовать аппаратные ключи, по технологии FIDO?

  • @dmitrykuksenok9308
    @dmitrykuksenok9308 2 месяца назад +1

    Еще можно повесить двухфакторку и otp пароли на вход по ssh. Вроде даже на том же хабре была статья (если ничего не путаю), там человек поднимал вопрос, что вход сертификатам это круто, но у тебя получается типа мастер-ключ (твой закрытый ключ) и тебе надо следить, где ты оставил открытый ключ, подчищать за собой и тп, двухфакторка позволяет избавиться от этого

    • @DrakoshaSStas
      @DrakoshaSStas 2 месяца назад +1

      Еще можно разделить, на свои и чужие сервера.
      То есть иметь два три сертификата, чтобы не пересекались.
      Но otp и port knocking это доп защита.
      Только например с мобильных сетей port knocking не очень

    • @vasya_pipkin
      @vasya_pipkin 2 месяца назад

      @@DrakoshaSStas ага, а теперь у тебя этих серверов скажем так около 100 (хотя бы) и зайти надо сразу так скажем на 10)) вот будет интересно))). port knocking как по мне больше баловство, для своих каких песочниц)) Если уж и делать, то бастион хост (аля джамп хост) где SSH с OTP и потом уже к виртуалкам с не публичными адресами.

  • @SergMirny_yt
    @SergMirny_yt 2 месяца назад +1

    Деша, давно Вас не видел. Вы очень набрали. Берегите себя, лишний вес - здоровья не добавляет, по себе знаю. Боролся с кишкоблудством (есть выражение, что оно хуже наркоты - в этом, что-то есть)

  • @mew6085
    @mew6085 2 месяца назад

    Круто

  • @fantasy3469
    @fantasy3469 Месяц назад

    Алексей, здравствуйте. Скажите пожалуйста, как вы справляетесь с тем, что во время набора русских текстов в nvim приходится переключать раскладку? Или все таки переключаете? Очень бы хотелось писать/редактировать русский текст также удобно как и английский. Спасибо!

  • @user-vu9tz9zu3w
    @user-vu9tz9zu3w 2 месяца назад

    Будет видео про Mojo и Modular? Какие перспективы?

  • @LinuxbyDmitry
    @LinuxbyDmitry 2 месяца назад

    Давно хотел сделать port knocking на nftables, без дополнительных утилит или ещё чего). Сегодня решил, чего ждать и запилил за вечер два видео с двумя вариантами, думаю ещё можно чего нибудь напридумывать на чистом nftables. Данной утилитой многие пользуются, моё мнение это не вариант. Да, в случае с iptables так будет проще, ни какой головной боли, но на nftables это решается гораздо проще и надёжнее).

  • @slmuim9745
    @slmuim9745 2 месяца назад

    Очень информативно, спасибо.
    Вопрос: а порты, которые ждут нокинг, можно задетектить nmap’ом или чем-то еще?

    • @__username__
      @__username__ 2 месяца назад

      Ответ: нет. Они могут (и должны) быть закрыты, нокинг сработает и в этом случае.
      Стоит помнить, что во всех серьёзных мануалах написано, что нокинг - это слабая мера безопасности и не должна быть единственной.
      Также могу сказать, что на SSH-порт моего домашнего роутера, который висит на нестандартном порту, за более чем 10 лет не было ни единой попытки коннекта. Это я знаю достоверно, т.к. у меня есть скрипт (работоспособность которого проверена, конечно), оповещающий о неудачной попытке логина. Так что просто смени порт и кол-во потенциальных угроз снизится на порядки. Ну и ключ с паролем, само собой.

  • @ruslan_swd
    @ruslan_swd 2 месяца назад

    ИМХО - раз уж речь пошла про SSH и security, то можно было и рассказать про SSH Bastion (для множества серверов), что IP whitelisting для SSH через тот же IPTABLES. Последний пункт удобно реализовать через VPN на домашнем/офисном рутере со статичным ИП.
    В каждом случае, есть свои + и -, но про возможности самих сетей тоже не стоит забывать и на них забивать! :)

  • @user-eq8ou5gi4h
    @user-eq8ou5gi4h 2 месяца назад +1

    Блестяще! Спасибо за видео.
    Я совершенно не спец в этой области, но хотел узнать: а нельзя ли в добавок ко всем манипуляциям, что Вы делали, создать на стандартном порте какой-либо "ложный сервер" (в настоящемсервере) - эдакую обманку для злоумышленника. Чтобы он думал, что взлом удался и он будет терять время зря? Заранее спасибо.

    • @Ihor33ss
      @Ihor33ss 2 месяца назад

      чтобы что? Если у тебя пароль длиннее 12 символов с разными комбинациями, то он ломать его будет 12 лет. Ставишь fail2ban и после 3-х неудачных попыток доступ с данного ip блокируется. Это самый надежный способ защиты от брутфорса.

    • @user-eq8ou5gi4h
      @user-eq8ou5gi4h 2 месяца назад

      Это я к тому, что взломщик решив, что вломал сервер, будет "красть" ложные данные с фейковой области сервера, тихо радоваться и при этом тратить время впустую. Основной же сервер будет не тронутым.

    • @kalobyte
      @kalobyte 2 месяца назад

      @@user-eq8ou5gi4h chroot называется
      только возни много
      ломают не для кражи данных, а для установки впн серверов или спам софта
      или агентов ддос
      данные рандомного васи никому не нужны

  • @disasstor
    @disasstor 2 месяца назад +2

    По поводу как получить доступ к серверу когда потярял ключи, при условии что это ваш сервер и есть доступ к поставщеку услуг(на всех я не проверял, но в оракл это единственный способ вернуть доступ):
    1) отмонтировать системный диск от ВМ
    2) создать новую вм, примонтировать ей этот диск
    3) зайти в созданную вм на примонтированный диск в дирректорию с вашими старыми ключами и добавить новый созданный ключ в разрешенные хосты
    4) отмонтировать диск от созданной ВМ
    5) примонтировать дск обратно на старую ВМ

    • @Ihor33ss
      @Ihor33ss 2 месяца назад

      отличный лайвхак для тов. майора, спасибо.

    • @invilso4051
      @invilso4051 2 месяца назад

      @@Ihor33ssон итак знает)))

    • @Ihor33ss
      @Ihor33ss 2 месяца назад

      @@invilso4051 ну тогда смысл в чем? Отберет у тебя твой диск и подменяет ключи...

    • @user-lv1ft6nw6u
      @user-lv1ft6nw6u 2 месяца назад

      ​@@Ihor33ssзашифруй диск, проблем то

    • @Ihor33ss
      @Ihor33ss 2 месяца назад

      @@user-lv1ft6nw6u сынок, а ты в курсе, на сколько снижается производительность при шифровке хотя бы на 256 бит, не говоря уже про 512? Не у всех же core i9 12900к.

  • @SWS-LINK
    @SWS-LINK 2 месяца назад

    Я порт кнокинг делаю на ICMP с разным размером пакета - 3 пинга и порт открыт. Просто в тех же корп. сетях с большой вероятностью запросы на нестандартные порты будут дропать на фаерволе. Могут и пинг прибить, но чаще он работает -).

  • @mishuha
    @mishuha 2 месяца назад

    Насчет веб хостеров: у них есть сброс пароля всегда, даже если ты сменил пароль админа у своей VDS. Как это работает? Через доступ к фс обнуляют /etc/passwd?

  • @ivanselyt
    @ivanselyt 2 месяца назад

    Если мы используем port knocking, то пропадает смысл переносить ssh на другой порт?

  • @sikelmon
    @sikelmon 2 месяца назад

    Привет. Расскажи как поживает макбук? Уже достаточно долго им пользуешься.

    • @t0digital
      @t0digital  2 месяца назад +1

      Нормально. Краска потерлась слева-справа от тачпада, аккум 81% емкости осталось, около 465 циклов зарядки. Нормас

  • @zigf
    @zigf 2 месяца назад +1

    Поправился немного за это время

  • @asura963
    @asura963 Месяц назад

    Здраствуйте.
    Вы можете показать как правильно настроить, применить правила nftables в дистрибутиве: voidlinux
    Ранее работали, но теперь видимо что то voidlinux поменяли.

    • @t0digital
      @t0digital  Месяц назад

      Синтаксис самого nftables должен быть одинаковым везде вроде, едва ли они это меняли в дистрибутиве

    • @asura963
      @asura963 Месяц назад

      @@t0digital аз не про синтаксис nftable. А про установку и запуск его в дистрибутиве voidlinux)
      Раниее устанавливал так и все было хорошо:
      # xbps-install nftables runit-nftables
      cd voidlinux
      cp nftables /usr/local/bin/
      cd /usr/local/bin/
      chmod 755
      nftables nft flush ruleset
      nano /usr/local/bin/nftables
      nftables
      echo '#!/usr/sbin/nft -f' > /etc/nftables.conf
      echo 'flush ruleset' >> /etc/nftables.conf
      nft list ruleset >> /etc/nftables.conf
      cat /etc/nftables.conf
      sv up nftables
      Все проходит успешно, кроме последней команды запуска, выкидывает такую ошибку:
      fail: nftables: unable to change to service directory: file does not exist
      Рание такого небыло.

    • @asura963
      @asura963 Месяц назад

      @@t0digital разобрался

  • @extremecodegovno6306
    @extremecodegovno6306 2 месяца назад

    а как это удобно сконфигурировать чтоб не стучать каждый раз? аля этакий ssh config knock manager

  • @osada96
    @osada96 2 месяца назад

    А каким образом можно настроить запрет пингов всем, кроме определенных хостов? Т.е., чтобы сделать исключение этим хостам и они могли всегда пинговать сервер?

  • @laushkin1
    @laushkin1 Месяц назад

    Привет, можешь снять видео про neovim, мысли твои про него, почему ты бы рекомендовал или не рекомендовал его, чем он лучше или хуже за vim или любой другой редактор или ide

  • @user-uk8zu8fz7w
    @user-uk8zu8fz7w Месяц назад

    Добрый день. Спасибо за видео! Чуть дополню здесь в правилах лучше использовать DROP а не Reject. Так как стучащийся не будет получать информацию есть ли за этим портом что-то или нет. В дополнение к защите.

    • @t0digital
      @t0digital  Месяц назад

      зависит от того как работают остальные порты. Если остальные ведут себя как DROP, то и наш надо на DROP, если остальные ведут себя как REJECT, то и наш на REJECT. Иначе он будет палиться отличным от других поведением

    • @user-uk8zu8fz7w
      @user-uk8zu8fz7w Месяц назад

      @@t0digital Согласен. Тогда все лучше дропать. Зачем кому-то знать что его отвергли ) Еще раз спасибо!

  • @Stalone13
    @Stalone13 Месяц назад

    Ты на MacBook Air M1 поставил macOS Соному ? Говорят намного быстрее разряжается после обновления на эту макос.

    • @t0digital
      @t0digital  Месяц назад +1

      Не ставил. Сижу на Монтерей и не планирую обновлять. Опять поломается всё нахрен. К сожалению, нет доверия больше маковским обновам. Обновлятели купертиновские хуевы, в прошлый раз пол дня убил на переустановку всего необходимого.

    • @Stalone13
      @Stalone13 Месяц назад

      @@t0digital Хах я на Ventura всё хорошо до этого на Monterey был. А вообще MacBook планируешь обновлять ? Или будешь всё время на монтерей сидеть ?:) Я решил вообще Соному пропустить буду сидеть на Вентуре до макос 15.6

  • @Lexx-pz9mk
    @Lexx-pz9mk 2 месяца назад +2

    Круто, знал, но не юзал, любопытная штука. Однако, довольно опасная с точки зрения вероятного падения данной службы, но на простых серверах личного назначения вполне себе. Обычно, в дополнение к смене дeфолтного порта, отключения root и входа по паролю включаю ufw/iptables и даю доступ по ssh на кастомном порту в режиме лимита.
    Сам факт того, что у нас нет доступа по паролю и используется контрольная фраза, обеспечивает должный уровень безопасности. Респектую Алексею за то, что поднимает фундаментальные вопросы, которые на практике многие игнорируют.
    пс: автору предлагаю не обращать внимание на клоунов, которые привыкли судить людей по внешнему виду, это неуверенные в себе и закомплексованные создания, жизнь их уже наказала.

  • @san_cristobal
    @san_cristobal Месяц назад

    Как правильно постучится в порты на windows, через тот же PowerShell? Цикл for там не воспринимается, возможно есть какая-то альтернатива. А, то теперь на сервер не могу попасть 😂

  • @sergeyn5504
    @sergeyn5504 2 месяца назад

    А по смс можно сделать? Как это называется - двухфакторная авторизация?

    • @DrakoshaSStas
      @DrakoshaSStas 2 месяца назад

      Можно, но лучше otp, его легче сделать и без дополнительных затрат на sms.

  • @motortillers
    @motortillers 2 месяца назад

    Нуждаюсь в вашем совете!
    Купил микротик лдф6 лте. При настройке и обновлении оборудования. Оператор узнает ли что симка не в смартфоне? Как быть , тариф для смартфона и экономный. Неохото потерять

    • @t0digital
      @t0digital  2 месяца назад +1

      да, в общем случае оператор узнаёт. Чтобы не узнал надо проводить дополнительные настройки и не на всех устройствах их можно провести, не в курсе про микроток. Надёжным вариантом будет симка для модема с нормальным тарифом, такие есть.

    • @motortillers
      @motortillers 2 месяца назад

      @@t0digital спасибо Вам за ответ! 🤝
      Речь о MikroTik LDF LTE6 kit (RBLDFR&R11e-LTE6)

    • @t0digital
      @t0digital  2 месяца назад

      нужная настройка это смена ttl, надо искать, есть ли такая возможность на этом устройстве, я не знаю

    • @motortillers
      @motortillers 2 месяца назад

      @@t0digital спасибо Вам🤝

  • @vitaliedercaci8117
    @vitaliedercaci8117 11 часов назад

    Can you do a video and recommend us some books? thank's!

  • @user-zg8ij3kt1h
    @user-zg8ij3kt1h 2 месяца назад

    Может я не внимательно смотрел. Получается, что сгенерированный ssh-ключ одинаков для root и www?

  • @itMasXteR
    @itMasXteR 2 месяца назад +1

    Подскажите, а в чем смысл создавать юзера для использования вместо root и тут же давать ему доступ к sudo?
    От чего таким образом мы защищаемся?

    • @t0digital
      @t0digital  2 месяца назад

      Рутом мы можем зайти и случайно сделать непоправимое для системы. Простым пользователем случайно сделать непоправимое для системы не получится, так как явно надо будет добавить sudo и ввести пароль от текущего пользователя. Также каждый юзер с sudo вводит свой пароль, никакой пароль на root не шарится между группой пользователей, это безопаснее. К тому же этим можно гибко управлять, давать пользователям sudo-права, забирать их, ведётся логирование попыток получить sudo-права конкретными пользователями и тд.

    • @itMasXteR
      @itMasXteR 2 месяца назад

      ​@@t0digital Дело в том что если мы даем sudo пользователю, то этот пользователь может изменить пароль root пользователю и войти уже через него. А если мы привыкаем вводить команды через sudo на сервере, то нет особой разницы сделаем мы непоправимое из под root или через нашего пользователя с sudo.
      Поправьте меня, если я не прав.

    • @linxuil633
      @linxuil633 2 месяца назад +1

      ​@@itMasXteR - тут важно что вы отключив доступ по root извне - даете вторую степень свободы у своей защиты. Для того чтобы зайти на ваш сервер - вам сначала нужно понять к какому вообще юзеру нужно подбирать пароль. Поменяв порт - вы уже даете 1-2 часа на подбор порта злоумышленнику. Никто не будет сканировать 2 часа рандомный ip в интернете. Но если вы засветите порт или просто его отсканируют - как они узнают какой вообще пользователь кроме root (который мы отключили) есть на вашем серевере?

  • @jewgenijmoldawski3306
    @jewgenijmoldawski3306 2 месяца назад

    Сегодня практически нет необходимости открывать ssh-доступ через интернет. Для конфигурации есть другие способы, с помощью которых можно опять-таки открыть ssh, если очень понадобиться и потом его быстро закрыть.

  • @enotroma
    @enotroma 2 месяца назад +1

    я себе закрыл все порты кроме 80 и 443 на основном сервере, а для SSH завел дешевый VPS в той же локалке как впн и разрешил доступ к 22 порту основной машины только из внутренней сети. 1 - трафик шифрован по впн тоннелю, 2 - только зная айпи моего впн сервера-затычки можно что-то вообще пытаться, т.е. без перехвата моего трафика чтобы узнать айпи сервера-затычки попытки доступа к ssh имеют кпд 0)

  • @omg-go4vf
    @omg-go4vf 2 месяца назад

    Ох, зима на моем лице оставила такой же жирный след

  • @Vova21rus
    @Vova21rus Месяц назад

    Привет! У меня такой вопрос, все вроде бы настроил по инструкции, проверил, работает. Но после перезагрузки доступ к ssh пропал( В чем может быть причина?

    • @t0digital
      @t0digital  Месяц назад

      возможно правила iptables не сохранились. Они по умолчанию не сохраняются на постоянку.
      sudo apt install iptables-persistent
      sudo service netfilter-persistent save

    • @Vova21rus
      @Vova21rus Месяц назад

      @@t0digital Частично разобрался. Для восстановления ssh доступа пришлось отключать диск и лазить по файловой системе, удалять правило в iptables. В итоге выяснил, что тупо knockd не запускался "knockd[2460]: could not open eth0: eth0: That device is not up". Вот здесь теперь не понятно, почему это устройство отображается в ifconfig, и прописано в конфигах, но сервис knockd падает при старте

  • @user-ur9fs8cx4f
    @user-ur9fs8cx4f 2 месяца назад +1

    Спасибо.

  • @Randy131098
    @Randy131098 Месяц назад

    Также вопрос: почему мы на сервере перезапускаем ssh, а не sshd, после изменения конфига sshd?

    • @bak1necWWE
      @bak1necWWE Месяц назад

      ssh и sshd в убунте оба смотрят на sshd

  • @yjjx
    @yjjx 2 месяца назад

    Ну, тут вопрос о рисках, у меня vds простоял пол года без какой либо защиты, просто ssh по паролю без ключей(ну разве что вход от рута отключен) и… 0 заходов, 350 тысяч попыток авторизации

    • @t0digital
      @t0digital  2 месяца назад +1

      350 тыс попыток авторизации это несколько хуже, чем ноль. Зачем гонять трафик на свой сервер, занимать вычислительные ресурсы этим, ну и рисковать, разумеется. Мини-риск хуже, чем микро-риск, и значительно хуже, чем нано-риск:)

  • @harry-smith404
    @harry-smith404 2 месяца назад

    Для дополнительных извращений можно honeypot поднять еще

  • @ivanselyt
    @ivanselyt 2 месяца назад +1

    Можно узнать, какой смысл создавать пользователя и выключать авторизацию на сервере для root, ведь если хакер получит доступ к юзеру, он же из под него так же сможет спокойно запускать команды с sudo, разве нет?

    • @ivanselyt
      @ivanselyt 2 месяца назад

      а, тут еще добавляет сложность в том, что надо подобрать(угадать) имя пользователя для того, чтобы дальнейшие попытки перебора пароля и т.п. имели смысл?

    • @kalobyte
      @kalobyte 2 месяца назад

      @@ivanselyt подбирают пароль рута как дефолтного пользователя, потому что другие неизвестны
      бывают те, кто меняет конфиг ссх и разрешает вход для рута по сети
      на таких и рассчитаны переборы пароля

    • @ivanselyt
      @ivanselyt 2 месяца назад

      @@kalobyte ​ а нельзя убрать пароль у рута и сделать авторизацию под ним только с ssh ключом? А вообще как будто, если использовать port knocking, то он перекрывает все предыдущие защиты​ и смысл в них есть, только если каким то чудом смогут обойти port knocking

    • @kalobyte
      @kalobyte 2 месяца назад +1

      ​@@ivanselyt
      можно сделать вход под рутом с ключом без пароля
      стучалка по портам это просто дополнительная опция защиты и не только ссх
      например proxmox работает от рута и если пароль подберут через вебморду, то будет очень плохо
      поэтому можно так же закрыть порт 8006 и открывать его только по стуку

  • @bakla_zhan
    @bakla_zhan 2 месяца назад

    А если сервер находится за NAT, т.е. за роутером с внешним IP-адресом, тогда как можно защитить сервер?

  • @prozzy82
    @prozzy82 Месяц назад

    Недавно обнаружил, что у роутеров TP link активен ssh и об этом в официальной документации и мануалах ничего не сказано, и как ее выключить тоже не ясно. только на форуме нашел информацию что он активен для приложения Tether от TP-Link.

  • @ivanselyt
    @ivanselyt 2 месяца назад

    Я правильно понял, что при каждом новом входе на сервер нужно простукивать порты? Удобно конечно bash скрипт для этого запускать, но это нарушит безопасность, если этот скрипт в виде файла хранить на ноуте.

    • @t0digital
      @t0digital  2 месяца назад +1

      Каждый раз нужно простукивать, да

    • @kalobyte
      @kalobyte 2 месяца назад

      можеш написать скрип, который будет спрашивать порты

    • @mishuha
      @mishuha 2 месяца назад +1

      Можешь сделать линк на скрипт коннекта на флешку и носить этот "токен" отдельно.

  • @beremour
    @beremour 2 месяца назад

    надо для nftables... iptables чо-то не видно давно

  • @stupidcabbage
    @stupidcabbage 2 месяца назад +2

    не ну как бы первый!

  • @anonanon5146
    @anonanon5146 2 месяца назад +1

    еще надо fail2ban поставить, и настроить jail для sshd

  • @plkvp
    @plkvp 2 месяца назад

    У меня такая же кружка есть

  • @andrejaga3003
    @andrejaga3003 2 месяца назад

    А можно разные SSH-ключи хранить на USB-флешке, чтобы эта "ключница" всегда была с собой и чтобы можно было ею пользоваться с разных компьютеров?

    • @t0digital
      @t0digital  2 месяца назад

      Можно. Шифрованный том можно на флешке создать даже. На котором будут ключи

    • @andrejaga3003
      @andrejaga3003 2 месяца назад

      @@t0digital А не покажете, как это правильно сделать? Может, есть какие-то подводные камни? У меня в двух квартирах, на даче и на работе компьютеры, одна "ключница" сильно бы упростила жизнь. И можно вообще ключи копировать-перемещать в разные места? Нет там в зашифрованном ключе какой-нибудь привязки к конкретной машине, операционке и пр., которые зашифровываются при создании ключа?

    • @t0digital
      @t0digital  2 месяца назад

      В ключе привязки к машине нет, копировать можно. Ключи стоит защитить паролем, чтобы в случае утечки ключей не потерять доступ к серверу. А по поводу криптоконтейнера вариантов много, в какой-то степени даже запароленный zip-архив с ключами тоже может играть такую роль:) Или можно воспользоваться VeraCrypt контейнером

  • @user-ne4bd3ry1n
    @user-ne4bd3ry1n 2 месяца назад

    fail2ban недостаточно?

  • @user-hx1vo1yi4q
    @user-hx1vo1yi4q 19 дней назад

    Я тебя полюбил. Я не знаю сколько это стоит, но я тебя люблю. Спасибо.

  • @SuperDeadbeef
    @SuperDeadbeef 2 месяца назад

    Вот ты брат, растолстел. Привет из оракла.

    • @t0digital
      @t0digital  2 месяца назад

      О, Андрей, привет! Это всё длиннофокусный объетив, инфа сотка:)))

  • @Ant_S47
    @Ant_S47 2 месяца назад

    Чем больше что-то защищаем, оптимизируем и ускоряем тем круглее лицо)

  • @rosendo3219
    @rosendo3219 2 месяца назад

    был случай, дали айпишник сервака одноко, команда ping таймаутила но зато команда ssh успешно работала. как так то?

    • @t0digital
      @t0digital  2 месяца назад

      Ну вот в видео показано в конце, как сдавать так, чтобы сервер не пинговался, но впускал по ssh

    • @rosendo3219
      @rosendo3219 2 месяца назад

      @@t0digitalаааа ну да точно! а теперь живо в спорт зал толстяк! :)

    • @t0digital
      @t0digital  2 месяца назад

      @@rosendo3219 это миф, что зал для похцдения, похудение это питание, сон, спокойствие - ну и где-то там дальше в списке зал для ускорения метаболизма)