Как стать автором
Обновить
35
0

Пользователь

Отправить сообщение

Безопасность домохозяйки

Время на прочтение20 мин
Количество просмотров10K

Лет 15 назад, когда интернет выдавался по карточкам и измерялся в часах для нас было обыденным делом ходить в гости за играми, книгами и фильмами. У многих был один единственный диск, обязательно разбитый на c: и d:

Но никто не думал о том, какие именно файлы, валяющиеся на жёстком диске, были доступны на компьютере подключения. Конечно, ведь ты приходил к другу и думал, что наконец-то получишь свежие антивирусные базы, т.к. человек выписывал upgrade special, да и цель визита – фильмец в переводе гоблина. А он от тебя получал подборку нужных тулов вирусов с универа или фоток с зачётов.

Как бы полное доверие, ведь так? Никто не копировал файлы cookies или переписку icq и пр. Да и секретов тогда ещё не было. Всё это выглядит так, словно наши жесткие диски – большие флешки. А так и есть! Подобно флешке ты можешь забыть или потерять свои винчестер/телефон/ноутбук.

В студенчестве это было бы страшным событием, но больше финансово.
А если сегодня попадут в чужие руки твои устройства или облачная учётка, за что ты будешь переживать?

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

Думаю дальнейший мой текст для большинства людей из IT (и не только) не является актуальным, но кому-то будет полезным, я надеюсь

Читать далее
Всего голосов 22: ↑22 и ↓0+22
Комментарии29

Пробую .NET Core + Kubernetes + appmetrics + prometheus + grafana + jobs + health checks

Время на прочтение14 мин
Количество просмотров25K
Краткое знакомство с kubernetes для разработчиков на примере разворачивания простого шаблонного сайта, с постановкой его на мониторинг, выполнением джобов по расписанию и health checks (все исходники прилагаются)

Установка Kubernetes
Установка UI
Запуск своего приложения в кластере
Добавление кастомных метрик в приложение
Сбор метрик через Prometheus
Отображение метрик в Grafana
Выполнение задач по расписанию
Отказоустойчивость
Выводы
Заметки
Список литературы
Читать дальше →
Всего голосов 21: ↑20 и ↓1+19
Комментарии4

PostgreSQL: PipelineDB — агрегирующие запросы в режиме реального времени

Время на прочтение5 мин
Количество просмотров11K
Вас когда-либо просили посчитать количество чего-то на основании данных в бд за последний месяц, сгруппировав результат по каким-то значениям и разбив всё это ещё по дням/часам?
Если да — то вы уже представляете, что вам придётся написать что-то вроде такого, только хуже

SELECT hour(datetime), somename, count(*), sum(somemetric)
from table
where datetime > :monthAgo
group by 1, 2
order by 1 desc, 2

Время от времени самые разнообразные подобные запросы начинают появляться, и если один раз стерпишь и поможешь — увы, обращения будут поступать и в будущем.

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

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

Так вот — это умеет делать расширение PipelineDB

Демо с их сайта, как это работает


Читать дальше →
Всего голосов 25: ↑25 и ↓0+25
Комментарии24

Unrestricted File Upload at Apple.com

Время на прочтение2 мин
Количество просмотров9.9K
Внимание — это фривольный перевод заметки о том, как именно Jonathan Bouman нашёл публичный AWS S3, который использовался на одном из поддоменнов apple.com. Плюс заметка хороша тем, что наглядно демонстрирует пользу от нескольких маленьких утилит в совокупности с терпением.


Читать дальше →
Всего голосов 31: ↑31 и ↓0+31
Комментарии15

Postgres auto_explain: автолог плана запроса

Время на прочтение3 мин
Количество просмотров15K
Очень коротко покажу, как настроить PG для логирования планов выполнения запросов и как потом, не искать по логам всё, что медленно исполнялось
Читать дальше →
Всего голосов 24: ↑24 и ↓0+24
Комментарии18

Генерация PDF для скачивания конфигов сервера

Время на прочтение3 мин
Количество просмотров5.9K
Есть замечательный проект hiqpdf.

Умеет html качественно в pdf или картинки превращать

Но по дефолту не учитывает тот факт, что в html можно вставлять js/iframe, которые могут быть использованы не по назначению.

Ну и я не долго думая попробовал это на их же сайте
Читать дальше →
Всего голосов 14: ↑12 и ↓2+10
Комментарии0

Postgres Enum

Время на прочтение4 мин
Количество просмотров50K
Postgres поддерживает понятие перечислений (enum)

На скорую руку попытался понять что это для бд и для клиента вообще:

  1. enum — статический упорядоченный набор значений
  2. Значение enum занимает на диске 4 байта
  3. Регистр имеет значение, т. е. 'happy' и 'HAPPY' — не одно и то же
  4. Разные enum сравнивать меж собой нельзя (можно, если привести к общему типу или запилить операторы для них)
  5. Невозможно в колонку перечисляемого типа подсунуть значение, которое отсутствует в самом перечислении

Ок, вроде всё как обычно, только в Postgres
Читать дальше →
Всего голосов 15: ↑13 и ↓2+11
Комментарии27

Доступ root через TeamCity

Время на прочтение4 мин
Количество просмотров15K
GitHub оказался под крупнейшей DDoS атакой, немного обсудили в общем рабочем чате вечерком. Оказалось, что мало кто знает о замечательных поисковиках shodan.io и censys.io.

Ну и я интересу ради, прям для вау эффекта поискал TeamCity (далее тс), т.к. помню прикольный баг с регой в старых версиях (был исправлен в версии 9.0.2 от января 2015 года).

Как оказалось, его даже не нужно было применять, т.к. во многих тс админы не закрывали регистрацию, а на некоторых доступен был вход под гостем.
Читать дальше →
Всего голосов 44: ↑42 и ↓2+40
Комментарии9

Информация

В рейтинге
3 895-й
Зарегистрирован
Активность