Add recipe for apt-key deprecation

master
Sergio Alvariño 1 year ago
parent d0674cab89
commit 8856703c51

@ -3285,8 +3285,78 @@ E instalamos como siempre
## Añadir las claves GPG de un repo
**Este método está obsoleto y no se recomienda**
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F7E06F06199EF2F2
Hasta ahora añadíamos las claves usando el programa `apt-key` como se
describe arriba. El programa añade las claves en el “llavero”
`/etc/apt/trusted.gpg`. El gestor de paquetes `apt` confía ciegamente en
las claves de este llavero. Eso permite que cualquier clave presente en
el “llavero” sirva para instalar cualquier programa. No hay una relación
unívoca entre claves y programas.
Para evitar el *warning* podríamos almacenar las claves en
`/etc/apt/trusted.d`, cada clave en si fichero separado. Pero eso
dejaría el verdadero problema de establecer una relación entre clave y
repo sin solucionar.
Si seguimos las recomendaciones de ***Debian***, deberíamos tener un
directorio solo accesible por `root`. Por ejemplo
`/usr/local/share/keyring` y deberíamos almacenar las claves con nombres
de la forma: `<keyword>-archive-keyring.gpg`.
Una vez que tengamos la clave disponible debemos especificar para cada
origen de software que clave le aplica para la autenticación de
paquetes.
**En resumen**:
- Las claves gpg de los repo se quedarán almacenadas en
`/usr/local/share/keyring`, estarán en formato *dearmored* y con los
nombres en la forma canónica `<keyword>-archive-keyring.gpg`
- Las especificaciones de los orígenes de software harán referencia
explícita a la clave que hay que usar para comprobarlas, es decir,
tendrán la forma:
`deb [signed-by=/usr/share/keyrings/<myrepository>-archive-keyring.gpg] <https://repository.example.com/debian/ stable main>`
### Si la clave ya estaba en `trusted.gpg`
``` bash
sudo apt-key list
# Obtendremos un lista de claves e identificamos la conflictiva:
#
# pub rsa1024 2009-01-22 [SC]
# E1DD 2702 88B4 E603 0699 E45F A171 5D88 E1DF 1F24
# uid [ unknown] Launchpad PPA for Ubuntu Git Maintainers
#
# Exportamos la clave al "llavero":
sudo apt-key export E1DF1F24 |sudo gpg --dearmour -o /usr/local/share/gitMaintainers-archive-keyring.gpg
# Editamos el fichero de orígenes del sw y probamos a actualizar
sudo apt update
# si todo va bien podemos borrar la clave del trusted.gpg
sudo apt-key del E1DF1F24
```
### Descargando una clave con wget
``` bash
wget -O- <https://example.com/key/repo-key.gpg> | \
gpg --dearmor -o /usr/local/share/keyrings/<myrepository>-archive-keyring.gpg
```
### Importando claves directamente de un keyserver
``` bash
sudo gpg --no-default-keyring --keyring /usr/local/share/keyrings/<myrepository>-archive-keyring.gpg \
--keyserver <hkp://keyserver.ubuntu.com:80> --recv-keys <fingerprint>
```
## Solucionar problemas de menús duplicados usando menulibre
| |

