Компилируем Nginx с последним OpenSSL

heartbleed

Это очень ленивая заметка. Честно говоря не знаю зачем я решил ее написать. Скорее просто для себя заметочка, чтобы потом не искать опции и сам метод.

Вообщем всвязи с последними дырами OpenSSL пришлось в срочном порядке поддерживать актуальную версию этого «добра». Итак, качаем последние доступные исходные коды с официального сайта OpenSSL и Nginx с последующей распаковкой. Надеюсь, что вы умеете пользоваться wget и tar, потому что мне просто лень приводить пример как
это сделать.

Установим все что необходимо для компиляции(на примере Debian/Ubuntu):

aptitude install gcc  libpcre++-dev libpcre3 libpcre3-dev libpcrecpp0 libssl-dev zlib1g-dev

Следующим шагом заходим в каталог распакованного OpenSSL. Там все просто:

configure
make
make install

Теперь заходим в каталог с распакованным nginx.

configure --with-cc-opt=-I../openssl-1.0.1j/include --with-ld-opt='-L../openssl-1.0.1j -Wl,-Bstatic -lssl -lcrypto -Wl,-Bdynamic -ldl' --with-openssl=../openssl-1.0.1j  --with-http_ssl_module
make
make install

Единственно на что стоит обратить внимание это переменные «../openssl-1.0.1j/» в команде конфигурирования. Это просто каталог, куда вы распаковали свежиспеченный OpenSSL. Когда выйдет следующее обновление просто заменим его на нужный путь и дело в шляпе.

PS Для дабавления в автозагрузку Ubuntu надо прописать в /etc/init/nginx.conf

# nginx

description "nginx http daemon"
author "George Shammas <[email protected]>"

start on (filesystem and net-device-up IFACE=lo)
stop on runlevel [!2345]

env DAEMON=/usr/sbin/nginx
env PID=/var/run/nginx.pid

expect fork
respawn
respawn limit 10 5
#oom never

pre-start script
        $DAEMON -t
        if [ $? -ne 0 ]
                then exit $?
        fi
end script

exec $DAEMON

Автозапуск можно проверить командой

initctl list | grep nginx

После чего запустить nginx

initctl start nginx

Оставить ответ

Ваш e-mail не будет опубликован. Обязательные поля помечены *