Pull to refresh
0
0
Send message

Самые маленькие Linux-компьютеры

Reading time3 min
Views44K


Несколько дней назад активисты движения за свободное аппаратное обеспечение выпустили вторую версию крошечного Linux-компьютера VoCore2 размером 25,6×25,6×3,0 мм, то есть с крупную монету (почти вписались по площади в квадратный дюйм). В спичечный коробок поместится примерно восемь таких компьютеров.

Это потомок того самого VoCore, на который собирали деньги через Indiegogo. Всё-таки собрали, и проект живёт. Это абсолютно открытый компьютер, который кто угодно может собрать из указанных комплектующих (или купить плату в сборе за $17,99). Компьютер работает на прошивке OpenWrt/LEDE, то есть идеально подходит на роль портативного маршрутизатора.
Читать дальше →
Total votes 60: ↑57 and ↓3+54
Comments75

Новый MTProto-прокси сервер от Telegram

Reading time5 min
Views160K
Прокси-сервер является посредником между клиентом и сервером. Для обхода ограничений прокси-сервер должен быть установлен там, где нет ограничений доступа к требуемой информации, при этом не должно быть таковых ограничений и между клиентом и прокси-сервером.

image

Обновлённая поддержка прокси-серверов в клиентах Telegram


  • Новый MTProto-прокси. Работает с родным для Telegram протоколом MTProto
  • Открытый исходный код сервера на GitHub
  • Docker-образ на DockerHub
  • В мобильных клиентах появилась возможность добавлять несколько прокси-серверов каждого типа. Пользователь может выбрать наиболее подходящий
Читать дальше →
Total votes 106: ↑98 and ↓8+90
Comments261

Browser Fingerprint – анонимная идентификация браузеров

Reading time14 min
Views218K


Валентин Васильев (Machinio.com)


Что же такое Browser Fingerprint? Или идентификация браузеров. Очень простая формулировка — это присвоение идентификатора браузеру. Формулировка простая, но идея очень сложная и интересная. Для чего она используется? Для чего мы хотим присвоить браузеру идентификатор?


  • Мы хотим учитывать наших пользователей. Мы хотим знать, пришел ли пользователь к нам первый раз, пришел он во второй раз или в третий. Если пользователь пришел во второй раз, мы хотим знать, на какие страницы он заходил, что он до этого делал. С анонимными пользователями это невозможно. Если у вас есть система учета записей, пользователь логинится, мы все про него знаем — мы знаем его учетную запись, его персональные данные, мы можем привязать любые действия к этому пользователю. Здесь все просто. В случае с анонимными пользователями все становится гораздо сложнее.
Total votes 75: ↑54 and ↓21+33
Comments167

Супер-куки на основе HSTS отследят вас даже в приватном режиме

Reading time2 min
Views31K
Уже несколько лет все браузеры предлагают настройки для приватного браузинга. В приватном режиме они могут не сохранять куки, историю страниц и временные файлы. Люди, ценящие приватность, полагаются на эту возможность. Но недавно был предложен ещё один способ отследить пользователя даже и в этом случае, если тот не предпримет особых мер.

Ирония в том, что работе этой системы отслеживания способствует механизм под названием HTTP Strict Transport Security. Он нужен для того, чтобы сайты могли убедиться, что пользователь работает с их серверами только по протоколу HTTPS. Если сервер добавляет в заголовки соответствующий флаг, то по правилам HSTS все соединения с сервером должны быть зашифрованы. Таким образом пользователя защищают от различных возможных атак.
Читать дальше →
Total votes 42: ↑33 and ↓9+24
Comments34

Автономный способ обхода DPI и эффективный способ обхода блокировок сайтов по IP-адресу

Reading time7 min
Views739K
Провайдеры Российской Федерации, в большинстве своем, применяют системы глубокого анализа трафика (DPI, Deep Packet Inspection) для блокировки сайтов, внесенных в реестр запрещенных. Не существует единого стандарта на DPI, есть большое количество реализации от разных поставщиков DPI-решений, отличающихся по типу подключения и типу работы.

Существует два распространенных типа подключения DPI: пассивный и активный.

Пассивный DPI