@ -2945,10 +2945,62 @@ sudo apt install qgis
===== Añadir las claves GPG de un repo =====
**Este método está obsoleto y no se recomienda**
<code>
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F7E06F06199EF2F2
</code>
Hasta ahora añadíamos las claves usando el programa ''%%apt-key%%'' como se describe arriba. El programa añade las claves en el “llavero” ''%%/etc/apt/trusted.gpg%%''. El gestor de paquetes ''%%apt%%'' confía ciegamente en las claves de este llavero. Eso permite que cualquier clave presente en el “llavero” sirva para instalar cualquier programa. No hay una relación unívoca entre claves y programas.
Para evitar el //warning// podríamos almacenar las claves en ''%%/etc/apt/trusted.d%%'', cada clave en si fichero separado. Pero eso dejaría el verdadero problema de establecer una relación entre clave y repo sin solucionar.
Si seguimos las recomendaciones de **//Debian//**, deberíamos tener un directorio solo accesible por ''%%root%%''. Por ejemplo ''%%/usr/local/share/keyring%%'' y deberíamos almacenar las claves con nombres de la forma: ''%%<keyword>-archive-keyring.gpg%%''.
Una vez que tengamos la clave disponible debemos especificar para cada origen de software que clave le aplica para la autenticación de paquetes.
**En resumen**:
* Las claves gpg de los repo se quedarán almacenadas en ''%%/usr/local/share/keyring%%'', estarán en formato //dearmored// y con los nombres en la forma canónica ''%%<keyword>-archive-keyring.gpg%%''
* Las especificaciones de los orígenes de software harán referencia explícita a la clave que hay que usar para comprobarlas, es decir, tendrán la forma: ''%%deb [signed-by=/usr/share/keyrings/<myrepository>-archive-keyring.gpg] <https://repository.example.com/debian/ stable main>%%''
==== Si la clave ya estaba en trusted.gpg ====
<code bash>
sudo apt-key list
# Obtendremos un lista de claves e identificamos la conflictiva:
#
# pub rsa1024 2009-01-22 [SC]
# E1DD 2702 88B4 E603 0699 E45F A171 5D88 E1DF 1F24
# uid [ unknown] Launchpad PPA for Ubuntu Git Maintainers
#
# Exportamos la clave al "llavero":
sudo apt-key export E1DF1F24 |sudo gpg --dearmour -o /usr/local/share/gitMaintainers-archive-keyring.gpg
# Editamos el fichero de orígenes del sw y probamos a actualizar
sudo apt update
# si todo va bien podemos borrar la clave del trusted.gpg
sudo apt-key del E1DF1F24
</code>
==== Descargando una clave con wget ====
<code bash>
wget -O- <https://example.com/key/repo-key.gpg> | \
gpg --dearmor -o /usr/local/share/keyrings/<myrepository>-archive-keyring.gpg
</code>
==== Importando claves directamente de un keyserver ====
<code bash>
sudo gpg --no-default-keyring --keyring /usr/local/share/keyrings/<myrepository>-archive-keyring.gpg \
--keyserver <hkp://keyserver.ubuntu.com:80> --recv-keys <fingerprint>
</code>
===== Solucionar problemas de menús duplicados usando menulibre =====
|**Nota**: Ya no uso //MenuLibre// |

Binary file not shown.

