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

Мой курс «Хардкорная веб-разработка» - 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...

Пікірлер: 291

  • @t0digital
    @t0digital3 ай бұрын

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

  • @ivanselyt

    @ivanselyt

    3 ай бұрын

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

  • @t0digital

    @t0digital

    3 ай бұрын

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

  • @Stalone13

    @Stalone13

    2 ай бұрын

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

  • @t0digital

    @t0digital

    2 ай бұрын

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

  • @Stalone13

    @Stalone13

    2 ай бұрын

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

  • @user-zj3ih2ux5e
    @user-zj3ih2ux5e3 ай бұрын

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

  • @MakarenkoSasha

    @MakarenkoSasha

    3 ай бұрын

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

  • @user-vk4si1oz7w

    @user-vk4si1oz7w

    3 ай бұрын

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

  • @user-zj3ih2ux5e

    @user-zj3ih2ux5e

    3 ай бұрын

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

  • @saintkredo7673

    @saintkredo7673

    3 ай бұрын

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

  • @django8196

    @django8196

    Ай бұрын

    В яблочко😀

  • @kirillzh4798
    @kirillzh47983 ай бұрын

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

  • @kirsanov2008

    @kirsanov2008

    3 ай бұрын

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

  • @t0digital

    @t0digital

    3 ай бұрын

    ​@@kirsanov2008двойню!

  • @user-yy6dx1wj9r

    @user-yy6dx1wj9r

    3 ай бұрын

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

  • @vladislavske
    @vladislavske3 ай бұрын

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

  • @t0digital

    @t0digital

    3 ай бұрын

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

  • @lexor64
    @lexor643 ай бұрын

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

  • @user-zj3ih2ux5e
    @user-zj3ih2ux5e3 ай бұрын

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

  • @DrakoshaSStas

    @DrakoshaSStas

    3 ай бұрын

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

  • @bokoter
    @bokoter3 ай бұрын

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

  • @user-nn5oj7jl4w
    @user-nn5oj7jl4w3 ай бұрын

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

  • @user-yl6tx2jy2i
    @user-yl6tx2jy2i3 ай бұрын

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

  • @NatureFitSport
    @NatureFitSport3 ай бұрын

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

  • @user-fc8ut9mx6x
    @user-fc8ut9mx6x3 ай бұрын

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

  • @Vjidowkdkcpapqkfjfw
    @Vjidowkdkcpapqkfjfw3 ай бұрын

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

  • @t0digital

    @t0digital

    3 ай бұрын

    на завтрак!

  • @temcodes

    @temcodes

    3 ай бұрын

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

  • @tihon4979

    @tihon4979

    3 ай бұрын

    Лол 😂

  • @dmitriiovsiannikov9605

    @dmitriiovsiannikov9605

    3 ай бұрын

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

  • @user-pl9ek9du8p

    @user-pl9ek9du8p

    3 ай бұрын

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

  • @pid625
    @pid6253 ай бұрын

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

  • @great_kombinator

    @great_kombinator

    3 ай бұрын

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

  • @NatureFitSport
    @NatureFitSport3 ай бұрын

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

  • @user-lc8dw6qu7r
    @user-lc8dw6qu7r3 ай бұрын

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

  • @user-vito-kuk
    @user-vito-kuk3 ай бұрын

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

  • @pokupki29

    @pokupki29

    3 ай бұрын

    Красава

  • @lexxandr9349

    @lexxandr9349

    Ай бұрын

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

  • @user-vito-kuk

    @user-vito-kuk

    Ай бұрын

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

  • @MrVernuk
    @MrVernuk3 ай бұрын

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

  • @sammak3961
    @sammak39613 ай бұрын

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

  • @TimurDE
    @TimurDE3 ай бұрын

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

  • @goodvinsk8
    @goodvinsk83 ай бұрын

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

  • @user-jp1hx7db2t
    @user-jp1hx7db2t3 ай бұрын

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

  • @null_day
    @null_day3 ай бұрын

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

  • @ozodsaidov7427
    @ozodsaidov7427Ай бұрын

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

  • @funkytapir
    @funkytapir3 ай бұрын

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

  • @alexwar6821
    @alexwar682127 күн бұрын

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

  • @markostr
    @markostr3 ай бұрын

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

  • @user-vg5fu2ed6x
    @user-vg5fu2ed6x3 ай бұрын

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

  • @st7dot
    @st7dot3 ай бұрын

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

  • @benjaminshtark5977
    @benjaminshtark59773 ай бұрын

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

  • @zatochiSiberian
    @zatochiSiberian3 ай бұрын

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

  • @Randy131098
    @Randy1310982 ай бұрын

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

  • @tihon4979
    @tihon49793 ай бұрын

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

  • @dev-workshop
    @dev-workshop3 ай бұрын

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

  • @Sanek060782
    @Sanek0607823 ай бұрын

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

  • @user-ww3fv8nw9s
    @user-ww3fv8nw9s3 ай бұрын

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

  • @t0digital

    @t0digital

    3 ай бұрын

    Спасибо!

  • @honsour72
    @honsour723 ай бұрын

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

  • @NESTOWL
    @NESTOWL3 ай бұрын

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

  • @NESTOWL

    @NESTOWL

    2 ай бұрын

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

  • @rabotavsem_biz
    @rabotavsem_biz3 ай бұрын

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

  • @konstantinselivanov8513

    @konstantinselivanov8513

    3 ай бұрын

    Обнови /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 (замени порты на свои)

  • @sedelnikovsergey
    @sedelnikovsergey3 ай бұрын

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

  • @user-vi2fp6dl7b
    @user-vi2fp6dl7b2 ай бұрын

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

  • @jenykoo
    @jenykoo3 ай бұрын

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

  • @SWS-LINK
    @SWS-LINK3 ай бұрын

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

  • @user-wj7mr2rt1r
    @user-wj7mr2rt1r3 ай бұрын

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

  • @serenitiSever
    @serenitiSever3 ай бұрын

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

  • @Max-Sparrow
    @Max-Sparrow26 күн бұрын

    Написать демон, который будет следить за демоном =D а за тем демоном другой демон, который будет следить за этими двумя, а второй и за третьим тоже ) Ещё в алгоритм стука можно включить открытие не SSH порта (возможно тоже динамически меняющегося), в который будет происходить соединение клиентского скрипта до серверного, да с обменом ключами с нестандартным хитровывернутым алгоритмом (а лучше в сочетании), при успешности которого уже потом будет открываться SSH порт. Чем больше нестандартных решений, тем меньше шансов взлома.

  • @akiro3522
    @akiro35223 ай бұрын

    Ура, видосик

  • @oleg-medovikov
    @oleg-medovikov3 ай бұрын

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

  • @fantasy3469
    @fantasy34692 ай бұрын

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

  • @gnompirogov9259
    @gnompirogov92593 ай бұрын

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

  • @bakla_zhan
    @bakla_zhan3 ай бұрын

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

  • @t0digital

    @t0digital

    3 ай бұрын

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

  • @user-vu9tz9zu3w
    @user-vu9tz9zu3w3 ай бұрын

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

  • @SuperEuro
    @SuperEuro3 ай бұрын

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

  • @LazerShrk
    @LazerShrk3 ай бұрын

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

  • @slmuim9745
    @slmuim97453 ай бұрын

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

  • @__username__

    @__username__

    3 ай бұрын

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

  • @ivanselyt
    @ivanselyt3 ай бұрын

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

  • @LinuxbyDmitry
    @LinuxbyDmitry3 ай бұрын

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

  • @mishuha
    @mishuha3 ай бұрын

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

  • @osada96
    @osada963 ай бұрын

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

  • @ruslan_swd
    @ruslan_swd3 ай бұрын

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

  • @omg-go4vf
    @omg-go4vf3 ай бұрын

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

  • @dmitrykuksenok9308
    @dmitrykuksenok93083 ай бұрын

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

  • @DrakoshaSStas

    @DrakoshaSStas

    3 ай бұрын

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

  • @vasya_pipkin

    @vasya_pipkin

    3 ай бұрын

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

  • @mew6085
    @mew60853 ай бұрын

    Круто

  • @zigf
    @zigf3 ай бұрын

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

  • @sikelmon
    @sikelmon3 ай бұрын

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

  • @t0digital

    @t0digital

    3 ай бұрын

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

  • @extremecodegovno6306
    @extremecodegovno63063 ай бұрын

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

  • @sergeyn5504
    @sergeyn55043 ай бұрын

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

  • @DrakoshaSStas

    @DrakoshaSStas

    3 ай бұрын

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

  • @user-eq8ou5gi4h
    @user-eq8ou5gi4h3 ай бұрын

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

  • @Ihor33ss

    @Ihor33ss

    3 ай бұрын

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

  • @user-eq8ou5gi4h

    @user-eq8ou5gi4h

    3 ай бұрын

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

  • @kalobyte

    @kalobyte

    3 ай бұрын

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

  • @user-zg8ij3kt1h
    @user-zg8ij3kt1h3 ай бұрын

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

  • @san_cristobal
    @san_cristobal2 ай бұрын

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

  • @bakla_zhan
    @bakla_zhan3 ай бұрын

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

  • @enotroma
    @enotroma3 ай бұрын

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

  • @itMasXteR
    @itMasXteR3 ай бұрын

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

  • @t0digital

    @t0digital

    3 ай бұрын

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

  • @itMasXteR

    @itMasXteR

    3 ай бұрын

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

  • @linxuil633

    @linxuil633

    3 ай бұрын

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

  • @madmax2872
    @madmax2872Күн бұрын

    класс , дико извиняюсь линукс пока не использую на какой сбори линукс такое SSH реализуемо и возможно ли на винде?

  • @t0digital

    @t0digital

    Күн бұрын

    Я говорю о сервере на Linux. Если сервер на Windows - настройка будет какая-то другая вероятно, не работал с серверами на Windows.

  • @Stalone13
    @Stalone132 ай бұрын

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

  • @t0digital

    @t0digital

    2 ай бұрын

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

  • @Stalone13

    @Stalone13

    2 ай бұрын

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

  • @Randy131098
    @Randy1310982 ай бұрын

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

  • @bak1necWWE

    @bak1necWWE

    2 ай бұрын

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

  • @laushkin1
    @laushkin12 ай бұрын

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

  • @yjjx
    @yjjx3 ай бұрын

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

  • @t0digital

    @t0digital

    3 ай бұрын

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

  • @disasstor
    @disasstor3 ай бұрын

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

  • @Ihor33ss

    @Ihor33ss

    3 ай бұрын

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

  • @invilso4051

    @invilso4051

    3 ай бұрын

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

  • @Ihor33ss

    @Ihor33ss

    3 ай бұрын

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

  • @user-lv1ft6nw6u

    @user-lv1ft6nw6u

    3 ай бұрын

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

  • @Ihor33ss

    @Ihor33ss

    3 ай бұрын

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

  • @asura963
    @asura9632 ай бұрын

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

  • @t0digital

    @t0digital

    2 ай бұрын

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

  • @asura963

    @asura963

    2 ай бұрын

    @@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

    2 ай бұрын

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

  • @ZlobniyTapoG
    @ZlobniyTapoG3 ай бұрын

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

  • @mishuha

    @mishuha

    3 ай бұрын

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

  • @vitaliedercaci8117
    @vitaliedercaci811727 күн бұрын

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

  • @Vova21rus
    @Vova21rus2 ай бұрын

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

  • @t0digital

    @t0digital

    2 ай бұрын

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

  • @Vova21rus

    @Vova21rus

    2 ай бұрын

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

  • @motortillers
    @motortillers3 ай бұрын

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

  • @t0digital

    @t0digital

    3 ай бұрын

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

  • @motortillers

    @motortillers

    3 ай бұрын

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

  • @t0digital

    @t0digital

    3 ай бұрын

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

  • @motortillers

    @motortillers

    3 ай бұрын

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

  • @jewgenijmoldawski3306
    @jewgenijmoldawski33063 ай бұрын

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

  • @ivanselyt
    @ivanselyt3 ай бұрын

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

  • @ivanselyt

    @ivanselyt

    3 ай бұрын

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

  • @kalobyte

    @kalobyte

    3 ай бұрын

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

  • @ivanselyt

    @ivanselyt

    3 ай бұрын

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

  • @kalobyte

    @kalobyte

    3 ай бұрын

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

  • @prozzy82
    @prozzy822 ай бұрын

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

  • @Max-Sparrow
    @Max-Sparrow26 күн бұрын

    Было дело запретил я доступ по паролю и настроил доступ по ключам. Однако спустя пару дней обнаружил в логах брутфорс пароля. Попытался подключиться с паролем, SSH-сервер меня сразу посылает и даже в лог ничего не пишет. По всякому пытался, но не получилось повторить то, что делает чей-то бот. В итоге написал хитрый скрипт шифрованием в комбинации с нестандартными приёмами, открывающий порт для клиентского IP на время.

  • @andrejaga3003
    @andrejaga30033 ай бұрын

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

  • @t0digital

    @t0digital

    3 ай бұрын

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

  • @andrejaga3003

    @andrejaga3003

    3 ай бұрын

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

  • @t0digital

    @t0digital

    3 ай бұрын

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

  • @harry-smith404
    @harry-smith4043 ай бұрын

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

  • @plkvp
    @plkvp3 ай бұрын

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

  • @user-ne4bd3ry1n
    @user-ne4bd3ry1n3 ай бұрын

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

  • @anonanon5146
    @anonanon51463 ай бұрын

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

  • @Lexx-pz9mk
    @Lexx-pz9mk3 ай бұрын

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

  • @beremour
    @beremour3 ай бұрын

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

  • @user-uk8zu8fz7w
    @user-uk8zu8fz7w2 ай бұрын

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

  • @t0digital

    @t0digital

    2 ай бұрын

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

  • @user-uk8zu8fz7w

    @user-uk8zu8fz7w

    2 ай бұрын

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

  • @ivanselyt
    @ivanselyt3 ай бұрын

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

  • @t0digital

    @t0digital

    3 ай бұрын

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

  • @kalobyte

    @kalobyte

    3 ай бұрын

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

  • @mishuha

    @mishuha

    3 ай бұрын

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

  • @Ant_S47
    @Ant_S473 ай бұрын

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

  • @stupidcabbage
    @stupidcabbage3 ай бұрын

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

  • @t0digital

    @t0digital

    3 ай бұрын

    That's success!

  • @user-ur9fs8cx4f
    @user-ur9fs8cx4f3 ай бұрын

    Спасибо.

  • @rosendo3219
    @rosendo32193 ай бұрын

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

  • @t0digital

    @t0digital

    3 ай бұрын

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

  • @rosendo3219

    @rosendo3219

    3 ай бұрын

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

  • @t0digital

    @t0digital

    3 ай бұрын

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

Келесі