Pull to refresh
1
0
Send message

CIFS over SSH штатными средствами Windows 10

Reading time6 min
Views18K

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


Однажды потребовалось мне организовать доступ к серверу по протоколу SMB и в поиске решения я наткнулся на следующую статью: Mounting your Nikhef home directory using SSH for Windows 8. Это было простое и удобное решение, которое использовало Putty. Чуть позже мне пришлось настраивать это решение на другом компьютере и я понял, что Putty тут лишний с тех пор как в Windows 10 появился встроенный ssh-клиент на основе OpenSSH.


Под катом — идентичная схема, только с использованием OpenSSH под Windows 10.

Читать дальше →
Total votes 20: ↑20 and ↓0+20
Comments11

RC-лодка на ESP8266 NodeMCU

Reading time9 min
Views19K


Примерно полгода мне понадобилось, чтобы собрать такую лодку на дистанционном управлении.


Я расскажу про процесс разработки с самого начала: от лодки из потолочной плитки, гелевой ручки и консервной банки до модели из пластика, которую не стыдно подарить.


Если интересно, какие шишки мне пришлось набить, прошу под кат!


Осторожно! Под катом много картинок!
Total votes 66: ↑63 and ↓3+86
Comments50

Полноценный Kubernetes с нуля на Raspberry Pi

Reading time12 min
Views30K


Совсем недавно одна известная компания объявила, что переводит линейку своих ноутбуков на ARM-архитектуру. Услышав эту новость, я вспомнил: просматривая в очередной раз цены на EC2 в AWS, обратил внимание на Graviton'ы с очень вкусной ценой. Подвох, конечно же, был в том, что это ARM. Тогда мне и в голову не приходило, что ARM — это довольно серьезно…

Для меня эта архитектура всегда была уделом мобильных и прочих IoT-штучек. «Настоящие» серверы на ARM — как-то необычно, в чем-то даже дико… Однако новая мысль засела в голову, поэтому в один из выходных решил проверить, что вообще можно сегодня запустить на ARM. И для этого решил начать с близкого и родного — кластера Kubernetes. Причем не просто какого-то условного «кластера», а всё «по-взрослому», чтобы он был максимально таким же, каким я привык его видеть в production.

По моей задумке, кластер должен быть доступным из интернета, в нём должно выполняться некоторое веб-приложение и еще должен быть как минимум мониторинг. Для реализации этой идеи понадобится пара (или больше) Raspberry Pi не ниже модели 3B+. Площадкой для экспериментов могла бы стать и AWS, но мне были интересны именно «малины» (которые всё равно стояли без дела). Итак, мы развернём на них кластер Kubernetes с Ingress, Prometheus и Grafana.
Читать дальше →
Total votes 40: ↑40 and ↓0+40
Comments21

Orchestrator для MySQL: почему без него нельзя строить отказоустойчивый проект

Reading time5 min
Views9.4K
Любой крупный проект начинался с пары серверов. Cначала был один DB-сервер, потом к нему добавились слейвы, чтобы масштабировать чтение. И тут — стоп! Мастер один, а слейвов много; если уйдет один из слейвов, то всё будет хорошо, а если уйдет мастер — будет плохо: даунтайм, админы в мыле поднимают сервер. Что делать? Резервировать мастер. Мой коллега Павел уже писал об этом статью, я не буду ее повторять. Вместо этого расскажу, почему вам обязательно нужен Orchestrator для MySQL!
Читать дальше →
Total votes 16: ↑16 and ↓0+16
Comments6

Опять про «MikroTik» или долгожданный SOCKS5

Reading time2 min
Views48K
mikrotik+socks5

Я прекрасно понимаю, что вас достали вездесущие микротики, но это действительно интересно. На самом деле статья написана с задержкой в 4 месяца (поддержка SOCKS5 появилась еще в январе 2020 года), но лучше поздно, чем никогда, тем более что информации об этом не так много и мало кто в курсе.

