Чет девопсим
47 subscribers
29 photos
1 video
2 links
Там сям, туда сюда, девопс наносек
Download Telegram
Channel created
Channel photo updated
Вот-вот напишу первый пост, но это не точно…
Начало
В целом зачем этот канал - я до сих пор не определился, но думаю буду тут описывать какие-то штуки из своей работы, делиться опытом и всяким разным.
Вообще желание делиться чем-то новым для себя у меня пошло с рабочей wiki, которую я поднял по сути чисто для себя, чтобы стараться описывать там все проекты с которыми я работаю, там уже целые статьи выросли готовые к постингу на хабр, но хабр скатился и теперь там обсуждают темы в стиле "новая_нейронка_нейм убьет всю IT" или "Как я навайбкодил сервис который купили за 10ккк". Кстати, это не отменяет того, что я что-то напишу на хабре, надо же как-то аудиторию собирать, думаю и насру тоже чет хайпажорское.
В общем буду описывать свои будни и что-то техническое.
🎉2
SSH & SSH KEY
Поговорим немного о базовом функционале при аренде VDS/VPS. Понятное дело, что оставаться под рутовым юзером дурной тон, но опустим этот момент, я еще не сталкивался с проблемами в этом плане(надеюсь и не столкнусь).

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

1. Создаем ssh key:
ssh-keygen -t rsa -b 4096 -C "My server"

-t указывает на тип ключа, -b на его битность, а -С комментарий, полезно при большой кол-ве ключей, либо менять название файлика на осознанное.
Соглашаемся на стандартное расположение файла. Когда дело дойдет до "Enter passphrase" рекомендую указать парольную фразу для ключа. Впоследствии при подключении по ключу необходимо будет указать и парольную фразу, это защитит в случае утечки ключа. Вообще рекомендуется и тут ставить сложный пароль, но вы намучаетесь его запоминать. Думаю можно использовать сложный, если вы используете keepass или что-то подобное, чтобы быстро скопировать и вставить. Я стараюсь в этом плане не усложнять и генерирую/придумываю пароль ~10 символов. Типов ключей тоже масса, но это уже для отдельного поста, в целом RSA сейчас достаточно, можно еще использовать ED25519 он безопасней за счет схемы подписи на эллиптической кривой🥳.

2. Добавим .pub в authorized_keys файл. SSH служба считывает публичный ключ именно от туда, если не указан явно другой файл.
sudo cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys | sudo chmod 600 ~/.ssh/authorized_keys

Это команда отправляет вывод из id_rsa.pub в authorized_keys (если он не создан, то создаст файл) и назначает необходимые права, чтобы ключик работал без ошибок, если права не назначить, вы столкнетесь с проблемой безопасности, ssh откажется считывать его. Насчет прав в linux думаю тоже напишу небольшой гайд-подсказку.

3. Необходимо отредактировать конфиг файл ssh, чтобы включить авторизацию по ssh key.
sudo nano /etc/ssh/sshd_config

В файлике необходимо раскомментировать строку:
PubkeyAuthentication yes
и убрать авторизацию по паролю, сменив yes на no:
PasswordAuthentication no
Для поиска в nano воспользуйтесь хоткеем ctrl+w
После редактирования закрываем и сохраняем файлик используя ctrl+x, соглашаемся на внесение изменений нажимая Y, далее не изменяя имя файла нажимаем enter.

4. Копируем ssh ключ себе, моя основная ОС это Windows, в моем случае есть несколько способов, начнем с самого простого.
4.1 Выводим catом и вставляем в текстовый файл в винде
sudo cat ~/.ssh/id_rsa

копируем вывод в текстовый файл в windows и удаляем расширение .txt у файла. Переносим в папку .ssh
4.2 Воспользуемся winSCP, заходим на сервер и переносим файл в винду в .ssh

Теперь самое главное, чтобы не потерять доступ к серверу мы сперва убедимся что у нас есть доступ через kvm или remote console. В целом достаточно не закрывать текущее соединение, ибо перезапуск службы ssh не завершит нашу сессию.
5. Перезапускаем службу ssh:
sudo systemctl restart ssh.service

6. Проверяем соединение, если вы из под винды, то следующим образом, открываем второе соединение не закрывая первое:
ssh [email protected] -i C:\Users\Admin\.ssh/id_rsa

Еще для проверки, что мы точно убрали авторизацию по паролю попробуем пропустить парольную фразу, если вывод будет следующим, то все норм:
Permission denied (publickey).


Поздравляю, вы молодец! Теперь вам доступна более безопасная авторизация по ssh ключу!😏
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥3🔥1
ВЗЯЛ БАЗУ ВЫКАТИЛ, ЭТО ВСЕ ЗНАЮТ! 😠
Ничего, дальше о защите с помощью Fail2Ban...
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3❤‍🔥1
Я все это хаваю, у меня нет выбора. Впервые столкнулся что журналирование так много съедает
Ну я конечно на приколе был, когда сервис в прод выкатывал с log-level=9 по сути собирая дебаг инфу и не отключив дублирование журналов в systemd. Сейчас все в порядке, выдохнул)
Присматриваюсь сейчас к сервисам бэкапов PostgreSQL кластеров, понравился этот проект (https://pgbarman.org/), пока смотрю альтернативы. Прикольно что может лить бэкап на smb шару, а если еще лить на СХД с сжатием...
Кто-то работал с ним? Veam backup к сожалению не умеет работать с кластерами, как написано у них в доке Veeam Agent does not support high availability cluster configurations and replication setups of PostgreSQL servers.🤕
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Вау, спасибо https://t.iss.one/satontdev 🥰😍
Всем привет и спасибо! Хоть кто-то будет читать и возможно писать комментарии, а то я тут как шизофреник рассуждаю сам с собой))
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1