• Для чего нужен мониторинг доступности сайтов? Обзор сервиса ХостТрекер
    +4
    сделайте сами, а-ля
    $ hydra -l USER -p PASSWORD -t 2 111.111.111.111 rdp | grep -F 'USER' || echo "alarm rdp" | mail -s "alarm rdp" alarm@example.com
    

    или я чего-то не понял в задаче?
  • Летнее обновление на Хабре: «Администрирование», вес голоса и немногое другое
    0
    Безусловно, элемент погрешности при этом присутствует, но в большинстве случаев это сработает. Для себя я так и сейчас определяю качество статьи, просто лень считать в уме.
  • Летнее обновление на Хабре: «Администрирование», вес голоса и немногое другое
    +4
    А я бы добавил показатель «полезность статьи» — отношение просмотров, к добавленным в избранное
    image
    т.е. статью добавил в избранное каждый 63-й читатель. Это намного качественнее(чем рейтинг статьи) свидетельствует о пользе изложенного для целевой аудитории.
  • Анонс публичной бета-версии NGINX Amplify
    0
    2 VBart
    Валерий, прокомментируйте, пожалуйста, когда ждать версию под FreeBSD и с чем связан unsupported?
  • SBC+VPN+Tor+obfsproxy в кармане
    0
    в идеале должно быть как-то так
    Заголовок спойлера
    image

  • SBC+VPN+Tor+obfsproxy в кармане
    0
    Если не лень, сделайте тест — https://2ip.ru/privacy/
    Лучше из нескольких браузеров.

    Особенно интересуют:
    — Утечка IP через Flash
    — Утечка IP через WebRTC

    Совпали ли с реальным?
  • Дёргаем цепочку сертификатов
    0
    Не работал с криптопро. На сколько понимаю они в pfx или pb7? В openssl для этих посткоманд не предусмотрен парсинг сведений, т.е. опция -text недоступна.
    Можно попробовать сделать, например, так (для pfx):
    $ openssl pkcs12 -in cert.pfx | openssl x509 -noout -text
    

    вероятно запросит пароли.
    или так без извлечения ключа:
    $ openssl pkcs12 -in cert.pfx -nokeys | openssl x509 -noout -text
    
  • SBC+VPN+Tor+obfsproxy в кармане
    0
    Не на 40 из тех соображений, что у меня вокруг довольно много других точек доступа. Не хотел, чтобы интерферировали, и вроде бы обычный hostapd не дает включить 40, если вокруг есть точки на такой же частоте.

    Да, нужно патчить hostapd, я делал зимой для 2.5, если интересно могу поискать.
  • SBC+VPN+Tor+obfsproxy в кармане
    +2
    Привожу пример своих настроек:
    /etc/hostapd/hostapd.conf
    Заголовок спойлера
    interface=wlan0 #Интерфейс
    driver=rtl871xdrv #Используемый драйвер
    ssid=AP #Название точки доступа
    hw_mode=g #Стандарт работы точки доступа
    channel=6 #Частотный диапазон
    macaddr_acl=0 #Не использовать списки доступа
    auth_algs=1 #Использовать WPA
    wpa=2 #Версия протокола
    wpa_passphrase=raspberry #Пароль для подключения
    wpa_key_mgmt=WPA-PSK #Метод аутентификации
    wpa_pairwise=TKIP #Алгоритмы работы с ключами и шифрованием
    rsn_pairwise=CCMP


    Почему не на 40 MHgz?

    Как обстоят дела webrtc, flash утечками?
  • Comment from a drafted post.
  • Comment from a drafted post.
  • Ищем замену Digital Ocean среди отечественных хостинговых компаний
    +1
    Несмотря на все плюшки OVH там много своих проблем. Самое жуткое это техподдержка. У меня есть тикет открытый 20/02/2016 14:41 на который первый ответ пришёл 11/04/2016 10:42. И это вопрос по недоступности сервера! Причём, как правило, первые 5 ответов даются крайне некомпетентыми сотрудниками.
    Неоднокартно выделяемые подсети не назначались серверу. Сейчас по этой проблеме вновь висит открытый тикет уже 3-и сутки.
    При аппаратных падениях вообще жуть. Раз 7 сервер падал так что не откликался ни ipmi, ни ребут из панели и через api не выполнялся. И раза 3 при этом первым ответом рекомендовали проверить правила файервола.
  • Магия, сломанный калькулятор или просто «развод»?
    +1
    Ну по поводу того как при платеже на 1 руб через li*pay снимается 101,05 руб я уже многократно писал.
  • Магия, сломанный калькулятор или просто «развод»?
    +1
    Стоит же в Таллине bitcoin-банкомат и курс приемлемый (по крайней мере в прошлом году как на btc-e +-2%) и не кинет и не грохнет. Да, не анонимно, но если кому надо, то иди снимай.
  • Магия, сломанный калькулятор или просто «развод»?
    +16
    По-моему, статью писать не стоило.

    Почему же? До и После написания статьи две совершенно разные ситуации. Если До можно было делать вид, что о баге не было известно, то После продолжая работу в таком режиме обменники показывают, что их действия осмысленны и умышленны, а мониторинг в лице https://changeinfo.ru зная о баге соучаствует в процессе обмана не исключая их из рейтинга, да ещё и говоря "Все они заслуживают вашего полного доверия и проверены нашими менеджерами."
  • Comment from a drafted post.
  • Comment from a drafted post.
  • Comment from a drafted post.
  • Comment from a drafted post.
  • Как перезагрузить сервер?
    0
    «зачем доверять production сервер» фигулинке под usb?

    Не только под usb. Те самые перезагрузки постом выше вызваны устройством включенным в LPT, но при этом забыли учесть в какое состояние переходит lpt при перезагрузке. В итоге рекурсивно перезагружали сами себя.
    Как минимум, что-то сетевое, не?

    Не обязательно. Зависит от бюджета и задачи.
  • Как перезагрузить сервер?
    0
    Бывает и часто. У нас был случай(именно по этому реле) когда из-за программной ошибки оно должно было сработать около 5000 раз за 16 дней (попало на праздники и не могли попасть в помещение где стояла станция). Но, судя по логам, перезагрузки прекратились (контакты залипли) на ~1500 сработках. При этом по заявлению производителя цифры сработок даже не в 5-м порядке.
    Я не обощаю — старые добрые РЭС-9 работали по 30 лет и более. Да и у меня в 97 году в обслуживании была координатка выпуска 62-го, а там все контакты «на воздухе». Т.е. не все ЭМР «шлак», но зачем доверять production сервер устройству зависящему от натяжения струн/материалу площадок, если альтернатива на доллар/два дороже?
  • Как перезагрузить сервер?
    0
    На самом деле даже бренды типа kramer и сейчас используют электромеханические реле, но это скорее дань долгосрочным договорным обязательствам. Исключением могут служить ртутные герконы.
    В остальном, если не крично сопротивление замкнутой контактами цепи, альтернативы твердотельным реле нет.
  • Как перезагрузить сервер?
    +2
    проблем 2:
    — перегорание обмотки
    — залипание контактов
    Если первая проблема больше критична при перегрузках/ударах молнии, то вторая весьма актуальна для этих реле. С учётом того что контактная площадка не из благородных металлов и зазор очень мал залипание начинается уже при 1000 сработках. На вышеприведённом по ссылке ребутаторе мы использовали имено эти реле (серии IM). Через год 30% были залипшими. Перевод на твердотельные (того же axicom) решил проблему.
    PS: с проблемой залипания контактов знаком не по наслышке и до того. 4 года отработал механиком на координатных АТСК 50/200. Даже серебрянные контакты и палладиевые струны «липнут» при дрожании/искрении.
  • Как перезагрузить сервер?
    0
    Да дело даже не в 2А-ом токе. Доверять управление сервером электромеханической релюшке (включенной в другой сервер?) можно только если уж совсем ничего ценнго на управляемом сервере нет.
    Сам использовал самопальный ребутатор, но он управлял тв-тюнерами бытового уровня для которых перезапуск по питанию только на пользу.
  • Как перезагрузить сервер?
    +1
    reboot использовать не кошерно, а надо использовать 'shutdown -r'

    Это справедливо для FreeBSD, при неаварийной перезагрузке нужно использовать shutdown -r
    При этом сначала быдет выполняться /etc/rc.shutdown для корректного завершения процессов.
    При reboot просто всем пошлётся sigterm, подождёт (по дефолту вроде 30 сек), потом sigkill
  • Tracert vs Traceroute
    +1
    Небольшой оффтоп.
    сложилось мнение, что это один из самых распространённых вопросов на собеседованиях

    Напомнили вопросы на одном из собеседований (лет 10 назад, компания сейчас с Громким именем):
    1) кто автор утилиты traceroute?
    2) почему Ван выбрал порт 33434 (и как его легко запомнить)?
    Ответил на оба, но работать к ним не пошёл. Нахрена мне это знать как простому админу?
  • Tracert vs Traceroute
    0
    Утилита, которой можно указать порты TCP или UDP занимается tcptraceroute

    Возможность выбора диапазона портов была в первой же версии traceroute, по крайней мере во FreeBSD 1.0 уже присутствовала. Вот выбор протоколов появился только с FreeBSD 4.0.
    в то время как traceroute стандартная утлилита для любого unix-сервера

    Если правильно ошибаюсь, то в CentOS-7 её нет.
  • Tracert vs Traceroute
    +8
    Надеюсь мы разобрались в работе данных утилит.

    Да ладно Вам.
    Простейшая трассировка:
    # traceroute -n 8.8.8.8
    traceroute to 8.8.8.8 (8.8.8.8), 64 hops max, 52 byte packets
    1 31.41.40.1 0.569 ms 0.476 ms 0.452 ms
    2 10.52.12.1 0.463 ms 0.561 ms 0.514 ms
    3 95.213.189.1 0.608 ms 0.549 ms 0.536 ms
    4 195.208.208.232 1.539 ms 0.957 ms 1.587 ms
    5 66.249.94.100 2.137 ms
    66.249.94.94 2.101 ms 1.619 ms
    6 66.249.95.241 25.756 ms
    64.233.174.85 25.829 ms
    209.85.243.149 22.934 ms
    7 216.239.56.208 17.262 ms
    216.239.40.240 16.171 ms
    209.85.247.77 16.547 ms
    8 * * *
    9 8.8.8.8 14.459 ms 14.591 ms 13.890 ms

    Откуда взялся серый адрес на втором хопе?
    Почему на 5-6-7 ответы от нескольких ip?
    Почему время ответов на 9-м шаге меньше чем на 6-м?
    и т.д. и т.п.
    О traceroute можно роман написать.

    P.S.: ответы не требутся.
  • Bash Co-Processes
    +1
    Очень сложно читается перевод

    20 лет "публично" не переводил, да и сам англоязычный вариант тяжеловат. Он перенасыщен повторяющимися словами, и при переводе не удаётся подобрать "технические" синонимы. В первоначальном варианте хотел частично оставить pipe, redirect и т.п., но в итоге заменил таки, возможно зря. Можно было бы переписать свою статью, но это было бы нечестно по отношению к автору оригинала.
  • Немного о сокетах, redis и битых яйцах
    +1
    gethostbyname — дешёвая операция, как в контексте данного теста
    http://www.opennet.ru/cgi-bin/opennet/man.cgi?topic=gethostbyname
    Если name является адресом IPv4 или IPv6, то поиск не производится и gethostbyname() просто копирует name в поле h_name, а его эквивалент для структуры struct in_addr копируется в поле h_addr_list[0] возвращаемой структуры hostent

    так и при реальном разрешении имён, т.к. будет задействован механизм NSCD (если только не делать принудительный invalidate кеша).
  • Немного о сокетах, redis и битых яйцах
    +2
    А зачем?
    С чем его сравнивать?
    Говоря о UDP подразумевая SOCK_DGRAM, т.е. на доменах AF_UNIX/AF_INET имеем те же отличия что и при SOCK_STREAM.
    Говоря о UDP подразумевая отличия в одном домене имён между SOCK_DGRAM и SOCK_STREAM имеем негарантированную доставку пакета ограниченного размера.
  • Немного о сокетах, redis и битых яйцах
    –1
    Не, вы уж извольте убрать gethostbyname в тесте TCP, а то нечестно как-то

    1) Это как раз честно. Представьте socket-клиент в реальных условиях. Будет ли он без gethostbyname?
    2) На самом деле вес gethostbyname в массе(да пусть поперхнутся физики) ничтожен. Даже на НЕ-локальных вызовах он окажет куда меньшее влияние чем может оказать, например, размер пакета.
  • Redis — что быстрее, UNIX-сокет или TCP? Что стабильнее? + pconnect
    +1
    Тут дело не в самих сокетах, а в том как с ними работает драйвер php и сам redis.

    А что PHP или Redis используют некие несистемные средства работы с сокетами?
    Листаю исходники redis. Как и ожидалось все функции anetTcp отличаются от anetUnix именно "добавлением" в Tcp-функциях getaddrinfo, bind, ntohs.
    Чтение и запись реализованы в "общих" anetRead, anetWrite. И пока не могу полагать, что работа с сокетами одного типа может отличаться чем-то кроме дополнительных расходов на tcp-обработку.
    Например также читал, что у редиса была (или еще есть?) бага, связанная с тем, что UDS не отвечает в момент записи редисом данных на диск, в то же время tcp просто ожидает ответа.

    Ссылкой поделитесь?
  • Redis — что быстрее, UNIX-сокет или TCP? Что стабильнее? + pconnect
    +1
    TCP (т.к. он стабильнее, или нет?

    С чего вдруг?
    Сокеты одного типа SOCK_STREAM. За исключением того, что в домене AF_INET мы несём накладные расходы на именование сокета, htonX'ы, муршрутизацию, asc'и принципиальных отличий от AF_UNIX нет. Как следствие, чем меньше длина пакета данных, тем больше будет выигрыш при использовании сокетов в домене файловой системы. Как правило, это порядка 50%.
    Поэтому (если исключить правку кода для внедрения в редис IPS с использованием разделяемой памяти) AF_UNIX сокеты будут самыми производительными. А ввиду того, что read/write для них реализован одинаково сравнивать стабильность не приходится.
    обрабатываем несколько тысяч запросов в секунду для получения статистики доставки и открытия уведомлений и для передачи контента оповещений. Обычная БД вроде MySQL не справляется с таким потоком запросов и не может так быстро отвечать.

    Ни чистых Insert'ах отправлял в продакшине данные из nginx в MySQL порядка 30'000 qps и это был не предел. На чистой синтетике (в режиме храниения данных а-ля redis — ключ/значение) думаю можно добиться и более 100'000 qps.
  • Как мы боролись с парсерами
    +2
    geo $whitelist {
    default 0;

    77.88.0.0/18 1;
    93.158.128.0/18 1;
    95.108.128.0/17 1;
    178.154.128.0/17 1;
    199.36.240.0/22 1;

    Не доверяйте просто так подсетям ПС. Они далеко не безгрешны. Парсинг 2-х летней давности с серверов Яндекса:

    178.154.243.106 -       5011415253      1419741951.254  [GET]   [/servis-centr/texet?ah62]      200     15241     -       [Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/536.5 (KHTML, like Gecko) YaBrowser/1.0.1084.5402 Chrome/19.0.1084.5409 Safari/536.5]       m*****.ru       XXX.XXX.217.215:80    28/Dec/2014:07:45:51 +0300      RU      w:1     []
    178.154.243.105 -       5011428078      1419741951.345  [GET]   [/servis-centr/texet?ah141]     200     241     -       [Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/536.5 (KHTML, like Gecko) YaBrowser/1.0.1084.5402 Chrome/19.0.1084.5409 Safari/536.5]       m*****.ru       XXX.XXX.217.215:80    28/Dec/2014:07:45:51 +0300      RU      w:1     []
    178.154.243.104 -       5011415952      1419741951.354  [GET]   [/servis-centr/texet?ah88]      200     19249     -       [Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/536.5 (KHTML, like Gecko) YaBrowser/1.0.1084.5402 Chrome/19.0.1084.5409 Safari/536.5]       m*****.ru       XXX.XXX.217.215:80    28/Dec/2014:07:45:51 +0300      RU      w:1     []
    95.108.158.134  -       5011424897      1419741951.430  [GET]   [/servis-centr/texet?ah69]      200     52415     -       [Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/536.5 (KHTML, like Gecko) YaBrowser/1.0.1084.5402 Chrome/19.0.1084.5409 Safari/536.5]       m*****.ru       XXX.XXX.217.215:80    28/Dec/2014:07:45:51 +0300      RU      w:1     []
    178.154.243.107 -       5011410458      1419741951.574  [GET]   [/remont-chasov/royal-london18ao]       200     8029    -       [Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/536.5 (KHTML, like Gecko) YaBrowser/1.0.1084.5402 Chrome/19.0.1084.5409 Safari/536.5]       m*****.ru       XXX.XXX.217.215:80     28/Dec/2014:07:45:51 +0300      RU      w:1     []
    5.255.253.3     -       5011428792      1419741951.586  [GET]   [/remont-chasov/royal-london19au]       200     8030    -       [Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/536.5 (KHTML, like Gecko) YaBrowser/1.0.1084.5402 Chrome/19.0.1084.5409 Safari/536.5]       m*****.ru       XXX.XXX.217.215:80     28/Dec/2014:07:45:51 +0300      RU      w:1     []
    95.108.128.241  -       5011423471      1419741951.593  [GET]   [/remont-chasov/royal-london22a]        200     8028    -       [Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/536.5 (KHTML, like Gecko) YaBrowser/1.0.1084.5402 Chrome/19.0.1084.5409 Safari/536.5]       m*****.ru       XXX.XXX.217.215:80     28/Dec/2014:07:45:51 +0300      RU      w:1     []
    95.108.128.242  -       5011427425      1419741951.617  [GET]   [/servis-centr/texet?ah73]      200     15245     -       [Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/536.5 (KHTML, like Gecko) YaBrowser/1.0.1084.5402 Chrome/19.0.1084.5409 Safari/536.5]       m*****.ru       XXX.XXX.217.215:80    28/Dec/2014:07:45:51 +0300      RU      w:1     []

    Около 3'000'000 запросов за сутки. Разумеется никакими Яндекс-ботами здесь и не пахнет
  • Амнезия FreeBSD
    0
    счетчик used у свопа работает по принципу «только прибавляем».

    [19:32]# swapinfo
    Device 1K-blocks Used Avail Capacity
    /dev/ada0b 5022720 311000 4711720 6%
    [21:30]# swapinfo
    Device 1K-blocks Used Avail Capacity
    /dev/ada0b 5022720 309288 4713432 6%
    т.е. работает и на освобожение.
    Другой вопрос зачем он вообще используется при 13G Free (и с момента старта системы Free ниже 12 не опускалась).
    Mem: 20M Active, 244M Inact, 2206M Wired, 10M Cache, 1643M Buf, 13G Free
    Swap: 4905M Total, 303M Used, 4602M Free, 6% Inuse

    Но вопрос свопа второстепенен.

    Мне кажется, это проблема tmpfs.

    Нет, проблемы проявляются и без него. Я задействовал tmpfs просто для наглядности.
  • Амнезия FreeBSD
    0
    del
  • Амнезия FreeBSD
    +1
    К сожалению и это не отвечает на вопрос «сколько в данный момент может быть доступно памяти приложению?»

    # top -b 0 | grep Mem
    Mem: 1925M Active, 53G Inact, 2901M Wired, 431M Cache, 3310M Buf, 4267M Free
    

    Выделяю 100M блоками пока не произойдёт исключение и освобождаю.
    # top -b 0 | grep Mem
    Mem: 1832M Active, 1398M Inact, 3091M Wired, 431M Cache, 1949M Buf, 56G Free
    

    В итоге Cache вообще остался нетронут, Inact похудел на 52G. Но как выяснить, что эти 52G были доступны?
  • Во FreeBSD обнаружены критически опасные уязвимости
    +6
    Для того, чтобы обезопасить себя от атаки с использованием данной ошибки безопасности, следует осуществить следующие действия:
    Отключить IPv6-адресацию…


    Да вы страшные люди…

    V. Solution

    Perform one of the following:

    1) Upgrade your vulnerable system to a supported FreeBSD stable or
    release / security branch (releng) dated after the correction date.
    Rebooting to the new kernel is required.

    2) To update your vulnerable system via a binary patch:

    Systems running a RELEASE version of FreeBSD on the i386 or amd64
    platforms can be updated via the freebsd-update(8) utility:
    # freebsd-update fetch
    # freebsd-update install
    


    Rebooting to the new kernel is required.

    3) To update your vulnerable system via a source code patch:

    The following patches have been verified to apply to the applicable
    FreeBSD release branches.

    a) Download the relevant patch from the location below, and verify the
    detached PGP signature using your PGP utility.

    # fetch https://security.FreeBSD.org/patches/SA-16:01/sctp.patch
    # fetch https://security.FreeBSD.org/patches/SA-16:01/sctp.patch.asc
    # gpg --verify sctp.patch.asc
    


    b) Apply the patch. Execute the following commands as root:
    # cd /usr/src
    # patch < /path/to/patch
    


    c) Recompile your kernel as described in
    <URL:https://www.FreeBSD.org/handbook/kernelconfig.html> and reboot the
    system.
  • Кейс NGINX: Как противостоять DDoS-атакам
    +1
    if ($http_referer = "" ) {set $ban $ban$add;}
    if ($request_method = POST ) {set $ban $ban$add;}
    if ($query_string = «action=login» ){set $ban $ban$add;}
    if ($ban = 111 ){
    return 444;
    }

    >>

    map "$http_referer$request_method$query_string" $ban {
        "POSTaction=login"  "1";
    }
    if ($ban) {
        return 444;
    }