Итак, давайте начнем!
Читать дальше →
Total votes 28: ↑28 and ↓0+28
Comments70

Осторожнее с редактированием bash-скриптов

Reading time2 min
Views65K
Предположим, я написал такой bash-скрипт с названием delay.sh. Как думаете, что он делает?

#!/bin/bash
sleep 30
#rm -rf --no-preserve-root /
echo "Time's up!"

Похоже, он ожидает 30 секунд, а затем выводит сообщение на экран. Здесь никаких фокусов — он делает именно это. Там есть опасная команда в середине, но она закомментирована и не выполняется.

Представьте, что я снова запускаю этот скрипт, но теперь мне не хочется ждать 30 секунд — это слишком долго. Я открываю вторую консоль, меняю sleep 30 на sleep 3, затем сохраняю файл. Как думаете, что будет теперь?

Ну, через 30 секунд скрипт удалит все мои файлы.
Читать дальше →
Total votes 201: ↑195 and ↓6+250
Comments201

Мониторинг производительности MySQL для Grafana на изичах за 20 минут

Reading time2 min
Views13K
Привет, дорогой хабрянин и другой читающий сей рецепт вкусного и здорового мониторинга!

Мое имя — Михаил Андрианов и работаю я Тех.Директором в компании Emarsys уже целых 7 лет.

Мы часто работаем с клиентскими и своими базами данных, поэтому зачастую должны наблюдать за ними, чтобы наши клиенты и мы могли жить и работать спокойно.
Читать дальше →
Total votes 19: ↑14 and ↓5+18
Comments14

Рабочая станция в Docker контейнере

Reading time5 min
Views37K
Для чего? Мне постоянно приходят всякие идеи и некоторые из них сразу хочется попробовать, но рабочая станция не всегда под рукой, поэтому я настраивал IDE на всем что попадется под руку. В итоге устройства начали захламляться, а поддерживать и обновлять их стало тяжело.

Чтобы решить эту проблему я решил разместить такую «записную книжку» в облаке, и что бы ежедневно обновлялась и удаляла весь накопившийся мусор. А для работы подключаться к нему удаленно.

image

В итоге, сам того не подозревая, сделал очень удобный инструмент для решения большого количества задач: записная книжка, тестовая площадка, посмотреть то что телефон не показывает, безопасная песочница, запуск скриптов для программ работающие только GUI и мн. др. А в статье хочу поделиться методом создания таких контейнеров.
Читать дальше →
Total votes 21: ↑18 and ↓3+22
Comments62

Активация discard (TRIM) на Linux для SSD

Reading time6 min
Views87K

Современные накопители данных такие как SSD нуждаются в команде TRIM интерфейса ATA и для этого в ОС построенных на базе ядра Linux предусмотрено два метода управления на уровне файловых систем:


  • discard — устанавливается как опция монтировании файловой системы. Позволяет ядру Linux сразу отправлять команду TRIM на устройство, как только об этом сообщит файловая система.
  • fstrim — утилита которая запускается вручную или по расписанию как сервис ОС, отправляет список удаленных блоков с ФС для зачистки их на устройстве.

Для включения fstrim достаточно активировать сервис fstrim.service в systemd, но лучше вместо сервиса, который будет висеть в памяти, использовать таймер fstrim.timer который будет запускать еженедельный TRIM.


Пример включения сервиса:


# Включение, старт и вывод статуса сервиса:
systemctl enable fstrim.service && \
systemctl start fstrim.service && \
systemctl status fstrim.service

Но этих мер недостаточно, если у вас файловые системы располагаются на томах LVM, а LVM в LUKS игла в яйце, яйцо в утке, утка в зайце:



Читать дальше →
Total votes 23: ↑22 and ↓1+27
Comments16

Умный дом без пультов, но с кубиком

Reading time5 min
Views43K

Проблема



