Архив метки: nginx

Сертификаты Lets Encrypt на старых серверах

Благодаря Let’s Encrypt, стало гораздо проще получать сертификаты для доменов и уверенно двигаться в ногу со временем навстречу HTTP/2. Несколько тормозит прогресс наличие огромного количества необновляемых в силу ряда причин серверов под управлением старых операционных систем. Не будем вдаваться в моральные и прочие аспекты обслуживания этого разношерстного зоопарка, в рамках данной статьи рассмотрим, как условно безболезненно получать и обновлять сертификаты для доменов на таких железках.

Итак, пытаясь установить certbot на систему типа debian 6, можно столкнуться с очень старыми версиями требуемых зависимостей (хотя бы тот же python 2.6)

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

Redmine: избавляемся от Webrick

Если внимательно читать официальный мануал по установке Redmine, то можно наткнуться на замечание:

Note: Webrick is not suitable for production use, please only use webrick for testing that the installation up to this point is functional. Use one of the many other guides in this wiki to setup redmine to use either Passenger (aka mod_rails), FCGI or a Rack server (Unicorn, Thin, Puma, hellip;) to serve up your redmine.

Я при установке руководствовался преимущественно русскоязычным гайдом, его составители были или ленивыми, или невнимательными, поэтому долгое время продакшн крутился на webrick с жуткими тормозами. В поисках причин и было найдено это уточнение. Переезд на thin в качестве бэкенда для nginx под катом
Читать далее

Подмена имени сервера в Nginx

Из соображений безопасности в Nginx из коробки можно скрыть версию веб-сервера на компьютере. Для этого служит директива server_tokens и её значение off. Это позволит избежать возможных атак со стороны злоумышленников, нацеленных на уязвимости в какой-то определенной версии Nginx. Однако есть возможность изменить и само имя сервера. Правда для этого необходимо изменение исходных кодов, а не добавление директив в файлы конфигурации.
Читать далее

Redmine и Gitlab на одном сервере

Об установке Gitlab на сервере под управлением Debian Squeeze ранее уже было написано. Теперь разберемся, как добавить на сервер систему управления проектами Redmine и по возможности не сломать управление репозиториями.

Согласно официальной документации Redmine работа с бэкендом на ruby должна осуществляться через Apache mod passenger. Дальше будет описан способ отказаться от Apache и настроить работу через Nginx.

Читать далее

Плавное обновление nginx

После ручной сборки nginx из исходных кодов выполнение перезапуска веб-сервера приведет к ошибке о занятом интерфейсе:

nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)

Так происходит потому, что скрипт запуска (/etc/init.d/nginx) не обнаруживает в памяти запущенного рабочего процесса новой версии, а на старый не обращает внимания.
Читать далее