Let’s Encrypt proxy invers

Apunts breus sobre els problemes que he tingut configurant Let’s Encrypt amb un proxy invers i diferents màquines.

Els fitxers de renovació es troben a: /etc/letsencrypt/renewal

Virtualhosts a la mateixa màquina

No s’ha de fer res especial, que el Certbot renovi per Webroot i prou.

Un exemple de fitxer de renovació:

# renew_before_expiry = 30 days
version = 0.10.2
archive_dir = /etc/letsencrypt/archive/lanpartyripoll.cat
cert = /etc/letsencrypt/live/lanpartyripoll.cat/cert.pem
privkey = /etc/letsencrypt/live/lanpartyripoll.cat/privkey.pem
chain = /etc/letsencrypt/live/lanpartyripoll.cat/chain.pem
fullchain = /etc/letsencrypt/live/lanpartyripoll.cat/fullchain.pem

# Options used in the renewal process
[renewalparams]
authenticator = webroot
installer = None
account = XXXXXXXXXXXXXXXXXXXXXXXXXX
[[webroot_map]]
www.lanpartyripoll.cat = /var/www/lanpartyripoll.cat
lanpartyripoll.cat = /var/www/lanpartyripoll.cat

 

Virtualhosts a diferent màquina

Primer de tot he definit un subdomini apuntant a la màquina que conté el proxy invers. Li he “assignat” els sites default i default-ssl. Aquests sites tenen com a root configurat /var/www/quill. Partint d’aquí, el fitxer de renovació:

# renew_before_expiry = 30 days
version = 0.10.2
archive_dir = /etc/letsencrypt/archive/aniolmarti.cat
cert = /etc/letsencrypt/live/aniolmarti.cat/cert.pem
privkey = /etc/letsencrypt/live/aniolmarti.cat/privkey.pem
chain = /etc/letsencrypt/live/aniolmarti.cat/chain.pem
fullchain = /etc/letsencrypt/live/aniolmarti.cat/fullchain.pem

# Options used in the renewal process
[renewalparams]
authenticator = webroot
installer = None
account = XXXXXXXXXXXXXXXXXXXXXX
[[webroot_map]]
www.aniolmarti.cat = /var/www/quill
blog.aniolmarti.cat = /var/www/quill
aniolmarti.cat = /var/www/quill
quill.aniolmarti.cat = /var/www/quill

A la màquina on hi ha allotjada la web cal modificar l’.htaccess:

Redirect 301 /.well-known http://quill.aniolmarti.cat/.well-known

 

Casos especials

En un subdomini hi tinc un Trac protegit per autenticació HTTP, això provoca que el client d’ACME no pugui accedir-hi i per tant no ho pugui verificar. Això em passa amb el domini xarxacatala.cat.

Primer de tot cal modificar el site del nginx:

 location ^~ /.well-known/acme-challenge/ {
     root /var/www/xarxacatala.cat;
 }

Amb això canviem l’arrel del directori de verificació del subdomini a la del domini principal, que no està protegit per autenticació HTTP.

El fitxer de renovació:

# renew_before_expiry = 30 days
version = 0.10.2
archive_dir = /etc/letsencrypt/archive/xarxacatala.cat
cert = /etc/letsencrypt/live/xarxacatala.cat/cert.pem
privkey = /etc/letsencrypt/live/xarxacatala.cat/privkey.pem
chain = /etc/letsencrypt/live/xarxacatala.cat/chain.pem
fullchain = /etc/letsencrypt/live/xarxacatala.cat/fullchain.pem

# Options used in the renewal process
[renewalparams]
authenticator = webroot
installer = None
account = XXXXXXXXXXXXXXXXXXXXXX
[[webroot_map]]
www.xarxacatala.cat = /var/www/xarxacatala.cat
xarxacatala.cat = /var/www/xarxacatala.cat
gestio.xarxacatala.cat = /var/www/xarxacatala.cat

Pegat proxy invers amb WordPress