Пассивный DPI — DPI, подключенный в провайдерскую сеть параллельно (не в разрез) либо через пассивный оптический сплиттер, либо с использованием зеркалирования исходящего от пользователей трафика. Такое подключение не замедляет скорость работы сети провайдера в случае недостаточной производительности DPI, из-за чего применяется у крупных провайдеров. DPI с таким типом подключения технически может только выявлять попытку запроса запрещенного контента, но не пресекать ее. Чтобы обойти это ограничение и заблокировать доступ на запрещенный сайт, DPI отправляет пользователю, запрашивающему заблокированный URL, специально сформированный HTTP-пакет с перенаправлением на страницу-заглушку провайдера, словно такой ответ прислал сам запрашиваемый ресурс (подделывается IP-адрес отправителя и TCP sequence). Из-за того, что DPI физически расположен ближе к пользователю, чем запрашиваемый сайт, подделанный ответ доходит до устройства пользователя быстрее, чем настоящий ответ от сайта.
Читать дальше →
Total votes 212: ↑212 and ↓0+212
Comments352

Магия SSH

Reading time11 min
Views506K
С SSH многие знакомы давно, но, как и я, не все подозревают о том, какие возможности таятся за этими магическими тремя буквами. Хотел бы поделиться своим небольшим опытом использования SSH для решения различных административных задач.

Оглавление:

1) Local TCP forwarding
2) Remote TCP forwarding
3) TCP forwarding chain через несколько узлов
4) TCP forwarding ssh-соединения
5) SSH VPN Tunnel
6) Коротко о беспарольном доступе
7) Спасибо (ссылки)
Читать дальше →
Total votes 115: ↑106 and ↓9+97
Comments75

Много бесплатных книг по программированию

Reading time7 min
Views346K
Читать дальше →
Total votes 202: ↑192 and ↓10+182
Comments42

Анатомия тысячи шрифтов

Reading time10 min
Views31K


Перевод статьи The anatomy of a thousand typefaces.

Даже годы спустя после выхода фильма Avatar остаётся кое-что, с чем не может справиться даже Райан Гослинг — использование шрифта Papyrus в логотипе фильма. В пародии, снятой Saturday Night Live, дизайнер шрифтов открывает меню, перебирает шрифты и случайным образом выбирает Papyrus.


Главная проблема выбора шрифтов — одновременно слишком много и слишком мало вариантов.

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

С другой стороны, библиотеки веб-шрифтов с сотнями и тысячами наименований поражают изобилием, что иногда приводит к парадоксальным выборам шрифтов.
Total votes 31: ↑31 and ↓0+31
Comments7

Правильные ответы по криптографии: 2018 год

Reading time10 min
Views21K
Перевод статьи, автор – Latacora

В литературе и самых сложных современных системах есть «лучшие» ответы на многие вопросы. Если вы разрабатываете встроенные приложения, то предлагают использовать STROBE и модный современный криптографический стек для аутентификации полностью из одиночных SHA-3-подобных функций губки. Советуют использовать NOISE для разработки безопасного транспортного протокола с формированием общего ключа аутентификации (AKE). Говоря об AKE, есть около 30 различных парольных AKE на выбор.

Но если вы разработчик, а не криптограф, то не должны делать ничего такого. Следует придерживаться простых и обычных решений, которые легко поддаются анализу — «скучных», как говорят люди из Google TLS.
Читать дальше →
Total votes 24: ↑24 and ↓0+24
Comments7

Как я взломал компании, связанные с криптовалютой, и заработал на этом $60 000

Reading time9 min
Views79K
image

Биткоин и криптовалюты в целом сейчас у всех на слуху. Моё знакомство с криптовалютами произошло примерно 5 месяцев назад, именно тогда я начал инвестировать в bitcoin и ethereum, курс на тот момент был по $1900 за btc и $89 за эфир. Для того, чтобы вы могли понять, какой профит я получил, скажу, что на момент написания статьи биткоин стоит $18 100, а эфир $830 и продолжает выходить на орбиту вместе с остальными криптовалютами. Подумал, что будет отлично посмотреть насколько безопасны сервисы, в которых я держу свои криптовалютные сбережения, торгую ими или отдаю в доверительное управление.
Total votes 95: ↑87 and ↓8+79
Comments42

«Прозрачный» HTTPS прокси для обхода блокировок Роскомнадзора

Reading time9 min
Views88K
Привет, хабровчане! Я думаю, многие в последнее время столкнулись с проблемами доступа к нужным ресурсам из-за попыток Роскомпозоранадзора заблокировать Телеграм. И я думаю, комментарии тут излишни. Факт — эти ресурсы ни в чем не виноваты, но они заблокированы. Проблемы возникли с Viber, ReCaptcha, GoogleFonts, Youtube и др. (кроме самого телеграма). Это случилось и в моей организации, причем некоторые невинные сервисы нужны нам как воздух. В какое-то время решалось все использованием прокси серверов, но они были нестабильны или вовсе отключались (их также блокировал наш великий и могучий РКН).

