Селфхостинг - это размещение серверно-ориентированных приложений, на домашнем (как правило), железе с целью использования в личных целях. Это может быть VPN для себя и друзей, облачное хранилище, музыкальный сервис, торрентокачалка и что угодно другое.
Здоровенько, меня зовут Паша и я селфхостер.
Из заголовка поста может показаться, что я в этом деле разочаровался. Современные корпорации предоставляют сервисы, которыми легко пользоваться, они быстрые, красивые, удобные, а селфхостинг решения по дефолту уродские, тяжёлые, багованные и медленные. Для среднего человека сервисы от корпораций действительно лучше. Но мы же не из таких, верно?
В этом посте я вам расскажу немного о том:
- что я думаю про селфхостинг;
- что у меня есть на домашнем сервере;
- какие плюсы и минусы есть у тех штук, которыми я пользуюсь;
- на каком железе всё это крутится.
Ещё я бы очень хотел подробно написать о том, как каждый человек может самостоятельно настроить себе дома подобные сервисы, но это вышло за рамки моих сил. Мне бы очень хотелось сперва узнать какому количеству людей это будет интересно и нужно (лайк, шэр, колокольчик, подписка), а только потом переходить к написанию руководства.
Системные требования:
Если вы твёрдо решили стать гордым селфхостером и поднять у себя дома сервер, то вот о чём вам нужно позаботиться в первую очередь:
- Найти какую-нибудь железку. В идеале — старый лаптоп, бонус поинт за Ethernet порт. RaspberyPi и аналоги покатят, но не так удобно (arm вместо x86) и не так мощно/солидно.
- Домашний интернет с публичным (белым) IP. Скорее всего у вас он уже есть, очень многие провайдеры дают его просто так.
- Свой домен. Это не строго обязательно, но так сильно удобнее. Стоит где-то 10 евро в год.
Ну а дальше, предлагаю вам почитать про:
Нафига это нужно?
Софт
Железо
Демонстрация
How To
Нафига это нужно?
Сервисы, доступ к которым вы можете приобрести за деньги, действительно чаще лучше и удобнее open source решений. Но у коммерческих решений есть ряд минусов:
- У вас нет никакой возможности заплатить за то, чтобы сервис делал то что нужно именно вам, ведь бизнесу это будет попросту нерентабельно. Ну кто в здравом уме будет исполнять любые хотелки Славика Круглолицевича из Берлина? Есть тысячи людей, которые не имеют никаких странных хотелок; они пользуются тем, что им предоставляют корпорации и даже не подозревают, что может быть как-то по-другому.
- У вас нет никакого контроля над информацией. Мало того что вы не знаете насколько спустя рукава корпорации относятся к хранению ваших данных (ну ладно, гугл наверное ответственно относится), но вы ещё и обязаны соглашаться с любым сервисным соглашением которое вам предложат, если вы хотите продолжать пользоваться сервисом.
- Если компания умрёт, то скорее всего с ней умрут и все ваши данные.
Сам я долго думал о том, нахрена я это вообще делаю. Первые два пункта главные, остальные подъехали по ходу дела:
- Принципы
Я не хочу давать данные о себе никаким корпорациям. Я им не доверяю. Особенно в наши дни, когда по сути любая компания может вдруг внезапно приглянуться Маску и перевернуться с ног на голову. Принципиально для меня это сродни вегетарианству. Конкретно мои действия погоды не делают, но я верю что в один прекрасный день это движение будет зажигать больше сердец ❤️🔥❤️🔥❤️🔥
- Контроль и свобода
Буквально с первого раза, когда я сел за компьютер в детстве, меня штырило именно от того, что я могу сам создавать штуки, которые ведут себя так, как я хочу. Торжество свобода и власти.
Примерно по этой причине экосистема iOS меня просто невыразимо бесит. Она прекрасная, там много фичей которыми я по настоящему восхищаюсь, которым я завидую. Но вот когда мне надо, чтобы что-то было не так, как сказали гении из Купертино, начинается адуха какая-то. Так что только Линукс.
- Экономия
Для меня было сюрпризом обнаружить, что оказывается все мои усилия немножко окупаются. Я живу в Нидерландах, а цены тут кусачие. Так как я селф-хостчу, мне не надо отстёгивать 8 евро нетфликсу, 11 евро спотифаю, 10 евро гугл-драйву, пяток евро за VPN... К тому же, я могу в свой сервис добавить ещё кучу пользователей за 0 денег. Разве что сторадж докупить надо будет, но по сути он окупится за год. Получается так, что я где-то 3-4 сотни евро в год с этого экономлю. Мелочь, а приятно.
- Share
Мне нравится делиться всем этим с друзьями. Мне классно от того, что я могу выдать всем моим друзьям VPN и они в России имеют надёжный доступ во внешний интернет. Я могу дать им послушать музыку которой нет на спотифае, фильмы которых нет ни на одной платформе и многое другое.
Софт
Собственно что у меня там сейчас крутится? Да дохреналлион всего.
- ⭐ Vaultwarden он же Bitwarden, но на Rust.
- Navidrome давать друзьям послушать мою музыку.
- Invidious свой ютуб без рекламы.
- Prowlarr коннектор для поиска торрентов для *arr сервисов.
- Lidarr собственно один из *arr сервисов, использую в основном для того чтобы теги в музыкальной библиотеке проставлять.
- Sonarr должно качать сериалы, но у меня лыжи не едут.
- ⭐ Radarr охуенная штука, сама качает фильмы когда они выходят.
- ⭐ Jellyfin собственно плеер смотреть эти самые фильмы.
- AdGuardHome DNS чтобы мои домены в локальной сети доступны были.
- ⭐ Syncthing просто фантастическая штука для бэкапов и синка файлов.
- NextCloud поставил родственникам, надо бы на OwnCloud поменять, но руки не доходят.
- ⭐ Outline-Shadowbox давать доступ в большой интернет друзьям.
- ⭐ qBittorrent ну понятно всё, да?
- PhotoPrism очень хотелось свои фоточки на карте смотреть.
- Fawkes бот в телегу фоточки обскурить.
- Gitea github такой, но я не пользуюсь.
- ⭐ Caddy nginx для хипстеров, эта штука помогает каждому сервису выдавать свой под-домен и вешать везде https.
- ⭐ CasaOS очень пафосно названный UI для докера.
- backupninja я хз почему я эту штуку выбрал для бэкапа, она мне кажется простой.
У меня накопился некоторый опыт пользования этими штуками, поэтому хочу рассказать о преимуществах и недостатках каждой софтины. Начну с самых любимых:
Vaultwarden
Менеджер паролей.
Нравится: хранит пароли, опен сорс, надёжно.
Не нравится: приложения клиента. Мне лично неудобно, есть много прeтензий.
Вообще обычный public сервис тоже хороший. Если вы посмотрите в сорс код bitwarden, то вы узнаете, что БД паролей расшифровывается только на конечном устройстве. Криптография там серьёзная, даже аудиты были. Так что можно без страха пользоваться публичным сервисом, он бесплатный. Если вы ещё не пользуетесь менеджером паролей — очень рекомендую. Сама архитектура не позволит хакерам взломать "ГЛАВНЫЙ СЕРВЕР" и слить все пароли, что очень круто. Соответсвенно, если вы даёте сервис друзьям, то они могут быть спокойны, что вы к этим паролям доступа не имеете.
Преимущества селфхостед варианта:
- он селфхостед;
- можно создавать организации и делиться паролями с друзьями.
Syncthing
Люблю всем сердцем. Опен сорс, написан на Go, есть шифрование. Сразу оговорюсь, это никакое не облако. Это автоматическая синхронизация файлов. Т.е. те файлы, к которым вы хотите иметь доступ должны быть НА КАЖДОМ устройстве (именно поэтому у меня в телефоне microSD на 512gb).
Эта штука связывает все ваши ноутбуки, мобильники, серверы и меш-сеть и синхронизирует между ними файлы. Чтобы ваши устройства друг друга нашли, используется домен syncthing.com
на который все ваши устройства добавляют свой уникальный "номер" (хэш) и по нему можно соединять устройства.
Честно, я бы про него отдельную статью написал, настолько он хорош.
Нравится: надёжная синхронизация файлов и бэкапов. Музыка, фоточки, всё всегда со мной и на всех устройствах на которых мне это нужно сразу.
Не нравится: мобильное приложение могло бы быть получше. Но там есть доступ к web-ui в котором есть всё что нужно.
qBittorrent
Нравится: качает торренты, есть приложение на мобилку и я могу по пути домой, сидя в электричке, добавить себе в библиотеку какой-нибудь сериальчик, который будет скачан через 5 минут.
Не нравится: неудобно настраивать категории. Мне надо было, чтобы скачанные фильмы шли в одну папку, музыка в другую, аудиокниги в третью, а если я хотел просто что-то посидить, то в четвертую. У меня ушло 2-3 попытки чтобы понять, как это сделать. Не круто.
Jarr!
Коллекция пиратских штук типа Radarr, Lidarr, Prowlarr и другие.
Если в двух словах, то Sonarr, Lidarr и большая часть этих приложух отвечают за какой-то определённый тип контента. У них есть подвязки ко всем базам данных контента, чтобы подтягивать постеры, описания и т.д. Также они могут мониторить торренты и usenet (не спрашивайте), но для этого им необходим "адаптер" для всего это, в роли чего выступает Prowlarr. И потом им нужен торрент клиент, чтобы туда передавать торрент файлы.
Насколько я понимаю, принятие решения разделить эти функции на отдельные сущности, а не объединять их в единый комбайн, было продиктовано юридическими законами. Может я ошибаюсь.
Не нравится: сложнаааа. Не то чтобы оно как-то совсем уж нетривиально настраивалось, но всё же отнимает немало времени. Написано на C#, поэтому я не могу там ничего поправить под себя.
Нравится: может самостоятельно качать торренты. Например, я хочу посмотреть фильм, но он еще даже в кинотеатрах не вышел. Добавляю его в Sonarr и жду. Когда фильм объявится на торрентах, через несколько минут он появится у меня в медиа-библиотеке. Каеф.
Не нравится №2: задать фильтр для нужного качества сложнаааа.
Для того чтобы ваш Radarr не качал вам camRip из кинотеатра на индийском языке с бенгальскими субтитрами, вы можете настроить систему скоринга для торрентов. Вроде бы простенько, типа отметил качество и всё. Но на деле как-то не оч выходит и приходится много докручивать руками.
Jellyfin
Ууууу, как я обожаю эту штуку. Есть ещё над чем поработать, но уровень качества уже ОЧЕНЬ высокий. Отлично работает, есть нативные приложение на всё (за iOs надо платить, азазаза), дополняет сериалы справками, списками актёров. Есть киллер фича: совместный просмотр. Вы можете смотреть фильм со своими друзьями находясь в разных местах, а эта штука синхронизирует фильм чтобы вы одновременно охали и ахали) Можно создавать кучу пользователей, чтобы у каждого была возможность запоминать, где он остановился в момент просмотра того или иного фильма/сериала.
Нравится: у меня практически свой Netflix!
Не нравится: андроид приложение для телевизора. Может у меня медиакоробка не очень, но у меня не получилось заставить её получать файл и декодировать самостоятельно. В нужный формат всё декордирует ноутбук, от чего греется и шуршит вентилляторами. Кстати, настроить повышенное качество декодирования тоже было нетривиально, надо было зайти в докер контейнер и что-то там поделать, я уже даже не помню что. В целом, оно и так из коробки работает, просто качество декодирования будет так себе.
Outline-Shadowbox
Классная обёртка для shadowsocks. До сих пор работает для людей из России.
нравится: работает. Есть приложение на мобилку.
не нравится: разработчики дают скрипты требующие root ssh доступ к вашему серваку. Да, это 90% кейсов, но я хочу отдельный сервис не требующий рут доступа.
Caddy
Краеугольный камень всей системы. Эта штука позволяет мне выделять для каждого сервиса поддомен и иметь к нему доступ из большого интернета.
нравится: стабильно работает, есть не просит, https сертификаты есть, конфиги на любой случай жизни легко гуглятся.
не нравится: да всё нравится.
Пример конфига:
{
http_port 80
https_port 443
}
my0domain.xyz {
handle_path /cv* {
root * /var/lib/caddy/files/Pavel_Griaznov_CV.pdf
file_server
}
respond * "Nobody here but us chickens!"
}
ha.my0domain.xyz {
reverse_proxy http://localhost:8123
}
Для того чтобы добавить новый поддомен нужно добавить ровно 3 строки (собственно 3 последние в конфиге). Caddy сам сходит на сайт lets encrypt получит там https сертификат, сохранит его и даст доступ к локальному сервису.
Раздел my0domain.xyz
- это конфиг для моего основного домена чтобы отдавать файлик CV, а на всё остальное отвечать Nobody here but us chickens
.
Важно: не забывайте что домен указывающий на ваш домашний IP выставлять не круто, лучше используйте Cloudflare как прокси. У меня вот дальше в скриншотах домен засвечен, но убрав его из текста я надеюсь таки ибежать толики автоматизированного трафика.
CasaOS
Супер-пупер докер UI со свистелками и перделками.
Я сначала думал, что это какая-то очень классная штука, но на деле там как будто какой-то микросервисный рак, который даже когда я ему дал рутовый доступ зафейлился всё поставить на Debian. Может на Ubuntu будет получше, я хз. После того как я руками внёс пару правок в их скрипты, эти старые жигули-таки завелись и с тех пор просто работают. За это им большое спасибо. Плюс они недавно добавили возможность подключать другие списки приложений.
Сейчас я бы взял Portainer попробовать. Мне кажется он получше мне подойдёт
Нравится: есть магазин приложений из которого можно в один клик поставить себе всякие штуки. Юзер-френдли интерфейс. Я думаю с этим может разобраться любой человек после короткого обучения.
Не нравится: непонятная архитектура, нужен рут.
Debian
Не забываем что всё то возможно только благодаря необъятному сообществу и коллективным усилиям Linux разработчиков которые нам пилят ядро и дистрибутивы. Давайте все дружно скажем им спасибо.
Запомните дети, если вы хотите чтобы ваш сервер не ломался при апгрейдах, не требовал странного и вообще вёл себя максимально стабильно — Debian это ваш выбор.
.
Так, ну базово кажется всё. Про сервисы и их плюсы/минусы я рассказал, как будто пора бы уже переходить к самой сложной для меня части: рассказать, как такое чудо себе поставить.
Железо
Переходя наконец к делу.
На данный момент у меня в кладовке стоит старый ноут. Мне его коллега с работы отдал (€0), там какой-то дефект мат платы, может зависнуть просто так если его неправильно потрогать. Сейчас он там стоит в полуоткрытом состоянии под экспериментально выверенным "углом непадения" и аптаймом больше года. Там стоит Debian (потому что стабильно и настраивать не надо), к нему подключен 2Tb ssd (~€80) в адаптере (~€20) воткнутый в type-c.
Почему не RaspberryPi или другой одноплатник? Потому что удобнее и мощнее. Сейчас конечно не мало софта уже адаптировано к ARM, но вы точно встретите что-то, что не будет так гладко на нём работать.
Дорого?
Идите поищите на ибей laptop with broken screen. Если повезёт, то на локальном авито вы найдёте старый ноут ещё дешевле чем одноплатник. Апсайклинг, епт!
Не энергоэффективно?
Вообще ноуты довольно энергоэффективные, не настолько как одноплатники, но всё же. Я померил, со всеми сервисами и нагрузками ноут ест ~10 ватт. Получается за 7кВт в месяц у меня домашний сервер. Даже с пугающими нидерландскими ценами это будет примерно 3-4 евро. Ну как будто бы за дедикейтед сервер с 2Tb ssd и безлимитным трафиком это вау как дёшево.
Не ...?
Пишите свои аргументы против в коменты, давайте обсудим)
Демо
Давайте посмотрим как с текущей конфигурацией можно лихо добавлять себе сервисов. Алгоритм действия простой: добавить довер сервис в CasaOS и добавить три строки в конфиг Сaddy, чтобы сервис стал доступен из интернета.
Тут, по сути, есть два варианта:
1. Из магазина приложений
Тут даже скриншоты показывать как будто и не надо. Идём в магазин CasaOS (у Portainer тоже списки приложений есть), кликаем там на понравившемся сервисе Install, потом кликаем на иконке установленного сервиса, попадаем на локальный адрес вашего сервера на нужном порту (типа 192.168.2.20:8686) и там собственно работает ваш сервис.
2. Любой другой сервис в докере
Если у вас простой сервис, то вам кроме ссылки на докер контейнер и указания порта на котором работает приложение ставить ничего не надо. Можно разве что ссылку на красивую иконку добавить и ссылку на web UI.
В случае же outline, надо прописать нужные порты, примонтировать какие-то папки, установить команду которая исполняется при запуске контейнера... Не тривиально нифига.
Давайте чего попроще попробуем, и распишем прям шаг за шагом.
Я например вот хотел сайт с вишлистом. Нагуглил такую штуку, даже докер имадж есть.
К сожалению, скопировать адрес докер контейнера оказалось недостаточно. Сервису нужна база данных. И ему ещё нужно было сказать где она находится. Ну не беда, идём в магазин приложений, ставим оттуда MariaDB. Теперь два важных момента:
- В настройках вашего нового вишлист-сервиса обязательно укажите Network такой же, как у базы данных, только тогда она будет доступна.
- Сервису нужен доступ к базе данных. Это можно ручками в конфиге прописать, но когда я зашёл по адресу сервиса, он мне предложил всё настроить руками. Классненько) Данные для доступа вам показывали при установке MariaDB, надеюсь вы их запомнили.
Для сервиса я сделал свою базу данных и пользователя, но это не обязательно.
Дисклеймер: в 99% всяких php сервисов есть уязвимости которые опытный хакер найдёт и хакнет. Докер тоже не панацея. Учитывайте это если у вас какая-то критичная для вас инфраструктура. По сути, если вы вдруг захотите меня хакнуть, то я в довольно уязвимом положении. Поэтому пост открыт только для клуба, возможно для внешнего интернета я тоже открою, но уберу домен как минимум. Подумаю ещё.
How to?
Как же всё таки стать селфхост-гуру и хвастаться друзьям своим домашним сервером с вашим сайтиком?
to be continued...
Когда я дошёл до этого места в написании текста я понял, что жутко устал. Хоть я и думал об этом посте уже несколько месяцев (ожидая что кто-нибудь из клуба забацает), но я уже хоть убей не помню как это всё настраивалось 🤪 и описание этого процесса займёт столько же времени сколько и настройка.
Если вы хотите увидеть подробное руководство чтобы воспроизвести то же самое у себя дома или просто вам по фану читать — ставьте плюсики, пишите коменты, задавайте вопросы. Всё это будет меня мотивировать как можно скорее запилить вам руководство с картинками, которое даст вам возможность увлекательно провести вечер-другой и статьЖьф гордым селфхостед магом 🧙♀️
Добавлю пару сервисов, которые лично для меня оказались полезными:
полные списки можно посмотреть например тут https://github.com/awesome-selfhosted/awesome-selfhosted и тут https://mariushosting.com/docker/
Вы оба (вместе с соавтором) меня опередили, я хотел написать развёрнутый пост про селфхостинг, поскольку занимаюсь этим
мозгодрочемкогнитивной гимнастикой с 2011 года, ровно когда сподобился арендовать свой первый VPS. Напишу тогда в комментарии развёрнуто, что, как и зачем.и много-много всякой мелкой одноразовой попиздоты, перечеслять которую я просто заебусь. Как-нибудь про всё это напишу, когда настроение будет.
Сразу +миллион проблем с тем, что вас будут пытаться взломать все, кому не лень. Не надо вам белого айпи, wireguard/headscale/tailscale/любого другого впн во внутреннюю сеть более чем достаточно.
TinyPC вроде Lenovo ThinkCentre стоят на ибее от 50 евро, но не умеют в диски (некуда их втыкать и питать), можно взять формфактор побольше: SFF (small form factor) офисные PC, вроде Fujitsu Esprimo или HP EliteDesk. В них уже можно засунуть 2-4 дополнительных диска, а если попадётся с приличным процом, он даже фоновые джобы по генерации превьюшек для Immich будет пережёвывать довольно быстро, цена вопроса — 50-150 евро на том же ибее
Про возврат данных под свой контроль: бесстыдно прорекламирую свой dawarich, как альтернативу трекеру истории геоперемещений (вместо гугл таймлайна): https://github.com/Freika/dawarich и залинкую свой же пост про Immich, как альтернативу гугл фотос: https://vas3k.club/post/20058/
https://github.com/RSS-Bridge/rss-bridge
Конвертер из разных сервисов в RSS.
Пост отличный, но мне кажется что совсем не затронута тема безопасности данных. Если вы складываете к себе на сервер фотографии и хостите менеджер паролей в случае проблем с диском можно потерять довольно дорогую информацию (во всех смыслах). И хотя бы использование чего-то типа RAID (не 0) необходимо.
Для своего сервера для sell-host приложений и бекапов, я остановился на TrueNAS scale, а раньше сидел на TrueNAS core (aka FreeNAS) . TrueNas работает с ZFS эта файловая система умеет в очень удобные штуки типа снепшотов и software RAID из коробки, а TrueNas имеет удобный UI что бы все это использовать. Можно даже настроить регулярный бекап снепшотов на другой сервер, тогда даже физическое уничтожение основного сервера не приведет к потере данных (но это конечно экстремальный сценарий).
Для своего сервера я использую RAIDZ2 с 4мя дисками (еще ECC память, но кажется RAID сильно важнее). В будущем планирую настроить снепшоты на другой бекап сервак без активных приложений в другой локации. Но этот подход предполагает что содержимое этого сервера будет со мной и через несколько десятков лет. Это звучит пафосно, но часть данных у меня уже проживают свой второй десяток (те что пережили битые sd карты, сломанные харды и поцарапанные DVD/CD диски).
Из других плюсов TrueNas, это возможность поставить одной кнопкой популярные приложения(типа immich/plex/jellyfin и.т.д.). Так же можно подключить сторонний источник приложений TrueCharts, там их еще больше.
NAS типа Synology DS224+ стоит менее 400$, умеет в Docker и виртуалки, создан для работы с дисками, предельно энергоэффективен, надёжен как автомат Калашникова. Не понимаю, зачем так мучаться с каким-то мусором в качестве железа...
Люди, не делайте того что написал автор, "астанвитесь"! Я сам начинал с мини-ПК и старых ноутбуков, а закончилось это (или ещё не закончилось) ящиком размером с хорошую микроволновку под завязку набитым жесткими дисками. )))
А если серьезно то "хостю" у себя:
Ну всякое рабочее типа gitlab, dvc итп...
Оче годная статья! Умеешь заинтриговать)
Так что жду продолжения "How to?". Лично я буду счастлив даже если распишешь не про все сервисы, а часть по типу стриминга музыки и менеджера паролей
статья отличная, но можно добавить про почти-готовые решения от Synology и QNAP. Это NAS, а не сервера в широком смысле, но задачи self-hosting они вполне могут выполнять и отличный выход, для тех, кто не хочет настраивать, а хочет установить все по клику. Стоят подороже, чем старый разбитый лаптоп, но зато готовое решение с понятным UI и крупными онлайн-сообществами.
Если таки понадобится Gitea в будущем, обрати внимание на community fork - https://forgejo.org Они скоро добавят федерацию, взаимодействовать с чужими репозиториями с других инстансов станет веселее.
Этот тред был бы неполным без https://awesome-selfhosted.net/
Из многого названного только Nextcloud вызывает у меня глубокое внутреннее раздражение. Я пользуюсь им уже лет 5, и каждые пару лет начинается свистопляска с "эта версия end of life, вам нужно установить новую, вероятно с нуля, и нет, на этой версии Debian оно не заведется, потому что версии PHP несовместимы". Разрываюсь между "перенести все на SyncThing и забыть" и "заплатить за Dropbox и забыть".
Проблема с self-hosted не в том, что это надо настроить - а в том, что это надо поддерживать, и если первое - по приколу и интересно, то второе - это неоплачиваемая работа, на которую нет ни времени, ни желания.
Я из этих кому было просто по кайфу почитать, спасибо
В тему готовы решений, правда софтверных - мой путь в селф-хостинг начался (и пока в основном дальше и не двигался) с Yunohost. Очень понравился тем, что с одной стороны имеет очень низкий порог вхождения - если повезёт, можно и в консоль ни разу не зайти, с другой - реально стимулирует плавно разбираться во внутренностях системы.
Набор собранных для него приложений конечно маловат (хотя всё, что я хотел, нашёл), но ничто не мешает накатывать сторонние, минимально интегрировав их во фреймворк через метаприложение-прослойку.
Очень крутая подборка! Спасибо за подробный рассказ.
Я для этих целей на Амазоне купил микрокомпухтер с ноутбучным железом. Все важное для меня спрятано в tailscale, то, что должно торчать наружу (Vaultwarden, например) баллансируется через Caddy в tailsclae, то есть домен смотрит на DO машинку, а та через tailsclae домой.
На всех девайсах у меня стоит tailsclae, поэтому по масимуму все прячу в него и получаю доступ через Magic DNS, а то, что надо шарить с друзьями или иметь всегда доступным с любой машины через баллансер. Кажется чуть более безопасным + если будет восстание ботов, я просто затушу DO машину и продолжу пользоваться всем через tailscale.
Мне как-то домашний IP светить сильно не хотелось, поэтому схема такая: домашний сервер смотрит в интернет через Wireguard-туннель к VPS'ке, и всем видет исключительно IP VPS'ке. VPS'ка стоит 5 баксов в месяц (а если бы не заморачивался с поиском провайдера, дающего реальную анонимность, то и в 1.5-2 можно было уложиться), и она же используется в качестве VPN сервера для доступа в интернет семьи и друзей.
Ну и не надо беспокоиться о белизне домашнего IP и всяких там dynamic DNS.
Вот как ты во время, я как раз после очередного переезда начал об этом задумываться. Но я больше железячник, поэтому пару ноутбуков и пара плат у меня под рукой есть, а вот как эту зрень правильно настроить я точно не знаю, поэтому если ты напишеь продолжения с Хау ту - это будет круто! Я и так узнал много нового софта для сервера)) (кроме разве что Линукса, с него и пишу)))
Понравилось, что в статье есть примерный расчёт потребления электричества. Насколько селфхостинг подходит тем, кто часто меняет провайдера? Мне представляется, что каждый раз надо перенастраивать всю систему
Selfhosted это такой способ косплеить сисадмина.
Я держу всё в докере, в папочке с кучей docker-compose файлов. Управляю этим всем при помощи VSCode подключившись по SSH.
Докину ещё пару сервисов:
Ещё есть пара сомнительных решений:
Иногда частному лицу не могут выдать белый айпи (Как у моего провайдера)
Меня спас Cloudflare (https://developers.cloudflare.com/cloudflare-one/)
Спасибо! Давно собирался-собирался, и этот пост был последним нужным пенделем, чтобы собрать свой sffpc
А почему хочешь пересесть на OwnCloud с NextCloud? Там же плагинов меньше.
Торгану своим конфигом: https://github.com/shaman007/home-k3s
@grbit а в Нидерландах можно безнаказанно хостить торрент клиенты которые будут так же на раздаче стоять?
Отличный пост, мой домашний сервер теперь ждет очередная переделка)
Сейчас это огрызок старого ноутбука, без крышки с экраном и некоторых других частей. На нем крутится ubuntu server, на котором крутятся nextcloud как облако с функциями бэкапа, qbittorent и samba. Последняя - для того что бы скачанные фильмы смотреть с яндекс телека.
Конфигурация так себе. Но такова она стала после нескольких итераций "быстро сделать только что бы работало".
Некоторое время часть функций была на rpi 3b+ с воткнутым usb-hdd, но в ней стали помирать sd-карты после перезагрузок.
Спасибо за статью! Интересно было узнать про Caddy, надо будет попробовать...
Есть коммьюнити гайд по настройке Sonarr, Radarr: Trash-guides. С его помощью можно точнее настроить логику поиска релизов под желаемое качество. Как по мне, документацая довольно запутаная, но есть CLI тула (Recyclarr), которая позволяет импортировать необходимые настройки для этого подхода в полу-автоматическом режиме. Если пару дней поразбираться и поэкспериментировать, результат получается сильно лучше чем Quality Profiles, которые используются из коробки.
Ну, и еще имеет смысл получить доступ к приватным торрент-трекерам, на которых качество релизов, как правило, выше.
Насчет Fawkes
Там команда авторов написала статью, где показала что "data poisoning" уже не защищает:
DATA POISONING WON’T SAVE YOU FROM FACIAL RECOGNITION
Огромное спасибо за Navidrome, я рот его наоборот с этими форками subsonic древними, это выглядит хорошим решением для стриминга той пачки аудио, что есть.
Касаемо доменов и необходимости белого айпи - с ним и проще, и геморнее. Геморнее - нужен в целом кто-то типа opnsense/pfsense чтобы туева хуча ботов-кроулеров не пёрлось к тебе в порты. Проще - у тебя белый айпишник, а не cloudflare-tunnel с условным duckdns чтобы стучать к своим сервисам. Было оба варианта, в целом шило на мыло.
Прилинкую пост https://vas3k.club/post/2193574/ почему пришел к схд коробочному дому(могу, умею, практикую ceph на 10pb). Спойлер: на работе веселухи хватает и согласен с ограничениями
Спасибо за статью, было полезно почитать, особенно про апки.
это правда)
Для себя нашел ZimaBoard (который х86) в качестве домашнего сервера. Плюс он из коробки идет с CasaOS. Правда цена в 200$ немного кусается, но то уже такое)
Автор, обязательно глянь в сторону Jellyseer - это компаньон-сервис для Jellyfin, который даёт нормальный интерфейс над Sonarr/Radarr чтобы ты и твои друзья могли заказывать фильмы и сериалы
Из классного - можно настроить авторизацию по аккаунтам из Jellyfin и правила для "заказа" контента, то есть можно например настроить для себя авто-согласование, а для друзей - чтобы они заказывали и админ после этого "ОКал"
Я держу Jellyseer+Jellyfin для себя и пары друзей, и это очень удобно - они сами закидывают что хотят посмотреть и оно автоматом качатеся без моего участия
большое спасибо за пост, очень вдохновляет (продолжать) пытаться самому в селф-хостинг🫶
вопрос: я делал несколько подходов к тому чтобы поставить приложения через portainer или просто docker-compose, и каждый раз там была тысяча каких-то подводных камней, через которые без знаний этих инструментов у меня продраться не получилось. Со стороны, я представлял себе portainer как такой AppStore с контейнерами, которые можно скачать и они магически начнут работать, только учётку заведи. Вместо этого я час пытался привязать нужные порты и разделы для каждого контейнера, прописать какие-то трёхслойные конфиги в traeffik, и в итоге опять сдался.
что я делаю не так?😁 есть ли какие-то готовые конфиги, которые накатят мне нужные порты на чистую wsl2?
Огромное спасибо за Radarr, Prowlarr и Sonarr. Очень мощные штуки. И кстати, у кого-нибудь есть инвайт на приватный индексер торрентов?)
А не пробовал Jackett вместо Prowlarr? Я не знал, что есть "официальный" компаньон для Radarr и Sonarr для индексации торрентов. Вот интересно было бы сравнить.