2013-05-28 14 views
14

Próbuję wysłać pocztę z wiersza poleceń systemu Linux za pomocą polecenia mailx. Mogę wysłać z mojej lokalnej domeny bez problemu, ale chcę skonfigurować pocztę do wysyłania z mojego konta Gmail, a także otrzymywać pocztę wysyłaną na moje konto Gmail.Mailx i Gmail nss config dir

Po skonfigurowaniu mojego mail.rc tak:

account gmail { 
set smtp=smtps://smtp.gmail.com:587 
set smtp-auth=login 
set [email protected] 
set smtp-auth-password=PASSWORD 
set ssl-verify=ignore 
} 

bym pojawia się błąd:

Resolving host smtp.gmail.com . . . done. 
Connecting to 74.125.25.109 . . . connected. 
Missing "nss-config-dir" variable. 
"/home/USERNAME/dead.letter" 11/354 
. . . message not sent. 

Po patrząc na to, co "NSS-config-dir" był here, ja się pliki certN.db i keyN.db i dodały je do mojego mail.rc, tak:

account gmail { 
set smtp=smtps://smtp.gmail.com:587 
set smtp-auth=login 
set [email protected] 
set smtp-auth-password=PASSWORD 
set ssl-verify=ignore 
set nss-config-dir=/home/USER/.mozilla/firefox/LOCATION.default 
} 

teraz, gdy próbuję se nd mail przy użyciu tego polecenia:

echo "sent from gmail account" | mailx -v -A gmail -s "Command line mail" [email protected] 

uzyskać to:

Resolving host smtp.gmail.com . . . done. 
Connecting to 74.125.25.108 . . . connected. 
COMMENT-->then it waits there for about 5 mins then spits out this: 
SSL/TLS handshake failed: Unknown error -5938. 
"/home/USER/dead.letter" 11/354 
. . . message not sent. 

Czy ktoś wie jak albo:
A) Konfigurowanie mailx/mail.rc dostęp do Gmaila, ale ignorują potrzeby KSW -config-dir BS?
B) Ustaw plik mailx/mail.rc, aby katalog nss-config-dir działał?
C) Skonfiguruj mailx/mail.rc, aby uzyskać dostęp do Gmaila w inny sposób (POP może - nie wiesz, czy to opcja, nie przyjrzałeś się temu?)

Każda pomoc będzie bardzo ceniona.

Odpowiedz

10

Dziękuję za to, że dałem mi sposób na znalezienie jeszcze lepszego rozwiązania. Podobno te keyN.db i certN.db są bazami danych zaufanych urzędów certyfikacji.

Zrobiłem prosty

find/-name "cert*.db" 

dowiedzieć się, gdzie w moim systemie ma keyN.db i certN.db plików na moim systemie (Fedora 20).
Znalazłem je pod /etc/pki/nssdb/.

8

Rozwiązany!

Istnieją dwa sposoby rozwiązania tego problemu.

  1. przejść here i postępuj użytkownikowi ndasusers odpowiedź. Zarówno utworzy pliki keyN.db i certN.db, których potrzebujesz, ale także inny certyfikat GMail SSL, który rozwiąże inny potencjalny problem.
  2. Albo można po prostu skopiować keyN.db i certN.db do folderu (/etc/ssl/cert maybe) oraz bezpośrednie mail.rc tam tak:

    account gmail { 
        set smtp=smtps://smtp.gmail.com:587 
        set smtp-auth=login 
        set [email protected] 
        set smtp-auth-password=PASSWORD 
        set ssl-verify=ignore 
        set nss-config-dir=/etc/ssl/cert 
    } 
    

upewnij się, że masz uprawnienia dostępu do tych plików, jeżeli nie jesteś root użytkownika, który budził mnie przez dłuższą chwilę.

+4

Katalog nss to '/ etc/pki/nssdb /'. Może to również być użyte do wskazania 'nss-config-dir'. –

+1

+1 do @k_o_. Dla użytkowników CentOS, powinieneś używać/etc/pki/nssdb, ponieważ/etc/pki jest domyślną lokalizacją dla wszystkich powiązanych dokumentów i zawiera katalog nssdb. –