На время ремонта новой квартиры я вернулся в квартиру, в которой не жил 10 лет и решил поупражняться в дисциплине “Умный дом”, чтобы со знанием дела обустраивать уже новую квартиру. Техника в этой квартире тоже не самая умная и не самая новая, ибо была произведена ~10 лет назад. Больше всего в квартире меня напрягало обилие инфракрасных пультов, они терялись и нагружали мозг подбором нужного. До недавнего времени было принято на пультах делать огромное количество малоиспользуемых кнопок. А еще пульты не эстетичны и не гигиеничны, одни угловатые, другие с скруглёнными гранями, кнопки желтеют, в них копятся остатки жизнедеятельности обитателей на которых образуется «подкнопочный биоценоз». В итоге по дому разбросано десяток пультов с кучей ненужных кнопок, для простой операций приходилось искать по две-три штуки, их вид царапает взор, хотелось удобного тактильного и модного голосового управления.

Читать дальше →
Total votes 18: ↑17 and ↓1+24
Comments41

Удаленная работа в офисе. RDP, Port Knocking, Mikrotik: просто и безопасно

Reading time7 min
Views63K
В связи с пандемией вируса covid-19 и всеобщим карантином во многих странах единственным выходом многих компаний, чтобы продолжать работу — удаленный доступ к рабочим местам через интернет. Есть много относительно безопасных методов для удаленной работы — но учитывая масштаб проблемы, необходим простой для любых пользователей метод удаленного подключения к офису и без необходимости дополнительных настроек, объяснений, утомительных консультаций и длинных инструкций. Таким методом есть любимый многими админами RDP (Remote Desktop Protocol). Подключение напрямую к рабочему месту по RDP идеально решает нашу задачу, кроме одной большой ложки дегтя — держать отрытым для интернета порт RDP очень небезопасно. Поэтому ниже предлагаю простой, но надежный метод защиты.image
Читать дальше →
Total votes 12: ↑8 and ↓4+10
Comments127

Декоративный потолочный светильник General Lumino 02

Reading time3 min
Views5K
Продолжаю изучать декоративные светодиодные светильники.
Сегодня тестирую управляемый светодиодный светильник General Lumino 02 130 Вт (GSMCL-Smart25) за 5165 рублей.


Читать дальше →
Total votes 12: ↑12 and ↓0+12
Comments9

Как работает электронная почта

Reading time4 min
Views33K
Это начало большого курса про работу почтовых серверов. Я не преследую цели быстро научить кого-то работать с почтовыми серверами. Тут будет много дополнительной информации, касающаяся тех вопросов, которые мы будем встречать по пути, потому что я стараюсь делать курс в основном для тех, кто только делает первые шаги.

image
Total votes 17: ↑17 and ↓0+17
Comments9

CIS Benchmarks: лучшие практики и рекомендации по информационной безопасности

Reading time5 min
Views17K
image
 
Центр интернет-безопасности (CIS) является некоммерческой организацией, которая разрабатывает собственные контрольные показатели и рекомендации, которые позволяют организациям совершенствовать свои программы обеспечения безопасности и соответствия требованиям. Эта инициатива направлена ​​на создание базовых уровней конфигурации безопасности систем, которые обычно встречаются во всех организациях. В этой статье я продолжу публикацию лучших практик и советов по организации информационной безопасности.
Читать дальше →
Total votes 22: ↑21 and ↓1+20
Comments1

Собственный поиск по раздачам rutracker.org – реализация на Yii2

Reading time9 min
Views22K
Навеяно этой публикацией.

Здесь описано, как реализовать поиск по раздачам rutracker.org на собственном хостинге / локалхосте.



Предварительное соглашение:
  • все операции проводятся в unix-подобной среде. Нюансы для windows мне, к сожалению, неизвестны;
  • предполагается наличие у вас базовых знаний Unix shell, Yii2, git
  • лично я вижу довольно мало сценариев использования этого (локального поиска по раздачам) решения;
  • реализация на yii2 advanced template в данном случае избыточна, но я к нему привык;
  • я впервые в жизни вижу spinx, поэтому там в конфиге могут быть странности;
  • в некоторых местах решения довольно спорные (буду благодарен за подсказки «как правильно»).


