Skip to content


Как должны работать истинно государственные банки

Похоже, в привате уже научились эффективным методам государственного управления:

Все правильно сделали, так держать!

Размещено в категории Развлекуха.

Как найти нужный промежуточный SSL-сертификат

Часто бывает, что клиент присылает сертификат для своего домена без промежуточного сертификата или с неправильным промежуточным сертификатом. Почему-то чаще всего это наблюдается с теми, кто покупает сертификаты у RapidSSL. Причем проблема эта незаметна, пока не доходит дело до работы с сайтом с какого-нибудь Android-девайса. По слухам, обычные десктопные броузеры (Opera, Firefox, Chrome) умеют сами находить при необходимости недостающие промежуточные сертификаты и молча и незаметно для пользователя подгружать их в случае, если таковые не были предоставлены сервером. А вот броузеры на android-устройствах, а также curl, проявляют бОльшую принципиальность и выдают назойливое предупреждение в стиле "сертификат получен из недоверенного центра сертификации" если сервер не предоставил полную цепочку сертификатов из корневого и всех промежуточных.

Чтобы проверить, имеет ли сервер полную цепочку сертификатов, имеется чудесный сервис https://www.ssllabs.com/ssltest/. Вводим там домен и смотрим:

Находим сертификат по ingerprint -у

Как найти промежуточный SSL-сертификат с помощью SSLLABS

"Extra download" означает, что наш веб-сервер не предоставил сертификат и SSLLabs-у пришлось искать дополнительные сертификаты самостоятельно. Что, надо отметить, у него отлично получается :) Смотрим на Fingerprint SHA1 и видим там 47f2db11606b7a5836c5b9582cefc33a0d67c4fe. Далее забиваем fingerprint в google и смотрим что он знает по этому поводу. В моем случае нашлось по ссылке https://ssl-tools.net/subjects/154d4e79cc1ed804d85a622d56b4608e206cc935:

Intermediate-сертификат от Symantec CA

Найденный промежуточный сертификат Symantec Basic DV SSL CA - G2

Там дальше клацаем по кнопочке PEM и получаем искомый промежуточный SSL-сертификат, который нужно прописать в конфигах веб-сервера. Профит!

А в этой статье написано как сделать правильный c точки зрения SSLLabs конфиг haproxy.

Размещено в категории Howto.

smartctl -x на RAID-контроллере HP Smart Array E200i

Как-то раз на просторах ынтернета попался мне совет запустить smartctl с параметром -x.

Я, конечно, как всякий homo sapiens, сначала почитал man:

  1. -x, --xall
  2.      Prints all SMART and non-SMART information about the device. For ATA
  3.      devices this is equivalent to ´-H -i -g all -c -A -f brief
  4.      -l xerror,error -l xselftest,selftest -l selective -l directory
  5.      -l scttemp -l scterc -l devstat -l sataphy´.
  6.      and for SCSI, this is equivalent to
  7.      ´-H -i -A -l error -l selftest -l background -l sasphy´.