После прочтения кучи статей, пришла идея научить Squid пускать отдельные URL через Tor. Использовать ли такой метод, решать вам. Но скажу, что после реализации пропали все проблемы, которые были до этого. Кому интересно, идем под кат.
Читать дальше →
Total votes 56: ↑49 and ↓7+42
Comments144

«Прозрачный» Squid с фильтрацией HTTPS ресурсов без подмены сертификатов (х86, х64 — универсальная инструкция)

Reading time7 min
Views88K
Всем привет! Прошлая статья про прозрачное проксирование HTTPS с помощью Squid'a была вполне успешной. Приходило по почте множество отзывов об успешной установке данной системы. Но также и поступали письма с просьбами о помощи. Проблемы были вполне решаемыми. Но не так давно обратилась ко мне одна коллега с просьбой о помощи в установке этой системы на х64 архитектуре (Debian). Тут мы озадачились. Во-первых, оказалось, что прошлая статья непригодна для этого по причине отсутствия нужных исходников в репозитории Debian (там теперь 3.5.10). Найти нужные в первой статье Debian'овские исходники не удалось, а checkinstall выдавал странные ошибки. Во-вторых, хотелось более универсального решения, которое бы без проблем работало и на х64, и на х86, и (по-возможности) на других дистрибутивах. Решение было найдено. Получилось небольшое дополнение к предыдущей статье + некоторые уточнения. Данная инструкция позволяет скомпилировать как х86, так и х64 версии Squid'a и создать соответствующие пакеты. Инструкция будет разбита на несколько пунктов и подпунктов. Если интересно, идем под кат:
Читать дальше →
Total votes 15: ↑14 and ↓1+13
Comments75

«Прозрачный» Squid с фильтрацией HTTPS ресурсов без подмены сертификатов (x86)

Reading time9 min
Views258K
Не секрет, что в больших конторах тема фильтрации Интернета довольно актуальная. С этой задачей справляется немало программных и аппаратных решений. Но в настоящее время все те сайты, которые мы резали ранее, работают по протоколу HTTPS, т.е. порт 443. Как известно, данный протокол проследить, прослушать и т. п., невозможно. А любой кеширующий фильтрующий прокси-сервер, редиректор и т. п. фильтрует только HTTP, т.е. порт 80. Как же резать Вконтакте, Одноклассники, iphide.info и многие другие подобные сайты? Как блокировать доступ к личной почте в организации, если использование оной запрещено порядками в организации? Да, можно фильтровать по IP адресам, но они частенько меняются, да и на многих ресурсах несколько IP адресов. Блокировать их на уровне файрвола как-то совсем не православное решение, и не совсем удобное.

И вот, совсем недавно, мне один товарищ рассказал, что он поднимает у себя в конторе кеширующий прокси с фильтрацией HTTPS, меня это заинтересовало.
Читать дальше →
Total votes 29: ↑26 and ↓3+23
Comments140

Apache vs Nginx: практический взгляд

Reading time12 min
Views370K
Apache vs Nginx

Введение


Apache и Nginx — 2 самых широко распространенных веб-сервера с открытым исходным кодом в мире. Вместе они обслуживают более 50% трафика во всем интернете. Оба решения способны работать с разнообразными рабочими нагрузками и взаимодействовать с другими приложениями для реализации полного веб-стека.

Несмотря на то, что у Apache и Nginx много схожих качеств, их нельзя рассматривать как полностью взаимозаменямые решения. Каждый из них имеет собственные преимущества и важно понимать какой веб-сервер выбрать в какой ситуации. В этой статье описано то, как каждый из этих веб-серверов ведет себя при различных условиях.
Читать дальше →
Total votes 89: ↑69 and ↓20+49
Comments184

11 лучших шрифтов для программирования

Reading time3 min
Views267K
Много статей и сайтов сравнивают шрифты для программирования — всё это отличные ресурсы. Так зачем я опять поднимаю эту тему? Потому что сам всегда терялся в десятках шрифтов и не мог понять, какой лучше. Так что я опробовал много шрифтов и выбрал следующие для вас. Они довольно популярны и их легко получить. И самое главное, все эти шрифты бесплатны!

Я ранжировал шрифты по следующим показателям:

  • Насколько различимы схожие символы, такие как 0O, 1lI.
  • Легко ли читается шрифт (ширина строк, ширина/высота символов).
  • И мои личные предпочтения!

