Pull to refresh
50
0.5

Разработчик под Android, перешедший на Rust

Send message

Предстоящий выпуск Yggdrasil v0.5

Level of difficultyMedium
Reading time9 min
Views6K

Поскольку скоро выйдет версия 0.5.0, кажется, сейчас самое время объяснить, над чем мы работали последние пару лет. Хотя в целом мы вполне довольны версией 0.4.X, в этой конструкции есть несколько проблем, которые могут привести к тому, что сеть будет вести себя не так, как нам нравится. Целью этой публикации является краткий обзор того, как работает версия 0.4, объяснение проблем, связанных с этим подходом, и описание изменений, которые мы внесли в версию 0.5, чтобы попытаться их решить.

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

Новый виток развития Yggdrasil

Reading time4 min
Views6.8K

Сначала я хотел бы извиниться за то, что не придавал значения тому, что оба существующих "клиента" сети Yggdrasil для Android работали так себе эту пару лет. Почти год назад я написал статью о том, как настроить доступ в Yggdrasil через WireGuard, и сам использовал эту связку, поэтому клиентами не занимался. А ведь мог!

Примерно месяц назад кто-то из сообщества в очередной раз показал как у него не открываются сайты в Yggdrasil в браузере, и меня это достало. Я решил разобраться с проблемой и понеслось! Эту статью можно считать подведением некоторых промежуточных итогов.

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

Как защититься от сканирования портов и Shodan?

Reading time5 min
Views18K

Серверы в опасности!

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

Это может быть перебор портов с целью найти открытые от какой-то компании, которая позиционирует себя борцом за безопасность, но которая собирает статистику открытых портов на будущее по всем доступным IP (например Censys).

Может быть Shodan, который тоже собирает базу о том, где какие порты открыты, и отдаёт эту информацию любому заплатившему. И могут быть менее известные компании, которые работают в тени. Представьте, кто-то ходит по всем домам и переписывает модели замков входных дверей, дергает за дверь и выкладывает это в публичный доступ. Дичь! Но тоже самое происходит в интернете тысячи раз в секунду.
Кроме компаний могут быть бот-сети, перебирающие порты для поиска чего-то конкретного или для подготовки к целевым атакам.

Ну и собственно целевые атаки, во время которых ваши серверы в первую очередь тестируются на наличие открытых портов, а затем производятся атаки на найденные сервисы. Это может быть подбор эксплоитов для использования известных дыр или пока неизвестных 0-day, как и обычный DDoS.

Во всех этих сценариях используется предварительный перебор открытых портов. Скорее всего применение nmap или подобных утилит в каких-то скриптах.
Как защитить сервер от сканирования портов без CloudFlare и подобных прослоек?

Как стать невидимым для Shodan, Censys?
Total votes 13: ↑8 and ↓5+3
Comments24

ALFIS DNS: перемещение точки доверия

Reading time6 min
Views7.3K

Система доменных имён разрабатывалась как замена hosts файлам, и в то время, в ограниченной среде университетских сетей никто не думал о безопасности. Всё основывалось на доверии. Ещё буквально лет 8-10 назад никто не думал о том, что трафик между сервером DNS и клиентом можно записывать для продажи, либо заменять для достижения своих целей. Но уже в то время существовали трояны, добавляющие записи в локальный файл hosts, чтобы перенаправлять пользователей на подконтрольные серверы. В последние несколько лет появилось несколько новых протоколов, которые помогают устранить перехват или подмену трафика DNS. Но это только смещение точки доверия от одной группы провайдеров, к другой.

Но есть способ сделать создание и синхронизацию доменных имён и записей DNS очень простыми, да ещё и безопасными и не подверженными цензуре.

Рассмотреть альтернативу
Total votes 13: ↑11 and ↓2+12
Comments31

Wireguard VPN, Yggdrasil, ALFIS DNS и AdGuard

Reading time5 min
Views43K

На написание этой статьи спровоцировала вот эта статья, с кучей странностей, и необязательных действий. Если коротко, то автор не понимает зачем он ставит те или иные программы, а именно - Unbound и dnsproxy. Но так как кроме исправления недочётов той статьи хочется добавить чего-то полезного, мы несколько расширим возможности подключающихся к серверу клиентов.

