Am încercat să folosesc gnome-keyring într-un server fără cap, dar am o eroare, așa că am revenit la variabilele de mediu. https://unix.stackexchange.com/questions/690295/error-secret-tool-cannot-create-an-item-in-a-locked-collection
Am încercat să folosesc .env și .profile, dar acesta din urmă nu este numit de Bash, ci este folosit .bash_profile. Setarea variabilei PATH în /etc/environment vs .profile
Nu sunt sigur că va funcționa pentru scripturi sau utilitare atunci când nu sunt conectat, rulând-le, chiar dacă rulează cu privs root. De exemplu, un script cron.daily care trimite un raport prin e-mail. Vreau să-l transmit $EMAIL și, de asemenea, să trec acea variabilă și alte utilități precum apticron, pentru securitate și ușurință în schimbare.
Acest răspuns sugerează utilizarea unui env var care indică un fișier de configurare, la care presupun că aș putea seta grupul de proprietate și permisiunile. Dar există o metodă mai convențională? https://stackoverflow.com/a/26030125/4240654
EDIT: Tocmai am testat scripturile după ce am setat vars în .bashrc și par să funcționeze. Încă se testează utilități precum Apticron... care se dovedește că nu acceptă o variabilă ca EMAIL=$EMAIL
în /etc/apticron/apticron.conf, probabil pentru că nu rulează în rădăcina ENV. Bine, de fapt, ambele funcționează acum după ce au comentat EMAIL="rădăcină"
în /usr/lib/apticron/apticron.conf (ceea ce nu trebuie să se întâmple cu utilizarea unui e-mail cu text simplu, deci este inconsecvent și doar pentru Apticron). Folosind un fișier și EMAIL=$(cat .env)
totusi nu functioneaza cu Apticron.
Solutii posibile:
Primele două dintre acestea necesită deschiderea unui fișier sau a unui magazin și lăsarea deschisă pe un server VM, ceea ce ar fi la fel cu utilizarea unui fișier cu acces limitat precum .env.
.bashrc este perm 644 în mod implicit, deci poate fi citit de orice alt utilizator, deși directorul /root este 700, deci nu poate fi traversat? Mai important, env vars, chiar și setate doar de rădăcină, sunt accesibile de către toți utilizatorii.. probabil pentru că toate procesele copil moștenesc vars env părinte. Postfix își stochează parola într-un fișier separat cu 600 de perms deținute de root și apoi o stochează pentru a fi utilizată în memorie.