Skip to content

Commit 2797316

Browse files
committed
Explica como automatizar la asignación de capabilities
1 parent b626c62 commit 2797316

File tree

2 files changed

+22
-1
lines changed

2 files changed

+22
-1
lines changed

source/07.serre/05.proxies/03.reverse/02.transparencia.rst

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -358,7 +358,17 @@ Y los cambios, según optemos por una estrategia u otra:
358358
mientras que la segunda escuchar en puerto privilegiado.
359359

360360
.. warning:: Cada vez que se sustituya el ejecutable con una actualización,
361-
se perderán estas capacidades y habrá que volver a definirlas.
361+
se perderán estas capacidades y el *proxy* fallará. Una estrategia para
362+
recuperarlas automáticamente es usar los `file triggers
363+
<https://sources.debian.org/src/dpkg/1.17.25/doc/triggers.txt/>`_ del
364+
gestor :manpage:`dpkg` de *Debian*. Básicamente consiste en que
365+
definamos nosotros mismos un paquete auxiliar que demuestre interés por
366+
el archivo :file:`/usr/sbin/haproxy`. Cuando algún otro paquete altera
367+
este archivo al instalarse, actualizarse o eliminarse, se acaba
368+
ejecutando el script :file:`debian/postinst` de nuestro paquete, de modo
369+
que podemos incluir en él el :command:`setcap` necesario. Descargue el
370+
paquete :download:`package-patcher.deb
371+
<files/package-patcher_1.0-1_all.deb>` y échele un vistazo\ [#]_.
362372

363373
* Comentar en la sesión *global* las dos líneas anteriores y también otra
364374
referente a una jaula que ya es imposible e innecesaria:
@@ -416,6 +426,17 @@ Y los cambios, según optemos por una estrategia u otra:
416426
.. [#] Se añade :kbd:`--no-check-certificate` para evitar problemas si en
417427
nuestras pruebas usamos certificados autofirmados.
418428
429+
.. [#] Tras instalarlo podemos comprobar que funciona (sin necesidad de
430+
reinstalar :deb:`haproxy`) del siguiente modo:
431+
432+
.. code-block:: console
433+
434+
# dpkg-trigger --by-package=haproxy /usr/sbin/haproxy
435+
# dpkg --status haproxy
436+
# dpkg --status package-patcher
437+
# dpkg --configure --pending
438+
# journalctl -t haproxy-hook
439+
419440
.. |SSL| replace:: :abbr:`SSL (Secure Socket Layer)`
420441
.. |SNI| replace:: :abbr:`SNI (Server Name Indication)`
421442
.. |TCP| replace:: :abbr:`TCP (Transmission Control Protocol)`
Binary file not shown.

0 commit comments

Comments
 (0)