Во-первых, несколько слов об Yggdrasil. Это одноранговая сеть с адресами IPv6, которая по сути может считаться новым слоем сети Интернет. При установке и настройке у вас появляется новый сетевой интерфейс, который является окном в этот новый слой. Всё так же, как с обычным протоколом IPv6 - вы можете использовать его для удалённого подключения к своим устройствам без реального IPv4, для удалённого администрирования, размещения там каких-то ресурсов, например того же Nextcloud. Всё это находится как бы в глобальном пространстве общей приватной сети. Кто-то там разместил прокси-серверы для Telegram, которые нельзя заблокировать, кто-то выход в "большой" Интернет через сеть Tor. Там же есть несколько серверов для общения, вроде Mattermost, IRC и XMPP. Статей по настройке и использованию на Хабре уже достаточно.

Читать далее
Total votes 22: ↑20 and ↓2+19
Comments23

Свободный DNS для свободного Интернета

Reading time3 min
Views11K
В качестве альтернатив Интернету сейчас существует несколько проектов, один из них — cjdns (Hyperboria).
Одна из больших проблем в этой сети — отсутствие хорошей замены существующей DNS. Чем не подходит существующая система? Например, зависимостью от «внешних сил» и функционированием в «обычном Интернете». Я предлагаю достаточно хороший вариант построения новой системы доменных имен.
Читать дальше →
Total votes 7: ↑4 and ↓3+1
Comments13

Бэкап файлов, базы данных и настроек сервера в Dropbox

Reading time6 min
Views33K
Уже несколько лет как появилась возможность любому смертному желающему арендовать не только shared-хостинг, но и «полноценный» сервер с root-доступом и возможностью настроить его так, как хочется самому. Настроить, например, кроме web-сервера еще и кучу других сервисов.
Так же поступил и я несколько лет назад. Сначала арендовал один сервер, потом другой, и переносил настройки ручками, находя нужные файлы в директории /etc.

За пару лет на моём сервере осело несколько блогов друзей, и даже почтовый сервер, так как давно не хочу, чтобы моя почта была у Google. Насчет сохранности данных задумывался после каждой статьи на Хабре, но всё было как-то не до этого. И, как говорится, админы делятся на три категории: на тех, кто не делает бэкапы, на тех, кто уже делает и на тех, кто даже проверяет восстанавливаемость из бэкапов. Так получилось и со мной, хоть хостер и очень хороший, но произошла у них авария с жесткими дисками. Да такая, что неделю они пытались восстановить диски и предварительные оценки были очень неутешительными. А бэкапов у меня не было. Какое настроение у меня было в те дни можете сами представить.

Но через несколько дней техникам хостера удалось-таки восстановить данные и запустить все виртуальные сервера на той ноде. А я задумался о бэкапах. Думал я так — бэкап должен быть не на том же сервере (естественно!), желательно, чтобы он был у меня на компьютере, но не в одном экземпляре. Я обдумал и установку FTP на домашний компьютер и даже отправку архивов письмами, но все эти варианты меня не устраивали. И я понял, что надо попробовать Dropbox, которым я к тому времени пользовался уже пару лет, а бесплатных гигов у меня было около 18-ти.

Преимущества бэкапа в Dropbox:


  • Независимость от домашней инфраструктуры и канала в Интернет
  • Множественные копии (сразу на все синхронизируемые ПК)
  • Кроме собственного хранения бэкапы хранятся и в облаке

Что делает представленный мной скрипт?


  • Инкрементальный бэкап файлов в указанных папках (по первым и пятнадцатым числам идет полный бэкап)
  • Бэкап всей базы MySQL
  • Бэкап архивируется с помощью 7zip, с указанием пароля (вам же не надо хранить пароли в открытом виде в Dropbox'е?)
Читать дальше →
Total votes 37: ↑32 and ↓5+27
Comments48

Information

Rating
2,015-th
Location
Bratislava, Bratislava, Словакия
Date of birth
Registered
Activity