Pull to refresh
-13
0
Иван Темнохолмов @Darkholme

User

Send message

Опыты в домашней лаборатории: динамически обновляем записи приватной зоны DNS в OpenWRT

Level of difficultyMedium
Reading time20 min
Views2.4K

Моя домашняя лаборатория подключена к интернету через маршрутизатор с прошивкой OpenWRT. Развертывая локальный ACME сервер, я понял, что, независимо от применяемого типа валидации запросов, ACME должен найти в DNS полное доменное имя сервера, для которого запрошен сертификат.

В размышлениях, где же стоит хостить свою приватную DNS зону, меня озарило: «Но у нас уже есть дома DNS-сервер в OpenWRT. Наверняка можно удаленно обновлять записи в его локальной зоне».

TL;DR: В итоге пришлось поставить BIND
Total votes 5: ↑5 and ↓0+6
Comments0

Создаем свой VPN с защищенным от блокировок протоколом AmneziaWG, или WireGuard на максималках

Reading time4 min
Views155K


Всем привет! Возможно уже совсем скоро разные новостные и  IT-ресурсы будут подчищать информацию о способах обхода блокировок. А пока этого не случилось, запасаемся полезными гайдами и разворачиваем свои собственные VPN с защищенными от блокировок протоколами. Расскажу как это сделать, как изменилась Amnezia и как мы защитили WireGuard от блокировок.

Читать далее
Total votes 91: ↑89 and ↓2+111
Comments123

Плюсы и минусы FastAPI в 2023

Level of difficultyEasy
Reading time3 min
Views15K

Всем привет, меня зовут Абай. Я являюсь Back-End разработчиком в 13LAB.

После прочтения интересной статьи со сравнением NodeJS и FastAPI, у меня появилось желание высказать свое личное мнение об удобстве разработки бэкенда на Python и фреймворке FastAPI.

FastAPI - является легковесным асинхронным фреймворком для Python, который используют преимущественно для разработки API-сервисов. Фреймворк довольно молодой и существует всего лишь 5 лет. До 2021 года не имел большой популярности по сравнению с Flask и Django, но на данный момент уже стал намного востребованнее, что его стали использовать в МAANG компаниях, к примеру...

Читать далее
Total votes 14: ↑13 and ↓1+17
Comments23

Возвращаем 2007 год, или делаем Интернет без блокировок

Level of difficultyMedium
Reading time5 min
Views66K

Как известно, в 2007 году кроме того, что деревья были выше, а трава зеленей, еще и в Интернете не было особых ограничений - можно было открыть почти любой сайт и наслаждаться им. До ковровых блокировок Telegram оставалось ещё 10 лет... К сожалению, в наше время такой возможности уже нет. Причины тут всем известны, в частности, некоторые компании уже не предоставляют своих услуг в России.

Хорошо, что существует возможность в рамках домашней сети восстановить свободный Интернет таким, каким он был в 2007-м. Именно этим мы и займемся. Стоит отметить, что в 2007 году довольно часто можно было встретить подключения на скорости 64-128 Кб/с, а то и вовсе dial-up; Wi-Fi был редкостью, а мобильная связь - довольно дорогим удовольствием. Однако, эти особенности того времени мы постараемся не воспроизводить.

Представляю вашему вниманию Freeroute - простой маршрутизатор, который позволяет направлять трафик на разные шлюзы в зависимости от домена назначения. Free в названии, как водится, означает свободный, а не бесплатный.

Читать далее
Total votes 69: ↑65 and ↓4+76
Comments98

Как использовать HTTP заголовки для предупреждения уязвимостей

Reading time7 min
Views119K


Знаете ли вы, что в большинстве случаев уязвимость системы безопасности можно устранить добавив необходимые заголовки ответа?

Безопасность не менее важна, чем содержание или поисковая оптимизация сайта. Тысячи сайтов взламываются из-за ошибок в конфигурации или недостаточной защиты. Если вы владелец сайта или специалист по защите информации, и интересуетесь защитой сайта от кликджекинга, внедрения кода, уязвимостей MIME типов, XSS-атак и т.д., то данная инструкция будет вам полезна.

В этой статье я расскажу о разных заголовках HTTP для использования с различными веб-серверами, сетевой периферией или сетями доставки контента, чтобы повысить уровень защищенности сайта.
Читать дальше →
Total votes 39: ↑34 and ↓5+29
Comments28

Два в одном: как пользоваться Vim и Nano?

Reading time16 min
Views87K
Upd. 9.7.2017: обновлён раздел про vim. Спасибо вимерам за ценные дополнения.

Вступительное слово


Зачем нужна ещё одна, 1001я публикация на эту тему? Статей про vim и nano написано огромное количество, но как правило они касаются только одного из редакторов, либо представляют из себя общий обзор. Чтобы в одной были сжато описаны оба редактора, но при этом без углубления в дебри приведены все основные клавиши управления для полноценной работы, я не не нашёл. Поэтому, почитав найденные материалы, я начал их конспектировать, так и родилась эта статья.


Любой текстовый редактор можно освоить «методом тыка». Но только не vim.
Чем nano лучше vim?
Из nano можно выйти без reset'а! (с) Интернет


Изначально я не планировал писать об обоих редакторах, а хотел сделать краткую справку только по nano, но в процессе сбора информации накопились данные и по vim тоже. Тут я обнаружил, что Vim не так уж и страшен, если знать команды и концепцию его использования.