@ -2575,7 +2575,54 @@ sudo apt install qgis</pre>
<span id="añadir-las-claves-gpg-de-un-repo"></span>
== Añadir las claves GPG de un repo ==
'''Este método está obsoleto y no se recomienda'''
<pre>sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F7E06F06199EF2F2</pre>
Hasta ahora añadíamos las claves usando el programa <code>apt-key</code> como se describe arriba. El programa añade las claves en el “llavero” <code>/etc/apt/trusted.gpg</code>. El gestor de paquetes <code>apt</code> confía ciegamente en las claves de este llavero. Eso permite que cualquier clave presente en el “llavero” sirva para instalar cualquier programa. No hay una relación unívoca entre claves y programas.
Para evitar el ''warning'' podríamos almacenar las claves en <code>/etc/apt/trusted.d</code>, cada clave en si fichero separado. Pero eso dejaría el verdadero problema de establecer una relación entre clave y repo sin solucionar.
Si seguimos las recomendaciones de '''''Debian''''', deberíamos tener un directorio solo accesible por <code>root</code>. Por ejemplo <code>/usr/local/share/keyring</code> y deberíamos almacenar las claves con nombres de la forma: <code>&lt;keyword&gt;-archive-keyring.gpg</code>.
Una vez que tengamos la clave disponible debemos especificar para cada origen de software que clave le aplica para la autenticación de paquetes.
'''En resumen''':
* Las claves gpg de los repo se quedarán almacenadas en <code>/usr/local/share/keyring</code>, estarán en formato ''dearmored'' y con los nombres en la forma canónica <code>&lt;keyword&gt;-archive-keyring.gpg</code>
* Las especificaciones de los orígenes de software harán referencia explícita a la clave que hay que usar para comprobarlas, es decir, tendrán la forma: <code>deb [signed-by=/usr/share/keyrings/&lt;myrepository&gt;-archive-keyring.gpg] &lt;https://repository.example.com/debian/ stable main&gt;</code>
<span id="si-la-clave-ya-estaba-en-trusted.gpg"></span>
=== Si la clave ya estaba en <code>trusted.gpg</code> ===
<syntaxhighlight lang="bash">sudo apt-key list
# Obtendremos un lista de claves e identificamos la conflictiva:
#
# pub rsa1024 2009-01-22 [SC]
# E1DD 2702 88B4 E603 0699 E45F A171 5D88 E1DF 1F24
# uid [ unknown] Launchpad PPA for Ubuntu Git Maintainers
#
# Exportamos la clave al "llavero":
sudo apt-key export E1DF1F24 |sudo gpg --dearmour -o /usr/local/share/gitMaintainers-archive-keyring.gpg
# Editamos el fichero de orígenes del sw y probamos a actualizar
sudo apt update
# si todo va bien podemos borrar la clave del trusted.gpg
sudo apt-key del E1DF1F24
</syntaxhighlight>
<span id="descargando-una-clave-con-wget"></span>
=== Descargando una clave con wget ===
<syntaxhighlight lang="bash">wget -O- <https://example.com/key/repo-key.gpg> | \
gpg --dearmor -o /usr/local/share/keyrings/<myrepository>-archive-keyring.gpg</syntaxhighlight>
<span id="importando-claves-directamente-de-un-keyserver"></span>
=== Importando claves directamente de un keyserver ===
<syntaxhighlight lang="bash">sudo gpg --no-default-keyring --keyring /usr/local/share/keyrings/<myrepository>-archive-keyring.gpg \
--keyserver <hkp://keyserver.ubuntu.com:80> --recv-keys <fingerprint></syntaxhighlight>
<span id="solucionar-problemas-de-menús-duplicados-usando-menulibre"></span>
== Solucionar problemas de menús duplicados usando menulibre ==

Binary file not shown.

Binary file not shown.