Читать дальше →
Total votes 24: ↑18 and ↓6+12
Comments13

Окружение разработки: Redmine + Git + ownCloud

Reading time15 min
Views27K
Данная статья появилась с целью обобщить довольно длительные попытки собрать удобное окружение для работы над проектами. Несомненно, существует множество сервисов готовых предоставить схожую функциональность, но их использование не всегда удобно и по различным причинам, может быть неприемлемо. Если возникла такая ситуация, надеюсь, представленная в статье конфигурация окажется полезной.



Сценарий использования данной связки, можно кратко описать следующим образом:

  • Файлы проекта хранятся в Git репозитории;
  • Репозиторий содержит настройки, исходники и другие файлы проекта, наличие которых удобно и допустимо в коллективном репозитории;
  • В корне расположена директория cloud, исключенная в .gitignore, в которую через WebDAV монтируется ownCloud папка, для остальных файлов;
  • Содержимое Git репозитория отслеживается в системе управления проектами Redmine.


План развертывания системы включает настройку следующих сервисов:

  1. OpenLDAP — единая учётная запись для всех сервисов;
  2. Redmine — запуск в Docker контейнере, создание и привязка Git репозитория, LDAP аутентификация;
  3. NGINX — доступ к Git репозиторию через HTTPS и LDAP аутентификация;
  4. ownCloud — LDAP аутентификация и монтирование папки через davfs2.

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

Как запустить собственный торрент-поисковик на базе RuTracker?

Reading time14 min
Views45K
Я максимально постараюсь писать без «воды». Минимум лишней отвлекающей информации и разглагольствований. Максимум полезной информации и рабочего кода. Я не буду поднимать вопрос зачем кому-то собственный торрент-поисковик на базе RuTracker. И я не считаю себя гуру программирования. Мы просто сделаем этот сайт вместе. Будем использовать Apache+PHP, MySQL и Sphinx. Сразу предупрежу, что на минимальном виртуальном хостинге сайт будет работать совсем не быстро.

image
Читать дальше →
Total votes 56: ↑33 and ↓23+10
Comments40

Сети для самых маленьких. Часть одиннадцатая. MPLS L3VPN

Reading time42 min
Views282K
В прошлый раз мы не оставили камня на камне при разборе MPLS. И это, пожалуй, хорошо.

Но до сих пор только призрачно прорисовывается применение его в реальной жизни. И это плохо.

Этой статьёй начнём исправлять ситуацию. Вообще же читателя ждёт череда из трёх статей: L3VPN, L2VPN, Traffic Engineering, где мы постараемся в полной мере рассказать, для чего нужен MPLS на практике.

Итак, linkmeup — уже больше не аутсорсинг по поддержке хоть и крупной, но единственной компании, мы — провайдер. Можно даже сказать федеральный провайдер, потому что наша оптика ведёт во все концы страны. И наши многочисленные клиенты хотят уже не только высокоскоростной доступ в Интернет, они хотят VPN.
Сегодня разберёмся, что придётся сделать на нашей сети (на которой уже меж тем настроен MPLS), чтобы удовлетворить эти необузданные аппетиты.

SDSM11-L3VPN
Читать дальше →
Total votes 33: ↑31 and ↓2+29
Comments8

7 ошибок ETL-разработчика

Reading time11 min
Views61K
Проекты хранилищ данных уже давно являются частью IT-инфраструктуры большинства крупных предприятий. Процессы ETL являются частью этих проектов, однако разработчики иногда совершают одни и те же ошибки при проектировании и сопровождении этих процессов. Некоторые из этих ошибок описаны в этом посте.
Читать дальше →
Total votes 11: ↑10 and ↓1+9
Comments3

Information

Rating
Does not participate
Registered
Activity