Все скриншоты сделаны в VSCode на одном фрагменте кода. Если не обозначено иное, то везде установлен размер "editor.fontSize": 14.
Читать дальше →
Total votes 56: ↑54 and ↓2+52
Comments117

Bash-скрипты, часть 4: ввод и вывод

Reading time9 min
Views399K
Bash-скрипты: начало
Bash-скрипты, часть 2: циклы
Bash-скрипты, часть 3: параметры и ключи командной строки
Bash-скрипты, часть 4: ввод и вывод
Bash-скрипты, часть 5: сигналы, фоновые задачи, управление сценариями
Bash-скрипты, часть 6: функции и разработка библиотек
Bash-скрипты, часть 7: sed и обработка текстов
Bash-скрипты, часть 8: язык обработки данных awk
Bash-скрипты, часть 9: регулярные выражения
Bash-скрипты, часть 10: практические примеры
Bash-скрипты, часть 11: expect и автоматизация интерактивных утилит

В прошлый раз, в третьей части этой серии материалов по bash-скриптам, мы говорили о параметрах командной строки и ключах. Наша сегодняшняя тема — ввод, вывод, и всё, что с этим связано.

image
Читать дальше →
Total votes 34: ↑28 and ↓6+22
Comments16

Подводные камни Bash

Reading time32 min
Views97K


В этой статье мы поговорим об ошибках, совершаемых программистами на Bash. Во всех приведённых примерах есть какие-то изъяны. Вам удастся избежать многих из нижеописанных ошибок, если вы всегда будете использовать кавычки и никогда не будете использовать разбиение на слова (wordsplitting)! Разбиение на слова — это ущербная легаси-практика, унаследованная из оболочки Bourne. Она применяется по умолчанию, если вы не заключаете подстановки (expansions) в кавычки. В общем, подавляющее большинство подводных камней так или иначе связаны с подстановкой без кавычек, что приводит к разбиению на слова и глоббингу (globbing) получившегося результата.


Читать дальше →
Total votes 143: ↑141 and ↓2+139
Comments63

PSR-7 в примерах

Reading time15 min
Views111K
Стандарт PSR-7 успешно завершён. На этой неделе были добавлены последние штрихи. И теперь версия 0.6.0 пакета http-message package готова к использованию. Попробуйте следовать этому стандарту в своих приложениях.

Я до сих пор слышу замечания как по поводу слишком упрощённого, так и по поводу слишком сложного изложения. Именно поэтому написан этот пост — чтобы продемонстрировать использование опубликованных рекомендаций и показать одновременно и их простоту, и полноту и надёжность, которые они предоставляют.
Читать дальше →
Total votes 34: ↑32 and ↓2+30
Comments39

Освоение Composer: советы и приемы использования

Reading time11 min
Views163K
Предлагаю читателям «Хабрахабра» перевод статьи «Mastering Composer – Tips and Tricks» за авторством Bruno Skvorc.

Composer logo

Composer произвел революцию в управлении пакетами в PHP и помог разработчикам по всему миру создавать независимый от фреймворков и разделяемый код. Но все же мало кто выходит за рамки основ его функционала, так что данная статья постарается осветить некоторые полезные приемы его использования.
Читать дальше →
Total votes 33: ↑27 and ↓6+21
Comments4

Как собрать бинарный deb пакет: подробное HowTo

Reading time15 min
Views225K
Сегодня я расскажу на абстрактном примере как правильно создать *.deb пакет для Ubuntu/Debian. Пакет мы будем делать бинарный. Пакеты, компилирующие бинарники из исходников здесь не рассматриваются: осилив изложенные ниже знания, в дальнейшем по готовым примерам можно понять суть и действовать по аналогии :)

В статье не будет никакой лишней возни «вручную»: формат пакета эволюционировал в достаточно простую, а главное — логичную структуру, и всё делается буквально на коленке, с применением пары специализированных утилит.

В качестве бонуса в конце статьи будет пример быстрого создания собственного локального репозитория: установка пакетов из репозитория позволяет автоматически отслеживать зависимости, и конечно же! — устанавливать всё одной консольной командой на нескольких машинах :)

Для тех, кто не хочет вдаваться в мощную систему установки софта в Linux, рекомендую посетить сайт проги CheckInstall: она автоматически создаёт deb-пакет из команды «make install» ;) А мы вместе с любопытными —
поехали дальше!
Total votes 73: ↑63 and ↓10+53
Comments40

Information

Rating
Does not participate
Registered
Activity