Zadanie polega na zautomatyzowaniu odszyfrowywania gpg za pomocą crona (lub dowolnego narzędzia do planowania zadań zgodnego z Ubuntu Server). Ponieważ musi być zautomatyzowany, użyłem --passphrase
go, ale kończy się w historii powłoki, więc jest widoczny na liście procesów.
Jak mogę zautomatyzować odszyfrowywanie, zachowując jednocześnie dobre (najlepiej świetne) standardy bezpieczeństwa?
Przykład zostanie bardzo doceniony.
ps
etc, chyba że maszhidepid
włączone/proc
, ale powłoka uruchamiająca skrypt (z crona lub innego) jest nieinteraktywna i nie powinna zapisywać historii, chyba że jest źle skonfigurowana.Odpowiedzi:
Przechowuj hasło w pliku, który może odczytać tylko użytkownik zadania cron, i skorzystaj z
--passphrase-file
opcji,gpg
aby odczytać tam hasło.Zapewni to, że hasło nie będzie widoczne w informacjach o procesie w pamięci. Poziom bezpieczeństwa będzie określony przez poziom dostępu do pliku przechowującego hasło (a także poziom dostępu do pliku zawierającego klucz), w tym wszędzie tam, gdzie jego zawartość zostanie skopiowana (więc zachowaj kopie zapasowe), oraz dostępność offline (wyciągnięcie dysku z serwera). To, czy ten poziom bezpieczeństwa jest wystarczający, będzie zależeć od kontroli dostępu do serwera przechowującego plik, fizycznie i programowo, oraz od scenariuszy, które próbujesz złagodzić.
Jeśli chcesz mieć świetne standardy bezpieczeństwa, musisz użyć sprzętowego modułu bezpieczeństwa zamiast lokalnego przechowywania klucza (i hasła). Nie zapobiegnie to użyciu klucza na miejscu , ale uniemożliwi kopiowanie i używanie go w innym miejscu.
źródło
Automatyzacja deszyfrowania oznacza, że musisz gdzieś przechowywać hasło lub nie używać hasła (chyba że użyjesz dodatkowych opcji, jak wskazano w drugiej odpowiedzi przesłanej przez Stephena, gdy pisałem moje)! Żaden z nich nie spełnia Twoich wymagań dotyczących dobrych lub świetnych standardów bezpieczeństwa.
tzn. twoje wymaganie nie jest zgodne z jego bezpieczeństwem.
Możesz polegać na takich rzeczach - musisz być rootem, nadałem plikowi, w którym moje hasło jest przechowywane, bardzo mylącą nazwę, zaszyfrowałem bazowe systemy plików itp., Ale wszystkie są warstwami które są trywialne do obejścia, gdy jesteś rootem.
Opcja, która zapobiega wyświetlaniu hasła na liście procesów, to
--passphrase-file <file-name>
.Nie jest to jednak bardziej bezpieczne niż usunięcie hasła.
źródło