Blog | Блог _AMD_
Перейти к основному содержимому

· 7 мин. чтения

Я занимаюсь Garry's Mod'ом с 2015 года, начиная с администрирования чужого сервера и до создания своего проекта, где большинство разработок были самописны (не куплены), а сервера проекта в свое время были в топ-10 мира по рейтингу GameTracker.

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

· 1 мин. чтения

putty - наверное, самый популярный SSH клиент, о котором знает каждый, кто имел дело с SSH. Но он не единственный бесплатный и несколько лет назад я полностью перешел с него на xShell, получив ряд преимуществ

Окно управления сессиями в xShell

xShell как и Putty бесплатен (для домашнего использования), но в отличии от Putty имеет вкладки, удобное управление сессиями, возможность ресайзить рабочие пространства, в нем есть сниппеты, современный дизайн, управление паролями, и супергибкая настойка всего и вся. Пожалуй, единственное, чего в нем не хватает это кроссплатформенности.

Сессии я синхронизирую при помощи Яндекс.Диска. С этим тоже нет никаких проблем

Скачать xShell

Скачать xShell можно с официального сайта. Для скачивания нужно указать свой email, на который придет ссылка. Можно использовать сервисы, вроде 10minmail, чтобы не указывать свою почту

· 2 мин. чтения

На яндексе можно сделать почту для домена, а затем сбор почты с несуществующих ящиков в одно место. Таким образом я сделал, что на каждом сайте у меня разные мыльники. Например insta@lol.com. И если кто-то начинает слать всякую дичь, то я сразу знаю откуда она пошла


У Яндекса есть интересный сервис Яндекс.Коннект (раньше Yandex PDD), который позволяет бесплатно делать почтовые ящики на своем домене, используя при этом интерфейс Яндекс Почты.

По простому говоря, это админка, которая позволяет в пару кликов клепать ящики для себя или сотрудников вида kek@lol.com

И у Яндекса есть интересная фишка

Сбор писем с несуществующих ящиков

У почты для домена есть настройка сбора писем с несуществующих ящиков. Например, если у вас создан только _kek@lol.com_ и _heh@lol.com_, а письмо пришло на _mda@lol.com_, то оно попадет на какой-нибудь _collector@lol.com_ или что угодно другое, что вы укажете в качестве адреса для сбора "потерянных" писем

Проблема

Сегодня друг прислал мне забавное сообщение от "Следователя"

Внутри классическая схема вымогательства денег: "у нас есть пруфы, что вы мудак и мы вас накажем, если вы не заплатите бетховены".

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

Если у вас 1-3 почтовых ящика, то можете вбить их ради интереса на этом сайте и узнать, слили ли ваши данные

Решение

При регистрации на сайте указывайте для него уникальную почту, например _insta@lol.com для инстаграма_. теперь, если вам придет угроза или спам на этот ящик, то вы будете знать, кто в этом виноват :)

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

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

· 5 мин. чтения

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

· 3 мин. чтения

Я долго искал удобный кроссплатформенный SSH клиент для Mac OS, в котором можно было бы использовать те же конфиги, что и на Windows, но спустя всякие Remote Desktop Manager, Royal TS и топовые клиенты так и не нашел то, что мне нужно, смирившись с мыслью о том, что придется все-таки заморачиваться и вводить данные серверов везде по отдельности.

· 2 мин. чтения

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

В свое время, чтобы не устанавливать лишний софт себе на телефон, я использовал Steam Desktop Authenticator, который позволял авторизироваться через коды, а также отправлять трейд офферы, но с покупкой MacBook жизнь немного усложнилась – вышеуказанное приложение только для Windows.

Тогда я нашел плагин для Chrome, который умел генерировать коды авторизации, хотя и не умел подтверждать офферы, что не было для меня проблемой. Все было бы хорошо, если бы я мог пользоваться им с телефона, а это было довольно востребовано в моем случае. Кстати, плагин, похоже, удалили с Chrome Store.


Проблемы плагина, мобильного и десктопного приложения решились благодаря Telegram ботам. Телеграм есть везде: и в браузере и на телефонах и на компе, а инфа о генерации 2FA кодов стима есть в открытом доступе, так что я решил написать свой велосипед.

Steam Guard 2FA TOTP

Мой примитивный бот, который только то и умеет, что генерировать коды авторизации. Трейды я все еще подтверждаю через комп, но это так редко мне нужно, что я не чувствую ни капли дискомфорта.

Бот написан на Lua, работает прямо на моем Garry's Mod сервере, требует исключительно shared_secret и больше ничего. Ни паролей, ни даже стим логина. Даже если я захочу украсть чей-то shared_secret – я все равно не буду знать чей он, не говоря уже о пароле и никак не смогу его применить.


Вообще, я люблю писать всякие штучки-дрючки, используя один лишь Lua и свой игровой сервер (больной ублюдок). Возможно, вас заинтересуют и другие боты, которые работают рядом с этим :)

· 2 мин. чтения

Насчет __mode совсем недавно узнал как работает. Штука очень классная и полезная.

По-простому объясняя, нужно понимать, что сборщик мусора считает мусором те данные, на которые больше нигде не осталось ссылок.

Сами ссылки ты устанавливаешь, когда например добавляешь данные в таблицу. Пример:

local arr = {}
QWE[1] = arr

Теперь на таблицу arr установлена одна сильная ссылка. Если сделать QWE[1] = nil, то ссылок больше не останется и сборщик потом удалит эту табличку

__mode позволяет устанавливать таблицам инструкцию, что закрепленные за ней ключи или значения не будут создавать сильные ссылки (они называются слабыми)

Если мы сделаем setmetatable(QWE, {__mode = "v"}) (тем самым сказав, что значения таблицы QWE не считаются сильными ссылками) и повторим наш QWE[1] = arr, то сборщик мусора зачистит наш arr и при print(QWE[1]) после работы сборщика отпринтит nil

Слабыми можно делать и ключи, тогда нужно указать mode "v". Или и ключи и значения: "kv".

Реальное применение

Я узнал об этом совсем недавно, но успел применить так: в новой версии IGS полностью переписан API framework. Репитер упавших запросов сделан отдельным модулем. Так вот тот репитер повторяет запросы, которые по некоторым причинам провалились, но делает это не более 15 раз.

В качестве счетчика используется ключ-значение таблица, где ключом выступает сама функция, а значением число раз, которое я пытался ее выполнить. Напоминаю, что в Lua функции передаются ссылками. Так вот ключи этой таблицы я сделал слабыми ссылками и если функция удаляется сборщиком где-то из вне, то ее счетчик в таблице так же автоматически очищается и мне не приходится следить за этим "вручную".

· 5 мин. чтения

Рассказ о нюансах, которые возникли при заказе, разработке и производстве персональных мундштуков. Больше всего времени и лишние расходы произошли именно из-за "нюансов"

Недавно мой хороший знакомый открыл свою кальянную и мне захотелось сделать для нее подарок - набор персональных мундштуков.

· 2 мин. чтения

После Праги Загреб был глотком свежего воздуха - именно таким я представлял европейский город еще до первого раза за границей

Хорошие дороги, приветливые люди, маленькие домики, интеграция всяческих технологий во все. Есть даже биткоин терминалы!! Да это же настоящий киберпанк, Карл.