Nie potrzebuję już klucza z kluczy mojego serwera. Czy można to usunąć? Dodałem klucz za pomocą tego polecenia:
curl http://repo.varnish-cache.org/debian/GPG-key.txt | apt-key add -
Dzięki za pomoc
apt
repository
gnupg
Raymond
źródło
źródło
Software & Updates-->Authentication
nie wydaje się działać (nie można usunąć żadnego zaufanego klucza oprogramowania). Zamiast tego należało zastosować podane poniżej polecenia cmli.Odpowiedzi:
Najpierw musisz znaleźć identyfikator klucza, który dodałeś. Zrób to za pomocą polecenia:
Wyświetla listę wszystkich posiadanych kluczy, a każdy wpis wygląda następująco:
Po ustaleniu, który klucz należy usunąć, użyj polecenia
sudo apt-key del <keyid>
gdzie<keyid>
jest zastąpione rzeczywistym kluczem klucza, który chcesz usunąć z kluczy.źródło
pub rsa4096 2012-05-11 [SC] 8439 .... uid ....
The following signatures couldn't be verified because the public key is not available: NO_PUBKEY
, co powinienem zrobić dalej?16.10 identyfikator skrótu nie jest już wyświetlany, gdy używasz polecenia list, ale w rzeczywistości jest to ostatnie 8 znaków długiego heksa.
Na przykład identyfikator klucza dla następującego klucza
Identyfikator klucza to EFE21092
źródło
sudo apt-key del "8439 38DF 228D 22F7 B374 2BC0 D94A A3F0 EFE2 1092"
i myślę, że bezpieczniej jest używać całego odcisku palca, keyid może mieć duplikaty (przynajmniej kiedy używasz PGP do e-maili, czytam, że powinieneś udostępnić cały odcisk palca, a nie tylko keyid).Zrobiłem krótki skrypt, aby ułatwić sobie używanie łańcucha zamiast identyfikatora.
Możesz użyć mojego skryptu, jeśli klucz zawiera unikatowy ciąg znaków, który znasz.
np. w moim przypadku dla webmina
Jestem pewien, że tylko klucz webmin w moim systemie ma
jcameron
ten skrypt do usunięcia odpowiedniego klucza.Zapisałem to jako
~/removeAptKey
i uruchom go jako
Wyjście powinno być coś w rodzaju
Oto mój skrypt:
Najpierw otrzymuję dwie górne linie bloku mojego klucza:
sudo apt-key list
: wyświetla klawisze apt jak zwyklegrep '${UNIQUE}' -B 1
: weź tylko wiersz zawierający unikatowy ciąg kluczajcameron
i-B 1
wiersz wcześniej> result.temp
: Zapisz go w pliku (który jest później usuwany)Jeśli to zwróci dokładnie 2 linie (-> dostałem dokładnie 1 klucz), przechodzę dalej:
grep 'pub'
: Teraz weź tylko wiersz zpup
identyfikatorem kluczacut -d " " -f 4
: weź 4 słowo tego wiersza (pierwsze topub
dwie spacje, niż ciąg, który szukamy po ``)cut -d "/" -f 2
: weź tylko część po/
I wreszcie usuń ten klucz i oczyść
apt-key del ${KEYID}
(w moim przypadku11F63C51
)rm result.temp
: nie potrzebujesz już tego plikuźródło
#
że winowajcą jest klauzula if?$#
to nie. Zwraca ilość podanych parametrów.Wiem, że mogę się spóźnić, ale po prostu chciałem udostępnić to jedno wierszowe polecenie, aby to osiągnąć.
UWAGA : Działa to tylko wtedy, gdy wyjście jest unikalnym kluczem.
Wersje Ubuntu do 16.04 (AKTUALIZACJA 22.12.2018):
gdzie
FOOBAR
jest nazwa UID.Wersje Ubuntu od 16.10:
gdzie
FOOBAR
jest nazwa UID.źródło
16.04
podanego polecenia.awk: line 1: syntax error at or near {
Ale nawiasy klamrowe pasują do siebie, więc nie jestem pewien, dlaczego to nie działaapt-key list
format się zmienił. Teraz wydaje się, że znów działa. (EDYCJA: Pamiętaj, aby uruchomić to jako superużytkownik)