В прошлом посте мы с тобой перелопалити приоритеты чтения sshd_config, сегодня добъем нюансы. Меня вчера опередили в комментариях с Match, но не страшно.
Сюда по классике не влезло, много буков, поэтому всё в блоге.
Читать продолжение: https://two.su/atcbh
🛠 #linux #devops
—
💬 Bashdays 📲 MAX 🌐 LF 🔵 Blog
Сюда по классике не влезло, много буков, поэтому всё в блоге.
Читать продолжение: https://two.su/atcbh
—
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Selectel
Команды для спасения вечера сисадмина 💯
После 17:00 — самое подходящее время для срочных задач.
Сохраните заранее подборку консольных команд, чтобы сэкономить часы рутины. Собрали для вас самое нужное вместе с Романом Шубиным, СТО и автором канала Bash Days.
❤️ — если было полезно.
После 17:00 — самое подходящее время для срочных задач.
Сохраните заранее подборку консольных команд, чтобы сэкономить часы рутины. Собрали для вас самое нужное вместе с Романом Шубиным, СТО и автором канала Bash Days.
❤️ — если было полезно.
2 77
Здрасти, я тут собрал вместе с командой Selectel небольшую шпаргалку для случаев, когда нужно быстро проверить пачку адресов, сравнить конфиги на серверах или понять, куда опять делось место. Короче команды на каждый день, как ты любишь.
У ребят сейчас идет неделя сисадмина. Каждый день будут выходить полезные материалы, так что советую заглядывать и мотать на ус, глядишь сгодится в деле.
А в пятницу вас ждет еще один небольшой и вкусный материал, так что следи за новостями.
Please open Telegram to view this post
VIEW IN TELEGRAM
Заберите девопса из РЖД, пока он там не автоматизировал вообще всё 🙃
Три года работает с живой инфраструктурой, в его хозяйстве около 300 серверов, кубер на 250+ подов, критичные системы и объекты КИИ. С отличием окончил Linux Factory.
Умеет в ансибл, баш, кубер, ArgoCD, Helm, гитлаб, докер, мониторинг и отказоустойчивый PostgreSQL.
Из интересного
• перевёл все линуксовые серверы на управление через ансибл
• сократил ввод нового серверного комплекса до 10 минут
• мигрировал критичные системы между ЦОД
• настроил автоматический failover PostgreSQL
Ему можно отдавать не только ямлики, но и прод. Умеет искать причины проблем, автоматизировать рутину и думает про отказоустойчивость.
Ищет удалёнку или гибрид в Санкт-Петербурге.
Пиши сюда: @mchernishovv
🛠 #биржатруда
—
💬 Bashdays 📲 MAX 🌐 LF 🔵 Blog
Три года работает с живой инфраструктурой, в его хозяйстве около 300 серверов, кубер на 250+ подов, критичные системы и объекты КИИ. С отличием окончил Linux Factory.
Умеет в ансибл, баш, кубер, ArgoCD, Helm, гитлаб, докер, мониторинг и отказоустойчивый PostgreSQL.
Из интересного
• перевёл все линуксовые серверы на управление через ансибл
• сократил ввод нового серверного комплекса до 10 минут
• мигрировал критичные системы между ЦОД
• настроил автоматический failover PostgreSQL
Ему можно отдавать не только ямлики, но и прод. Умеет искать причины проблем, автоматизировать рутину и думает про отказоустойчивость.
Ищет удалёнку или гибрид в Санкт-Петербурге.
Пиши сюда: @mchernishovv
—
Please open Telegram to view this post
VIEW IN TELEGRAM
Тут ёбнутая тема пошла, чтобы вы могли ходить на нашу апиху, нужно установить сертификаты от Минцифры.
ㅤ
Я долго это игнорил, пока всё к херам не сломалось.
Да, в голову сразу пришло решение — ёбнуть SSL Ignore. Но это костыль и безопасники в жопу выебут.
Хули, пришлось разбираться. Как оказалось Angie и nginx трогать не надо и всё решается на уровне дистрибутива. У меня убунты старенькие торчат в продах, поэтому затачивал под них. Но смысл не меняется и можешь подкрутить под свои дистрибутивы.
Чтобы 100500 команд не вводить, сделал всё одной командой, запускаешь из консольки и всё сразу работает, без костылей и нападок на твой задний проход со стороны ИБешкников. Даже в скрипт сохранять не нужно.
Установка РФ-сертификатов:
Ну и всё, если в куче мусора увидел —
Такие дела. Изучай.
🛠 #devops #security #bash
—
💬 Bashdays 📲 MAX 🌐 LF 🔵 Blog
ㅤ
Я долго это игнорил, пока всё к херам не сломалось.
Ошибка: cURL: SSL certificate problem: self-signed certificate in certificate chain
Да, в голову сразу пришло решение — ёбнуть SSL Ignore. Но это костыль и безопасники в жопу выебут.
Хули, пришлось разбираться. Как оказалось Angie и nginx трогать не надо и всё решается на уровне дистрибутива. У меня убунты старенькие торчат в продах, поэтому затачивал под них. Но смысл не меняется и можешь подкрутить под свои дистрибутивы.
Чтобы 100500 команд не вводить, сделал всё одной командой, запускаешь из консольки и всё сразу работает, без костылей и нападок на твой задний проход со стороны ИБешкников. Даже в скрипт сохранять не нужно.
Установка РФ-сертификатов:
(
set -e
cert_tmp="$(mktemp -d)"
trap 'rm -rf "$cert_tmp"' EXIT
curl -fsSL \
https://gu-st.ru/content/Other/doc/russian_trusted_root_ca.cer \
-o "$cert_tmp/root.crt"
curl -fsSL \
https://gu-st.ru/content/Other/doc/russian_trusted_sub_ca.cer \
-o "$cert_tmp/sub.crt"
openssl x509 -in "$cert_tmp/root.crt" -noout -subject |
grep -Fq "Russian Trusted Root CA"
openssl x509 -in "$cert_tmp/sub.crt" -noout -subject |
grep -Fq "Russian Trusted Sub CA"
root_fingerprint="$(
openssl x509 -in "$cert_tmp/root.crt" -noout -fingerprint -sha1 |
cut -d= -f2 |
tr -d ':'
)"
test "$root_fingerprint" = "8FF915CCAB7BC16F8C5C8099D53E0E115B3AEC2F"
openssl verify \
-CAfile "$cert_tmp/root.crt" \
"$cert_tmp/sub.crt"
install -m 0644 "$cert_tmp/root.crt" \
/usr/local/share/ca-certificates/russian_trusted_root_ca.crt
install -m 0644 "$cert_tmp/sub.crt" \
/usr/local/share/ca-certificates/russian_trusted_sub_ca.crt
update-ca-certificates
curl -fsSvo /dev/null https://business.t-bank-app.ru/
)
Ну и всё, если в куче мусора увидел —
SSL certificate verify ok, значит всё прошло успешно. Перезапускаешь свои пыхи или чё там у тебя и можно дальше не париться.Такие дела. Изучай.
—
Please open Telegram to view this post
VIEW IN TELEGRAM
3 89
Всем привет. Вчера решал задачу фильтрации txt-файла и нашёл конструкцию на awk, от которой испытал эстетический оргазм. Решил с вами ею поделиться.
Итак, задача: есть _data.txt_ с данными и _filter.txt_ со списком фильтрации.
Строки
ㅤ
И да, я знаю про программы comm и join, с помощью которых можно решать подобные вещи, но мне нравится awk, потому что делает это гибче благодаря наличию языка программирования и не требует предсортировки.
👍 Итак, сама конструкция:
Обратите внимание: здесь два блока обработки строк, каждый со своим условием
1.
2.
Обычно выполняются оба блока: сначала первый, потом второй, но здесь это не так. Первый блок только считывает данные
Второй обрабатывает только те строки, которые есть в массиве.
Таким образом, связка условия
Для второго файла условие
Ну и пример из реальной жизни —
Обратите внимание: на выходе только нужные строки и только нужный столбец. Как же это круто!
Маленькое ограничение: содержимое
man awk
man comm
man join
Всем работы без багов.
© Tagd Tagd
🛠 #devops #bash #linux
—
💬 Bashdays 📲 MAX 🌐 LF 🔵 Blog
Итак, задача: есть _data.txt_ с данными и _filter.txt_ со списком фильтрации.
Строки
data.txt обрабатываются, если есть совпадение в filter.txt. Это классическая задача фильтрации (например, обработка белых и чёрных списков). ㅤ
И да, я знаю про программы comm и join, с помощью которых можно решать подобные вещи, но мне нравится awk, потому что делает это гибче благодаря наличию языка программирования и не требует предсортировки.
👍 Итак, сама конструкция:
awk 'NR == FNR { filter[$0] = 1; next } $0 in filter { print $0, "in filter" }' filter.txt data.txtОбратите внимание: здесь два блока обработки строк, каждый со своим условием
1.
NR == FNR { filter[$0] = 1; next }2.
$0 in filter { print $0, "in filter" }Обычно выполняются оба блока: сначала первый, потом второй, но здесь это не так. Первый блок только считывает данные
filter.txt в массив filter. Второй обрабатывает только те строки, которые есть в массиве.
NR — встроенная переменная, номер записи ДЛЯ ВСЕХ файлов. FNR — аналогична предыдущей, но начинается с 1 для каждого нового файла. filter[$0] = 1 — сохраняем всю строку первого файла как ключ массива. next — сразу переходит к обработке следующей строки. Таким образом, связка условия
NR == FNR и next будет работать только для первого файла (filter.txt).Для второго файла условие
NR == FNR уже не соблюдается, поэтому первый блок не выполняется, а второй выполняется, если строка данных присутствует в массиве filter. Ну и пример из реальной жизни —
filter.txt: RU
BY
data.txt RU 127.0.0.1
BY 127.0.0.2
US 127.0.0.3
KZ 127.0.0.4
awk 'NR == FNR { filter[$1] = 1; next } $1 in filter { print $2, "in filter" }' filter.txt data.txt
127.0.0.1 in filter
127.0.0.2 in filterОбратите внимание: на выходе только нужные строки и только нужный столбец. Как же это круто!
Маленькое ограничение: содержимое
filter.txt, загруженное в массив filter, должно помещаться в оперативную память. Иначе система может начать активно использовать swap, а процесс — завершиться из-за нехватки памяти. man awk
man comm
man join
Всем работы без багов.
© Tagd Tagd
—
Please open Telegram to view this post
VIEW IN TELEGRAM
Я начал практиковать собесы с закрытыми глазами.
Соль тут в том, что глаза закрывает кандидат. Естественно сразу большая часть кандидатов отваливается. Причины — кошка в камеру хуёв напихала, глаза не закрываются с рождения и т.п.
Но мы то знаем правду… 90% сидят на ИИшке и зачитывают ответы, это блядь просто смешно выглядит. Сначала кандидат выслушивает вопрос, потом 3 минуты начинает мычать вообще не по теме. А потом чудесным образом приходит в себя и начинает выдавать правильные ответы, что аж от языка отлетает.
На прошлой неделе я это сразу просек, попросил закрыть человека глаза и повторить ответ который он только что мне зачитал. Сука… он даже не запомнил, что прочитал. Подвели писю к носу. И что интересно, он не признался, что читал с экрана. Ну да хуй с ним.
Мир изменился, поэтому приходится придумывать новые фильтры. На любого хитрожопого, найдется более хитрожопый.
Суть тут не заставить человека страдать, а до собеса отсеять пидарасов, которые думают, что они умнее других и занимают чужие места.
Если человек заранее соглашается на собес с закрытыми глазами, то тут всё ясно, либо он будет говорить правду, либо это очередной хитрожопый, который придумал способ передачи информации через анальный зонд.
Смешно, но скоро так и будет — засунул себе поглубже и мозг наполняется нейросетевыми высерами.
Короче мозги не еби, будь честен, прозрачен, можешь припизднуть конечно, но всегда знай меру и балансируй по ситуации. Тыж головастый.
🛠 #workflow
—
💬 Bashdays 📲 MAX 🌐 LF 🔵 Blog
Соль тут в том, что глаза закрывает кандидат. Естественно сразу большая часть кандидатов отваливается. Причины — кошка в камеру хуёв напихала, глаза не закрываются с рождения и т.п.
Но мы то знаем правду… 90% сидят на ИИшке и зачитывают ответы, это блядь просто смешно выглядит. Сначала кандидат выслушивает вопрос, потом 3 минуты начинает мычать вообще не по теме. А потом чудесным образом приходит в себя и начинает выдавать правильные ответы, что аж от языка отлетает.
На прошлой неделе я это сразу просек, попросил закрыть человека глаза и повторить ответ который он только что мне зачитал. Сука… он даже не запомнил, что прочитал. Подвели писю к носу. И что интересно, он не признался, что читал с экрана. Ну да хуй с ним.
Мир изменился, поэтому приходится придумывать новые фильтры. На любого хитрожопого, найдется более хитрожопый.
Суть тут не заставить человека страдать, а до собеса отсеять пидарасов, которые думают, что они умнее других и занимают чужие места.
Если человек заранее соглашается на собес с закрытыми глазами, то тут всё ясно, либо он будет говорить правду, либо это очередной хитрожопый, который придумал способ передачи информации через анальный зонд.
Смешно, но скоро так и будет — засунул себе поглубже и мозг наполняется нейросетевыми высерами.
Короче мозги не еби, будь честен, прозрачен, можешь припизднуть конечно, но всегда знай меру и балансируй по ситуации. Тыж головастый.
—
Please open Telegram to view this post
VIEW IN TELEGRAM
1 127
Мёртвое ядро или мой новый проект DK.
Чё тянуть кота за яйца, интригу закину https://deadkernel.ru, полный анонс будет чуть позже…
Где-то там плачет грустныйхуй сервер, а у нас всё по взрослому.
Неси своё слово, делись с коллегами годнотой😻
Чё тянуть кота за яйца, интригу закину https://deadkernel.ru, полный анонс будет чуть позже…
Где-то там плачет грустный
Для студентов Linux Factory бонусы, но они и так уже про них знают и активно используют.
Неси своё слово, делись с коллегами годнотой
Please open Telegram to view this post
VIEW IN TELEGRAM
1 53
Forwarded from Selectel
💯 Команды для спасения вечера сисадмина. Часть 2
Какой день рождения Linux без серии консольных команд? Экономим часы рутины с подборкой от Романа Шубина, СТО и автора канала Bash Days.
Не забудьте поделиться находкой с коллегами!
Какой день рождения Linux без серии консольных команд? Экономим часы рутины с подборкой от Романа Шубина, СТО и автора канала Bash Days.
Не забудьте поделиться находкой с коллегами!