nginx-1.15.6 インストール

nginx 1.15.6が公開されたのでアップデートする。

Changes with nginx 1.15.6 06 Nov 2018

*) Security: when using HTTP/2 a client might cause excessive memory
   consumption (CVE-2018-16843) and CPU usage (CVE-2018-16844).

*) Security: processing of a specially crafted mp4 file with the
   ngx_http_mp4_module might result in worker process memory disclosure
   (CVE-2018-16845).

*) Feature: the "proxy_socket_keepalive", "fastcgi_socket_keepalive",
   "grpc_socket_keepalive", "memcached_socket_keepalive",
   "scgi_socket_keepalive", and "uwsgi_socket_keepalive" directives.

*) Bugfix: if nginx was built with OpenSSL 1.1.0 and used with OpenSSL
   1.1.1, the TLS 1.3 protocol was always enabled.

*) Bugfix: working with gRPC backends might result in excessive memory
   consumption.
cd /usr/local/src
/opt/curl/bin/curl -L https://nginx.org/download/nginx-1.15.6.tar.gz -o nginx-1.15.6.tar.gz
tar zxvf nginx-1.15.6.tar.gz

cd nginx-1.15.6
./configure --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --lock-path=/var/run/nginx.lock --http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx --group=nginx --with-openssl=/usr/local/src/openssl-1.1.1 --with-http_ssl_module --with-http_v2_module --with-http_realip_module --with-http_addition_module --with-http_sub_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_random_index_module --with-http_secure_link_module --with-http_stub_status_module --with-http_auth_request_module --with-file-aio --with-cc-opt='-O2 -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic'
PERL="/opt/perl5/bin/perl" make
make install
make upgrade

完了

curl 7.62.0 インストール

curlのバージョン7.62.0が公開されたのでアップデートする。

Fixed in 7.62.0 - October 31 2018

cd /usr/local/src
/opt/curl/bin/curl -L https://curl.haxx.se/download/curl-7.62.0.tar.gz -o curl-7.62.0.tar.gz
tar zxvf curl-7.62.0.tar.gz
cd curl-7.62.0

./configure --prefix=/opt/curl --with-ssl=/opt/openssl-1.1.1 --with-nghttp2=/usr/local/ --without-libssh2
make
make install

完了

Apache httpd-2.4.37 インストール

httpd-2.4.37にアップデート

cd /usr/local/src
/opt/curl/bin/curl -L https://www-us.apache.org/dist//httpd/httpd-2.4.37.tar.gz -o httpd-2.4.37.tar.gz
tar zxvf httpd-2.4.37.tar.gz

cp -R apr-1.6.5 httpd-2.4.37/srclib/apr
cp -R apr-util-1.6.1 httpd-2.4.37/srclib/apr-util
cp -R apr-iconv-1.2.2 httpd-2.4.37/srclib/apr-iconv

cd httpd-2.4.37
./configure --prefix=/usr/local/apache2.4 --enable-so --enable-http2 --enable-ssl=shared --with-ssl=/opt/openssl-1.1.1 --enable-rewrite --enable-headers --enable-deflate=shared --with-included-apr --enable-suexec --with-suexec-caller=apache --with-suexec-docroot=/home --with-included-apr --with-pcre=/opt/pcre --with-nghttp2=/usr/local/ --with-curl=/opt/curl --with-jansson=/opt/jansson
make
make install

/usr/local/apache2.4/bin/apachectl start

SSLProtocolに+TLSv1.3を追加した。

Apache httpd 2.4.37 Released

Apache httpd 2.4.37がリリースされました。

Apache HTTP Server Project

Changes with Apache 2.4.37

*) mod_ssl: Fix HTTP/2 failures when using OpenSSL 1.1.1. [Rainer Jung]

*) mod_ssl: Fix crash during SSL renegotiation with OptRenegotiate set, when client certificates are available from the original handshake but were originally not verified and should get verified now. This is a regression in 2.4.36 (unreleased). [Ruediger Pluem]

*) mod_ssl: Correctly merge configurations that have client certificates set by SSLProxyMachineCertificate{File|Path}. [Ruediger Pluem]

PostgreSQL 11 インストール

PostgreSQL 10 から 11 へアップデート

cd /usr/local/src
curl -L https://ftp.postgresql.org/pub/source/v11.0/postgresql-11.0.tar.gz -o postgresql-11.0.tar.gz
tar zxvf postgresql-11.0.tar.gz

cd postgresql-11.0
export CFLAGS="-I/opt/openssl-1.1.1/include" LIBS="-L/opt/openssl-1.1.1/lib" LDFLAGS="-L/opt/openssl-1.1.1/lib" PKG_CONFIG="/opt/openssl-1.1.1/lib/pkgconfig" LD_LIBRARY_PATH="/opt/openssl-1.1.1/lib"
./configure --prefix=/opt/pgsql-11 --with-openssl
make
make install

mkdir /opt/pgsql-11/data
chown postgres /opt/pgsql-11/data
su - postgres
/opt/pgsql-11/bin/initdb -D /opt/pgsql-11/data
exit

cd /opt/pgsql-11/data
/opt/openssl-1.1.1/bin/openssl req -new -text -out server.req
/opt/openssl-1.1.1/bin/openssl rsa -in privkey.pem -out server.key
rm -f privkey.pem
/opt/openssl-1.1.1/bin/openssl req -x509 -days 36500 -in server.req -text -key server.key -out server.crt
chmod og-rwx server.key
chown postgres server.key

/opt/pgsql-11/bin/pg_ctl -o "-p 5433" -D /opt/pgsql-11/data -l logfile start

このあたりでバックアップ・リストア ディスク容量が小さいので、試行錯誤して、なんとかリストア完了

/etc/rc.d/init.d/postgresql stop
ln -snf /opt/pgsql-11 /usr/local/pgsql
/etc/rc.d/init.d/postgresql start

ひとまず完了