Sur mes 'clients' bioniques, je reçois:
GPG error: http://repo.localpod/Dml/ldom-debs/ubuntu bionic InRelease: The following signatures were invalid: ADE541A20ACF8997C01BDCF7090678A30132048A
Notez qu'il dit "invalide", ne manque pas!
Ce sont mes propres paquets .deb, rassemblés dans un dépôt. (cela fonctionne très bien pour trusty et xenial)
J'ai signé le dépôt avec quelque chose comme: (appelé via reprepro: conf/distributions)
gpg --batch --yes --keyring $KeyP --secret-keyring $KeyS -a --no-permission-warning --detach-sign --default-key 'ldom install service' --output $3 $1
$1 = .../Release
$2 = .../InRelease
ok, alors j'ai essayé:
wget http://repo.localpod/Dml/ldom-debs/ubuntu/dists/bionic/InRelease
and:
# gpgv --keyring /etc/apt/trusted.gpg "InRelease"
gpgv: Signature made Thu 24 May 2018 12:20:29 PM CEST
gpgv: using DSA key 090678A30132048A
gpgv: Good signature from "ldom install service <[email protected]>"
N’est-ce pas, plus ou moins, comment apt-get vérifie les signatures? Ou la clé est-elle trop vieille? mauvais type ?
erreur complète:
apt-key list
pub rsa2048 2014-06-24 [SC]
754A 1A7A E731 F165 D5E6 D4BD 0E08 A149 DE57 BFBE
uid [ unknown] SaltStack Packaging Team <[email protected]>
sub rsa2048 2014-06-24 [E]
pub dsa1024 2013-06-10 [SCA]
ADE5 41A2 0ACF 8997 C01B DCF7 0906 78A3 0132 048A
uid [ unknown] LDOM install service <[email protected]>
sub elg1024 2013-06-10 [E]
root@ubu18:~# apt-get update
Get:1 http://repo.localpod/Dml/ldom-debs/ubuntu bionic InRelease [1,154 B]
Err:1 http://repo.localpod/Dml/ldom-debs/ubuntu bionic InRelease
The following signatures were invalid: ADE541A20ACF8997C01BDCF7090678A30132048A
Reading package lists... Done
W: GPG error: http://repo.localpod/Dml/ldom-debs/ubuntu bionic InRelease: The following signatures were invalid: ADE541A20ACF8997C01BDCF7090678A30132048A
E: The repository 'http://repo.localpod/Dml/ldom-debs/ubuntu bionic InRelease' is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
Tout indice quant à ce qui me manque, serait le bienvenu ... Merci,
/ holger
J'ai fini par suivre un guide ( https://www.digitalocean.com/community/tutorials/how-to-use-reprepro-for-a-secure-package-repository-on-ubuntu-14-04) ) ----> plus ou moins. ---> encore un peu de 'work in progress', mais voici quelques astuces:
en utilisant une image (fraîche) de docker:
docker run -it -v /your/packages:/debs ubuntu:18.04
apt update
apt install -y vim inetutils-ping curl wget netcat telnet aptitude man manpages bash-completion rng-tools reprepro iproute2
rebuild your packages:
cd /debs/src
ls -d */DEBIAN | xargs -n1 dirname | xargs -n1 dpkg-deb -vD --build
temps pour des choses clés. utiliser une clé existante:
gpg --import /debs/.../secring.gpg
pour une nouvelle clé:
gpg --full-generate-key
#rsa 4
#bits 4096
#your_key_name
#passphrase
#
gpg --edit-key your_key_name
#addkey
#(4) RSA (sign only)
#4096
#0
#yes
#yes
#save
gpg --list-secret
gpg --list-key
gpg --export .....your..key.....number............... > keyfile
apt-key add keyfile
ok, le temps pour l'installation de reprepro:
mkdir /debs/u18repo
cd /debs/u18repo
cat <<END >conf/options
ask-passphrase
END
cat <<END >conf/distributions
Codename: bionic
Components: main
Architectures: AMD64
SignWith: .....your..key.....number...............
END
reprepro -b /debs/u18repo includedeb bionic /debs/src/*.deb
gpg --export .....your..key.....number............... > keyfile
tester:
apt-key add keyfile
echo "deb file:////debs/u18repo/ bionic main" >> "/etc/apt/sources.list"
apt update
maintenant, si vous partagez/debs/u18repo sur vos clients (httpd) et importez la clé avec: apt-key add http: /.../ keyfile: apt update devrait fonctionner ...
J'ai eu le même problème. Dans le fichier InRelease, il y a un message signé par PGP et il devrait contenir:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
Cela signifie que SHA256 est utilisé pour la signature. SHA1 est un algorithme faible et ne devrait pas être utilisé. Donc, si SHA1 est là, vous devez mettre à jour votre configuration gnupg pour utiliser sha256
Dans mon cas:
echo "personal-digest-preferences SHA256 SHA384 SHA512 SHA224 RIPEMD160" >> ~/.gnupg/gpg.conf
puis renoncez au fichier InRelease en utilisant gpg comme d'habitude.
J'avais affronté exactement le même problème.
Assurez-vous que toutes les clés que vous utilisez sont au format binaire et non au format armé ASCII. Si l’une des clés est au format armé ASCII, convertissez-la en binaire à l’aide de -
gpg --dearmor
Selon this -
... La raison pour laquelle nous évitons les fichiers ASCII-blindés est qu'ils ne peuvent pas être utilisés directement par SecureApt.
Assurez-vous également que les lignes suivantes ou quelque chose de similaire soit dans votre fichier ~/.gnupg/gpg.conf -
cert-digest-algo SHA256
digest-algo SHA256