@ -4382,10 +4382,99 @@ sudo apt install qgis
\subsection{Añadir las claves GPG de un
repo}\label{auxf1adir-las-claves-gpg-de-un-repo}}
\textbf{Este método está obsoleto y no se recomienda}
\begin{verbatim}
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F7E06F06199EF2F2
\end{verbatim}
Hasta ahora añadíamos las claves usando el programa \texttt{apt-key}
como se describe arriba. El programa añade las claves en el ``llavero''
\texttt{/etc/apt/trusted.gpg}. El gestor de paquetes \texttt{apt} confía
ciegamente en las claves de este llavero. Eso permite que cualquier
clave presente en el ``llavero'' sirva para instalar cualquier programa.
No hay una relación unívoca entre claves y programas.
Para evitar el \emph{warning} podríamos almacenar las claves en
\texttt{/etc/apt/trusted.d}, cada clave en si fichero separado. Pero eso
dejaría el verdadero problema de establecer una relación entre clave y
repo sin solucionar.
Si seguimos las recomendaciones de \textbf{\emph{Debian}}, deberíamos
tener un directorio solo accesible por \texttt{root}. Por ejemplo
\texttt{/usr/local/share/keyring} y deberíamos almacenar las claves con
nombres de la forma:
\texttt{\textless{}keyword\textgreater{}-archive-keyring.gpg}.
Una vez que tengamos la clave disponible debemos especificar para cada
origen de software que clave le aplica para la autenticación de
paquetes.
\textbf{En resumen}:
\begin{itemize}
\tightlist
\item
Las claves gpg de los repo se quedarán almacenadas en
\texttt{/usr/local/share/keyring}, estarán en formato \emph{dearmored}
y con los nombres en la forma canónica
\texttt{\textless{}keyword\textgreater{}-archive-keyring.gpg}
\item
Las especificaciones de los orígenes de software harán referencia
explícita a la clave que hay que usar para comprobarlas, es decir,
tendrán la forma:
\texttt{deb\ {[}signed-by=/usr/share/keyrings/\textless{}myrepository\textgreater{}-archive-keyring.gpg{]}\ \textless{}https://repository.example.com/debian/\ stable\ main\textgreater{}}
\end{itemize}
\hypertarget{si-la-clave-ya-estaba-en-trusted.gpg}{%
\subsubsection{\texorpdfstring{Si la clave ya estaba en
\texttt{trusted.gpg}}{Si la clave ya estaba en trusted.gpg}}\label{si-la-clave-ya-estaba-en-trusted.gpg}}
\begin{Shaded}
\begin{Highlighting}[]
\FunctionTok{sudo}\NormalTok{ apt{-}key list}
\CommentTok{\# Obtendremos un lista de claves e identificamos la conflictiva:}
\CommentTok{\#}
\CommentTok{\# pub rsa1024 2009{-}01{-}22 [SC]}
\CommentTok{\# E1DD 2702 88B4 E603 0699 E45F A171 5D88 E1DF 1F24}
\CommentTok{\# uid [ unknown] Launchpad PPA for Ubuntu Git Maintainers}
\CommentTok{\#}
\CommentTok{\# Exportamos la clave al "llavero":}
\FunctionTok{sudo}\NormalTok{ apt{-}key export E1DF1F24 }\KeywordTok{|}\FunctionTok{sudo}\NormalTok{ gpg }\AttributeTok{{-}{-}dearmour} \AttributeTok{{-}o}\NormalTok{ /usr/local/share/gitMaintainers{-}archive{-}keyring.gpg}
\CommentTok{\# Editamos el fichero de orígenes del sw y probamos a actualizar}
\FunctionTok{sudo}\NormalTok{ apt update}
\CommentTok{\# si todo va bien podemos borrar la clave del trusted.gpg}
\FunctionTok{sudo}\NormalTok{ apt{-}key del E1DF1F24}
\end{Highlighting}
\end{Shaded}
\hypertarget{descargando-una-clave-con-wget}{%
\subsubsection{Descargando una clave con
wget}\label{descargando-una-clave-con-wget}}
\begin{Shaded}
\begin{Highlighting}[]
\FunctionTok{wget} \AttributeTok{{-}O{-}} \OperatorTok{\textless{}}\NormalTok{https://example.com/key/repo{-}key.gpg}\OperatorTok{\textgreater{}} \KeywordTok{|} \DataTypeTok{\textbackslash{}}
\ExtensionTok{gpg} \AttributeTok{{-}{-}dearmor} \AttributeTok{{-}o}\NormalTok{ /usr/local/share/keyrings/}\OperatorTok{\textless{}}\NormalTok{myrepository}\OperatorTok{\textgreater{}}\NormalTok{{-}archive{-}keyring.gpg}
\end{Highlighting}
\end{Shaded}
\hypertarget{importando-claves-directamente-de-un-keyserver}{%
\subsubsection{Importando claves directamente de un
keyserver}\label{importando-claves-directamente-de-un-keyserver}}
\begin{Shaded}
\begin{Highlighting}[]
\FunctionTok{sudo}\NormalTok{ gpg }\AttributeTok{{-}{-}no{-}default{-}keyring} \AttributeTok{{-}{-}keyring}\NormalTok{ /usr/local/share/keyrings/}\OperatorTok{\textless{}}\NormalTok{myrepository}\OperatorTok{\textgreater{}}\NormalTok{{-}archive{-}keyring.gpg }\DataTypeTok{\textbackslash{}}
\NormalTok{{-}{-}keyserver }\OperatorTok{\textless{}}\NormalTok{hkp://keyserver.ubuntu.com:80}\OperatorTok{\textgreater{}}\NormalTok{ {-}{-}recv{-}keys }\OperatorTok{\textless{}}\NormalTok{fingerprint}\OperatorTok{\textgreater{}}
\end{Highlighting}
\end{Shaded}
\hypertarget{solucionar-problemas-de-menuxfas-duplicados-usando-menulibre}{%
\subsection{Solucionar problemas de menús duplicados usando
menulibre}\label{solucionar-problemas-de-menuxfas-duplicados-usando-menulibre}}

@ -2,10 +2,66 @@
## Añadir las claves GPG de un repo
__Este método está obsoleto y no se recomienda__
~~~~
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F7E06F06199EF2F2
~~~~
Hasta ahora añadíamos las claves usando el programa `apt-key` como se describe arriba. El programa añade las claves en el "llavero" `/etc/apt/trusted.gpg`. El gestor de paquetes `apt` confía ciegamente en las claves de este llavero. Eso permite que cualquier clave presente en el "llavero" sirva para instalar cualquier programa. No hay una relación unívoca entre claves y programas.
Para evitar el _warning_ podríamos almacenar las claves en `/etc/apt/trusted.d`, cada clave en si fichero separado. Pero eso dejaría el verdadero problema de establecer una relación entre clave y repo sin solucionar.
Si seguimos las recomendaciones de ___Debian___, deberíamos tener un directorio solo accesible por `root`. Por ejemplo `/usr/local/share/keyring` y deberíamos almacenar las claves con nombres de la forma: `<keyword>-archive-keyring.gpg`.
Una vez que tengamos la clave disponible debemos especificar para cada origen de software que clave le aplica para la autenticación de paquetes.
__En resumen__:
* Las claves gpg de los repo se quedarán almacenadas en `/usr/local/share/keyring`, estarán en formato _dearmored_ y con los nombres en la forma canónica `<keyword>-archive-keyring.gpg`
* Las especificaciones de los orígenes de software harán referencia explícita a la clave que hay que usar para comprobarlas, es decir, tendrán la forma:
`deb [signed-by=/usr/share/keyrings/<myrepository>-archive-keyring.gpg] <https://repository.example.com/debian/ stable main>`
### Si la clave ya estaba en `trusted.gpg`
```bash
sudo apt-key list
# Obtendremos un lista de claves e identificamos la conflictiva:
#
# pub rsa1024 2009-01-22 [SC]
# E1DD 2702 88B4 E603 0699 E45F A171 5D88 E1DF 1F24
# uid [ unknown] Launchpad PPA for Ubuntu Git Maintainers
#
# Exportamos la clave al "llavero":
sudo apt-key export E1DF1F24 |sudo gpg --dearmour -o /usr/local/share/gitMaintainers-archive-keyring.gpg
# Editamos el fichero de orígenes del sw y probamos a actualizar
sudo apt update
# si todo va bien podemos borrar la clave del trusted.gpg
sudo apt-key del E1DF1F24
```
### Descargando una clave con wget
```bash
wget -O- <https://example.com/key/repo-key.gpg> | \
gpg --dearmor -o /usr/local/share/keyrings/<myrepository>-archive-keyring.gpg
```
### Importando claves directamente de un keyserver
```bash
sudo gpg --no-default-keyring --keyring /usr/local/share/keyrings/<myrepository>-archive-keyring.gpg \
--keyserver <hkp://keyserver.ubuntu.com:80> --recv-keys <fingerprint>
```
## Solucionar problemas de menús duplicados usando menulibre
----------------------------------------------------------------------

Loading…
Cancel
Save