Задать вопрос
  • Как создать прокси сервер на своём компьютере?

    SignFinder
    @SignFinder
    Wintel\Unix Engineer\DevOps
    Чтобы создать прокси сервер на своем компьютере - нужно установить и запустить прокси сервер на своем компьютере
    Ответ написан
    Комментировать
  • Что это такое и как защититься?

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

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

    Вообще, если ваш сетап на виртуальных машинах в повторяемой среде и с декларативной конфигурацией вроде кубера или докера, то вы легче сможете пережить всякие такие факапы.
    Схема такая.
    Есть признаки взлома - бэкап логов, снапшот базы, бэкап стораджа, остановка сервисов (если позволяет продакшн), анализ атаки и последствий. Устраняем уязвимость по вектору атаки (гугление по логам и курение тредов), правим конфиги развёртывания и запускаем прод. Потом долго и тщательно разбираемся по логам, снапшотам и бэкапам что затронуто. Делаем тестовый чистый сетап по старой конфигурации и сравниваем пофайлово с атакованной системой, выясняем в какие места вмешались злодеи. Дифаем базу и смотрим на подозрительные различия. Делаем выводы, объявляем об утекших данных, если есть такие признаки (чтобы не подставлять пользователей), принимаем превентивные меры против похожих векторов атак.

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

    Это взгляд дилетанта по безопасности, если чего пропустил -- поправьте. Если где не прав -- расскажите.
    Ответ написан
    3 комментария
  • Массовое создание профилей Chrome?

    @starleaps Автор вопроса
    Ни в русскоязычном, ни в англоязычном интернете, не нашел ни малейшей подсказки, что можно сделать. За последней надеждой обратился к ChatGPT, и, на удивление, он практически с первой попытки выдал мне рабочий скрипт для PowerShell. Ура!

    Скрипт автоматически создает ярлык на рабочем столе для каждого пользователя. Если вам это не нужно - удалите ту часть скрипта


    # Укажите путь к исполняемому файлу Google Chrome
    $ChromePath = "C:\Program Files\Google\Chrome\Application\chrome.exe"
    
    # Цикл для создания профилей
    for ($i=1; $i -le 30; $i++) {
        # Имя профиля
        $ProfileName = "Profile$i"
        
        # Запуск Google Chrome с созданием нового профиля
        Start-Process -FilePath $ChromePath -ArgumentList "--profile-directory=$ProfileName" -NoNewWindow
    
        # Задержка 1 секунда
        Start-Sleep -Seconds 1
    
        # Создание объекта Shell для работы с ярлыками
        $shell = New-Object -ComObject WScript.Shell
    
        # Путь к ярлыку на рабочем столе
        $desktopPath = [System.Environment]::GetFolderPath('Desktop')
        $shortcutPath = Join-Path -Path $desktopPath -ChildPath "$ProfileName.lnk"
    
        # Создание ярлыка
        $shortcut = $shell.CreateShortcut($shortcutPath)
        $shortcut.TargetPath = $ChromePath
        $shortcut.Arguments = "--profile-directory=$ProfileName"
        $shortcut.Save()
    
        # Закрытие профиля
        Stop-Process -Name chrome -Force
    }


    Что с этим делать: копировать, вставить в блокнот, указать нужное количество профилей (у меня в скрипте их 30) сверить папку, в которой у вас установлен хром. Если не совпадает - указать свой путь. Далее просто сохранить с расширением .ps1, затем просто по нему клацнуть и всё будет работать. Если не работает. попробуйте запустить так:
    Открыть PowerShell и вставить:
    Set-ExecutionPolicy RemoteSigned
    Далее написать cd и указать папку, в которой находится ваш только что созданный файлик с расширением .ps1
    Например:
    cd c:\Users\Sunset\Desktop
    Здесь имя диска должно быть написано с маленькой буквы!

    И, наконец, теперь запускаем сам скрипт. Для этого пишем точку и слэш .\ и БЕЗ ПРОБЕЛА вставляем название файла с расширением.
    Например:
    .\ChromeUsers.ps1

    Всё.
    Ответ написан
    Комментировать
  • Как выйти из двух пользователей в Linux, и при этом выполнить команду один раз?

    @rPman
    убить оба шела, сессия автоматически завершится

    Скрипт для этого пиши сам
    ps
    покажет список текущих процессов сессии, а там обычно только sudo и bash (ну и работающий ps), так получишь pid текущего bash
    pstree -s pid_текущего_шела -p
    покажет в одной строчке всех предков от указанного процесса, например так
    systemd(1)───xfce4-terminal(3933)───bash(5169)───sudo(1726858)───sudo(1726872)───bash(1726873)───pstree(1732257)

    тебе достаточно убить два последних sudo и bash (или чем ты там пользуешься) с конца этого списка
    например так
    kill -KILL 1726873 1726872 1726858 5169
    Ответ написан
    Комментировать
  • Как стимить видео с сервера с оверлеем комментариев?

    Vapaamies
    @Vapaamies
    Психанул и снес свои ответы не отмечающим решения…
    Когда-то жег свой одноядерный Athlon64 Venice таким стримом (из-под XP — OBS не работал):
    ffmpeg -framerate 10 -f gdigrab -thread_queue_size 128 -offset_y 80 -video_size "1280x900" -i desktop -i X:\Projects\LogoTV.png -f dshow -framerate 10 -video_size 160x120 -pixel_format yuyv422 -rtbufsize 32M -i video="USB web camera" -i X:\Projects\LogoProject.png %1 %2 -filter_complex "[0]pad=ih*16/9:ih:(ow-iw)/2:oh-ih[a]; [a][1]overlay=W-w:8:format=rgb[b]; [b][2]overlay=0:H-h:format=rgb[c]; [c][3]overlay=W-w:(H-h)/2:format=rgb %filter%" -f dshow -rtbufsize 16M -i audio="Virtual Cable 1" -acodec libmp3lame -ab 112k -joint_stereo 0 -af "volume=2" -vcodec libx264 -pix_fmt yuv420p -keyint_min 3 -vb 1200k -bufsize 6M -preset ultrafast %3 %4 %5

    Сжег.
    Ответ написан
    2 комментария
  • Как правильно сформулировать документ на основании которого пишется частичное техническое задание, если основание было устным?

    @mordo445
    Любое устное обоснование можно считать совещанием. Можете указывать в ваших документах "протокол совещания", "протокол выездного совещания" (если оно прошло в курилке), "meeting conclusion". Протокол можно как рекомендует Snakecharmer подбить в мессенджере.
    Ответ написан
    1 комментарий
  • Как правильно сформулировать документ на основании которого пишется частичное техническое задание, если основание было устным?

    pindschik
    @pindschik
    ФЫВА ОЛДЖ
    Хреновое ТЗ - результат ХЗ.
    Заказчик пишет ТЗ исходя из того, чтоб иметь возможность для маневров и не оплачивать доп. работы исполнителя, при появлении подводных камней.
    Исполнитель хочет ТЗ, которое максимально опишет конкретику и спорные ситуации (если честный), или напротив - нечто расплывчатое, чтоб любая галиматья потом ему соответствовала.
    Вы заказчик или исполнитель?
    А оформляется ТЗ как часть конкурсной документации на тендере, или как приложение к договору. Как вы его назовете - уже дело десятое.
    Ответ написан
    Комментировать
  • Как установить и настроить кучу пакетов в debian через скрипт, и есть ли такие готовые скрипты?

    aapanel
    И управление docker
    и nodejs
    и оркестратором
    1 скрипт 1 Строчка судя по тз вам хватит, кроме vpn ибо это точно не к хостингу.
    ну у впн тоже есть готовые решения, но я не знаю вашей топологии.
    Самый простой из кроссплатформенных softether vpn - в плане функционал настройки.
    На винде отличный GUI
    Ответ написан
    Комментировать
  • Где посмотреть wi-fi адаптер с поддержкой mode monitor?

    CityCat4
    @CityCat4
    Дома с переломом ноги
    Нет, не нужен :) Нужно снести то, в чем нифига не понимаете - и вернуться уже к майнкрафту :)

    Mode monitor - режим мониторинга трафика, "беспорядочный" захват. В таком режиме карта, ессно не работает :) она только "слушает". И выясняется это пятью минутами гуглинга.
    Ответ написан
    Комментировать
  • Нужно ли взять деньги за оценку больших ТЗ веб-разработчику?

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

    Дай скидку, если в итоге решите сотрудничать.

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

    Если скажет что другие исполнители не берут деньги за это - напомни про скидку и скажи, что это тоже работа и оно позволяет точнее предсказать цену и, меньше затягивать сроки, и не делать лишних правок ближе к концу проекта.
    Ответ написан
    1 комментарий
  • Какой инструмент может превратить схему БД в панель управления или админку?

    Captain
    @Captain Автор вопроса
    Кстати, нашел под php PDOCRUD решение, довольно прикольно вроде. Еще бы под React что-то такое найти.
    Ответ написан
    2 комментария
  • Как обойти cloudflare selenium?

    dimonchik2013
    @dimonchik2013
    non progredi est regredi
    искать дальше,
    нанимать фрилансеров за результат,
    смотреть как делают другие

    искать там где знают что и как делать чтобы работало - у кулхацкеров, у инстаграмоводов (да, там не не CF но там непалеваность ботов) и т.п.

    короче - ищите и обрящете

    P.S. у меня работает метод которому года два уже, но - парсинг неспешный буквально запрос в 1-5 минут, там немного и нечасто, при много и часто - другие технологии
    Ответ написан
    2 комментария
  • Как лучше сделать сайт с точки зрения заказчика?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Конструкторы - это удел нижнего сегмента рынка, населённого мелкими заказчиками и низкоквалифицированными программистами. Подобные вопросы тут задают год за годом, но ничего принципиально не меняется.
    Ответ написан
    8 комментариев
  • Какая библиотека идентична с requests и bs4, но парсит сайт с JS?

    requests решает всего одну задачу - отправку http запросов.
    bs4 - только html парсит.

    Если тебе нужен парсинг и выполнение js - тебе нужен программно-управлякмый браузер.
    Как пример - уже упомянутый selenium или playwright.

    Переписать уже написанный код тебе в любом случае придётся.
    Ответ написан
    Комментировать
  • Как найти найти источник seo-вируса на сайте?

    opium
    @opium
    Просто люблю качественно работать
    В зависимости от рефера, юзерагента и прочих параметров сайт показывает свой контент
    Обычно достаточно посмотреть все последние измененны1 файлы по дате чтобы найти вирус
    Ответ написан
    3 комментария
  • Как сделать автоматический деплой веб-сервиса на поддомен?

    ipatiev
    @ipatiev
    Потомок старинного рода Ипатьевых-Колотитьевых
    Если нормально сформулировать вопрос, то речь идет о банальном деплое
    И автору бы сначала поучиться разворачивать свое единственное приложение, а потом уже начинать мечтать про междупланетный шахматный центр на тыщу инстансов.

    При том что задача в общем случае решается элементарно. Добавлением еще одной секции в плейбук того же Ansible. Что даст автору ту самую заветную "одну кнопку". А точнее две - развернуть новый инстанс и обновить все существующие.

    А если еще внимательнее посмотреть на проблему, то возникает закономерный вопрос - а зачем автору вообще миллион виртуальных хостов, если речь идет о банальных поддоменах? Которые прекрасно реализуются в рамках единственного виртуального хоста. То есть можно либо добавить поддержку субдомена в текущее приложение, либо, на худой конец, сделать multi-tenant приложение, где у каждого поддомена будет своя БД.
    При этом вся кнопка будет заключаться в добавлении имени субдомена в базу данных
    Ответ написан
    3 комментария
  • В чем отличие ngnix от golang?

    @deliro
    nginx — это реверс-прокси
    go — это яп.

    в чём вопрос-то?

    то как go может работать на ngnix?

    nginx проксирует запрос в сервер на го, который пишет программист. Цепочка проксей может быть сколько угодно большой. Ты можешь поставить nginx -> nginx -> caddy -> nginx -> gin, никто не запрещает.
    Ответ написан
    3 комментария
  • Как парсить с wildberries?

    dimonchik2013
    @dimonchik2013
    non progredi est regredi
    делайте наглость по возрастающей

    сначала без прокси, вдруг прокатит

    потом с умом: там, поди, цена не каждые 5 сек меняется

    ну и т.д.
    Ответ написан
    Комментировать
  • К какому специалисту обратиться?

    @rPman
    Реверсить протокол, судя по тому что говорящий сумел узнать url, и он http (не шифрованный), значит сделать это можно не занимаясь отладкой приложения (а это сразу понижает требования к уровню исполнителя), т.е. поставив любой снифер трафика или прозрачную прокси между приложением и сервером.

    Есть засада - будь готов оплачивать все что потребует приложение для своей работы (например аккаунт оплатить или что там еще потребуется для запуска), так как когда реверсишь протокол, потребуется хотя бы один раз прогнать весь функционал приложения по кругу, хотя бы в пределах доступа к данным, которые тебе нужны.

    Если разработчики приложения начнут вставлять палки в колеса, мешать реверсу, создавать обфусицировать передаваемые данные и т.п., это может повысить требования к специалисту до 'заниматься отладкой', к сожалению сразу не определишь, пока не попробуешь, поэтому сначала дай задачу - проанализировать возможность определить возможность (с отчетом о методике), сложность и стоимость работы, и уже потом выбирать исполнителя.

    upd. там помимо windows приложения, есть android apk версия, ее декомпиляция проще
    я натравил на него jbart и вижу что приложение написано на lua или очень активно его использует, их тоже можно декомпилировать (но пропатчить уже не получится), просто поиском указанных api http endpoint не увидел (возможно используется иной или как то не тривиально сокрыто)

    код огромный, под сотню мегабайт декомпилированных исходников, плюс полторы тысячи файлов luac
    Ответ написан
    Комментировать
  • Как написать нейросеть способную генерировать текст?

    @rPman
    Ты как будто отсутствовал последний год и пропустил бум ChatGPT. Этот алгоритм нейронных сетей (Generative Pre-trained Transformer) был разработан в 2017-ом 'гуглом' и 'доведен до ума' публично в OpenAI (их chatgpt4 сейчас самый продвинутый универсальный генератор текста, проявляющий признаки интеллекта).

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

    На текущий момент самая крутая из доступных нейронных сетей (доступные предобученные веса сети), которую можно доучивать под свою задачу или даже пользоваться как есть, - это фейсбуковская llama2 (бесплатная, с очень либеральной лицензией, позволяющая коммерческое использование), ее можно запускать на процессоре на десктопной машине с меньше 64гб ram (скорость от 1токен в секунду, слово это 1-7 токенов) с помощью llama.cpp или на машине с GPU, суммарной емкостью vram от 80Gb (я не нашел точные минимальные требования, квантизация 8бит доступна в штатном коде llama а 4-битную тоже можно но я не уверен какие проекты уже поддерживают llama2).

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

    p.s. самостоятельная разработка (сбор обучающих данных и обучение) с нуля подобного проекта невероятно дорогая, слабые версии имеют оценку стоимости обучения (при наличии специалистов, которые уже стали на вес золота) в десятки миллионов баксов только на оборудование (тоже дефицитное, так как используется в основном кластеры на основе оборудования nvidia, которые монополисты в ИИ и рисуют 10х стоимость не моргнув глазом а еще искусственно не расширяют производство чипов при наличии высокого спроса)

    Но если взять уже обученную сетку (веса) собрать небольшой датасет текстов под свою задачу, то тюнинг будет достаточно дешевым, вот еще со старой llama так делали
    Ответ написан
    1 комментарий