Avui he estat mirant de canviar algunes configuracions del servidor i em trobava que amb un nginx (HTTPS) fent de proxy invers cap a un Apache servint un WordPress el navegador responia amb un error de problema de redirecció. Per arreglar-ho només cal afegir unes línies al fitxer wp-config.php.

Busquem la línia define('WP_DEBUG', false); i just després afegim:

// Codi pel proxy invers
if ( $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https' ) {
 $_SERVER['HTTPS'] = 'on';
 $_SERVER['SERVER_PORT'] = 443;
}

Neteja electrònica

Al llarg de la nostra vida els humans ens anem implicant en diferents organitzacions i per aquest motius les nostres adreces electròniques van augmentant i augmentant. Ara bé, arriba un determinant moment en el què has de dir adéu a alguna d’aquestes organitzacions i per tant aquella adreça deixarà d’estar en ús.

Generalment, les organitzacions a les què ens vinculem solen ser d’un àmbit similar, ja que els interessos de cada individu són finits. Per aquest motiu penso que, encara que no et desvinculis d’una organització, si formes part d’alguna altra d’àmbit molt similar no cal tenir dues adreces, sinó que amb una sola en tens més que suficient.

El que vinc a dir amb això és que aquesta setmana, com porto fent els últims anys, faré neteja d’adreces electròniques. He arribat a un punt on en tinc 10 en ús, i moltes d’elles innecessàries, ja que, com he dit, són d’àmbits relacionats. Quan hagi acabat la neteja faré una altra entrada informant de quines adreces eliminaré. Com he fet els últims cops, les configuraré per tal que se’m reenviïn els correus-e a una altra compte durant el temps que consideri oportú.

Comandes útils FFmpeg i mkvmerge

Cremar subtítols:

Per fitxers .str:

ffmpeg -i video.avi -vf subtitles=subtitle.srt out.avi

O si els subtítols estan continguts al vídeo:

ffmpeg -i video.mkv -vf subtitles=video.mkv out.avi

Per fitxers .ass:

ffmpeg -i video.avi -vf "ass=subtitle.ass" out.avi

Extreure pista d’àudio:

Per extreure només la primera pista:

ffmpeg -i input.avi -codec copy -map 0:a:0 -metadata TITLE="title" out.mp3

Convertir vídeo a MKV:

ffmpeg -i input_video.avi -f matroska -vcodec libx264 -acodec aac output_video.mkv

Accelerar velocitat audio:

Per accelerar la velocitat que portava a 23.976fps a la que porta a 25fps:

ffmpeg -i test.mkv -filter:a "atempo=1.0427083333333333" -vn output.aac

Canviar framerate vídeo:

mkvmerge -o out.mkv -A -S --default-duration '0:25fps' --fix-bitstream-timing-information 0 input.mkv

 

UnattendedUpgrades – Debian

unattended-upgrades és un paquet que permet realitzar automàticament les actualitzacions del sistema. Per fer-ne una configuració molt bàsica que ni tan sols ens avisi per correu-e és molt simple.

Instal·lem el paquet:

# apt-get install unattended-upgrades

Editem el fitxer /etc/apt/apt.conf.d/20auto-upgrades:

// Enable the update/upgrade script (0=disable)
APT::Periodic::Enable "1";

// Do "apt-get update" automatically every n-days (0=disable)
APT::Periodic::Update-Package-Lists "1";

// Do "apt-get upgrade --download-only" every n-days (0=disable)
APT::Periodic::Download-Upgradeable-Packages "1";

// Run the "unattended-upgrade" security upgrade script
// every n-days (0=disabled)
// Requires the package "unattended-upgrades" and will write
// a log in /var/log/unattended-upgrades
APT::Periodic::Unattended-Upgrade "1";

// Do "apt-get autoclean" every n-days (0=disable)
APT::Periodic::AutocleanInterval "7";

Reiniciem el servei:

# systemctl restart unattended-upgrades