Читать дальше →
Total votes 46: ↑41 and ↓5+36
Comments199

Как делать бэкапы без проводов: restic + MinIO (S3)

Level of difficultyEasy
Reading time5 min
Views11K

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

Читать далее
Total votes 9: ↑9 and ↓0+9
Comments18

Быстрый старт с Zsh и Powerlevel10k: двигаемся к терминалу мечты

Level of difficultyMedium
Reading time11 min
Views19K

Привет, Хабр!

Меня зовут Рожнев Андрей, участник профессионального сообщества NTA.

Делюсь личным опытом по настройке терминала в Unix‑подобных ОС (macOS, Fedora, Ubuntu и так далее).

Когда я только залетал в отрасль софтверной разработки, первое, что меня напрягло — конечно же терминал и его неотвратимость. По итогу же оказалось, что терминал — это твой верный друг и соратник на тернистом, но таком интересном пути в мир IT. Один из вариантов полюбить терминал — потратить какое‑то время, немного разобраться в теме и настроить всё это дело под себя любимого.

Читать далее
Total votes 6: ↑3 and ↓30
Comments0

Lua: маленький язык, который смог

Level of difficultyEasy
Reading time6 min
Views50K

Lua — это, пожалуй, мой любимый "маленький язык", с низкой когнитивной нагрузкой и простотой в изучении и использовании. Он встроен во многое ПО, такое как Redis, NGINX через OpenResty и Wireshark (прим. перевод.: и многое другое). Он также используется в качестве скриптового языка в таких играх, как World of Warcraft и Roblox через Luau (прим. перевод.: и многих других). Этот пост — краткое признание в любви языку с некоторыми примерами того, почему он мне так нравится.

Читать далее
Total votes 33: ↑30 and ↓3+30
Comments70

Пишем на Python, как будто это Rust

Reading time19 min
Views10K

Я начал программировать Rust несколько лет назад, и эта работа постепенно позволила мне изменить подход к проектированию программ и на других языках. В особенности заметен этот эффект был на Python. Прежде, чем я приступил к использованию Rust, я обычно писал код Python в очень динамичном стиле со свободной типизацией, без подсказок типов. Я повсюду передавал и возвращал словари, от случая к случаю прибегая к интерфейсам со «строковой типизацией». Правда, ощутив на себе всю строгость системы типов Rust и познакомившись со всеми теми проблемами, которые Rust решает «по природе», я вдруг сильно разволновался, когда пришлось вернуться к Python, и оказалось, что там и близко нет таких гарантий, как в Rust.

Читать далее
Total votes 24: ↑20 and ↓4+20
Comments17

Как начать понимать на слух английский? Подружиться с умными колонками

Reading time6 min
Views18K
На Хабре было много статей о том, как выучить английский язык. Это — еще одна, однако здесь будут именно лайфхаки для того, чтобы прокачать навык понимания на слух, или аудирования. Причем мой подход претендует на уникальность в рамках Хабра. Навык аудирования исторически очень плохо развит в СНГ, но всё ускоряющаяся глобализация приводит к тому, что он становится понемногу востребован даже среди технических специалистов, от которых раньше требовалось «уровень английского: чтение технической документации».



Я решил, что единственный вариант достичь желаемого — избавиться от постоянного чтения, а для этого нужно отказаться от графического интерфейса, оставив только восприятие на слух, и в этом нам помогут умные колонки. Что можно делать с ними, и как с их помощью прокачать навык аудирования — под катом.
Читать дальше →
Total votes 7: ↑6 and ↓1+10
Comments25

Производительность и стабильность Knime на слабых компьютерах

Reading time9 min
Views2.6K

Наступают времена, когда офисному сотруднику недостаточно знать Word и Excel в качестве минимального обязательного базиса программных продуктов. No‑code/Low‑code платформы и продукты — вот что незаметно становится обязательным для владения каждым. Эти платформы есть самый быстрый на сегодня способ без изучения языков программирования овладеть навыками использования искусственного интеллекта, машинного обучения, анализа big data, причём очень бигдата — на сотни миллионов строк.

Платформа Knime — один из таких инструментов. На первый взгляд это улучшенный Excel+BI. Но, когда посмотришь поглубже его возможности, то, очевидно — это обязательный инструмент будущего, по крайней мере для тех кто не являясь программистом хочет получить навыки как у программиста. Для простоты — Knime это «графическое» программирование. Берёшь квадратики, размещаешь в виде бизнес‑процесса, соединяешь их между собой и оп! — уже провёл анализ маркетингового плана или парсинг сайтов конкурентов или анализ рекламных текстов с помощью NLP. Или, даже строишь приборную доску управления производственного предприятия будучи простым менеджером/инженером. Или ведёшь обработку научных данных.

Knime позволяет, конечно, и код писать, причём на трёх языках Python, Java, R, но это не обязательно. Бизнес‑процессы знаешь, рисуешь? Вперёд!

Разумеется, при работе с огромными массивами данных, требования к компьютерным ресурсам возрастают. И что делать, если вам доступен простенький офисный или домашний компьютер? Или, если вы видите что аренда облачного ресурса на месяц дороже, чем купить компьютер с 64Гб оперативной памяти и процессором гоняющим Atomic Heart или Hogwartz Legacy на среднемалках?

Читать далее
Total votes 4: ↑2 and ↓2+1
Comments6

Information

Rating
Does not participate
Location
Украина
Registered
Activity