Не увидев там ничего стрёмного, выполнил вот такую командочку:

  1. # smartctl -x -a -d cciss,0 /dev/cciss/c0d0
  2. smartctl 5.43 2012-06-30 r3573 [x86_64-linux-2.6.32-642.13.1.el6.x86_64] (local build)
  3. Copyright (C) 2002-12 by Bruce Allen, http://smartmontools.sourceforge.net
  4.  
  5. /dev/cciss/c0d0 [cciss_disk_00] [SCSI]: Device open changed type from 'sat,auto' to 'cciss'
  6. Vendor:               SEAGATE
  7. Product:              ST91000640SS    
  8. Revision:             0001
  9. User Capacity:        1,000,204,886,016 bytes [1.00 TB]
  10. Logical block size:   512 bytes
  11. Logical Unit id:      0x5000c50025fd7283
  12. Serial number:        9XG02CLM00009126234W
  13. Device type:          disk
  14. Transport protocol:   SAS
  15. Local Time is:        Tue Jan 31 15:29:39 2017 UTC
  16. Device supports SMART and is Enabled
  17. Temperature Warning Enabled
  18. SMART Health Status: OK
  19.  
  20. Current Drive Temperature:     22 C
  21. Drive Trip Temperature:        68 C
  22. Manufactured in week  of year 20
  23. Specified cycle count over device lifetime:  10000
  24. Accumulated start-stop cycles:  36
  25. Specified load-unload count over device lifetime:  300000
  26. Accumulated load-unload cycles:  36
  27. Elements in grown defect list: 3
  28. Vendor (Seagate) cache information
  29.   Blocks sent to initiator = 791069177
  30.   Blocks received from initiator = 8147385
  31.   Blocks read from cache and sent to initiator = 6510918
  32.   Number of read and write commands whose size <= segment size = 1294551
  33.   Number of read and write commands whose size > segment size = 0
  34. Vendor (Seagate/Hitachi) factory information
  35.   number of hours powered up = 37972.70
  36.   number of minutes until next internal SMART test = 12
  37.  
  38. Error counter log:
  39.            Errors Corrected by           Total   Correction     Gigabytes    Total
  40.                ECC          rereads/    errors   algorithm      processed    uncorrected
  41.            fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors
  42. read:    8169902        0         0   8169902          0       2604.051           0
  43. write:         0        0         0         0          0          4.359           0
  44.  
  45. Non-medium error count:        1
  46.  
  47. [GLTSD (Global Logging Target Save Disable) set. Enable Save with '-S on']
  48. No self-tests have been logged
  49. Long (extended) Self Test duration: 12198 seconds [203.3 minutes]
  50. Segmentation fault (core dumped)

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

При этом стоит отметить, что командочка smartctl -a -d cciss,0 /dev/cciss/c0d0 (то же самое, но без -x) там же пару минут ранее выполнялась несколько раз без каких-либо проблем. OS – CentOS 6.8 x86_64, RAID-контроллер HP Smart Array E200i.

Мораль: будьте осторожны со smartctl. Я предупредил.

Размещено в категории *nix. Теги: , .

Elasticsearch: уменьшение занятого места на диске

удаление indices в elasticsearch

Как отключить marvel-plugin в elasticsearch


В один прекрасный день SMS от nagios-а известила меня, что на сервере закончилось место. Как оказалось, место закончилось в основном по той причине, что директория /var/lib/elasticsearch/my-elasticsearch/nodes/0/indices разрозслась до неприличных размеров (около 100ГБ). Заглянув вовнутрь, я обнаружил кучу директорий с именами вида:

  1. 122M    .marvel-2016.04.01
  2. 127M    .marvel-2016.04.02
  3. 132M    .marvel-2016.04.03
  4. 140M    .marvel-2016.04.04
  5. 144M    .marvel-2016.04.05
  6. 149M    .marvel-2016.04.06
  7. 154M    .marvel-2016.04.07
  8. 158M    .marvel-2016.04.08
  9. 164M    .marvel-2016.04.09

Этак за пару годиков около 100ГБ и насобиралось. Дядька гугл подсказал, что файлы эти создаются с целью сбора статистики по работе elasticsearch. Так как эта статистика в моем случае никому нафиг не сдалась, я решил от них избавиться. Делается это простым HTTP-запросом, например, с помощью curl:

  1. $ curl -XDELETE 127.0.0.1:9200/.marvel-2016.03*
  2. {"acknowledged":true}

Данная командочка удалит все поддиректории в дире indices за март 2016-го года, тем самым освободив нам около 4ГБ дискового пространства.

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

  1. $ sudo /usr/share/elasticsearch/bin/plugin --remove marvel
  2. -> Removing marvel...
  3. Removed marvel
  4. $ sudo /sbin/service elasticsearch restart
  5. Stopping elasticsearch:            [  OK  ]
  6. Starting elasticsearch:            [  OK  ]

Размещено в категории *nix, Howto.

Страница 1 из 49123456789101112...Последняя »