2013-05-28 6 views
14

Ich versuche, Mail über eine Linux-Befehlszeile mit dem Befehl mailx zu senden. Ich kann von meiner lokalen Domain aus kein Problem senden, aber ich möchte E-Mails einrichten, die von meinem Google Mail-Konto aus gesendet werden, sowie E-Mails empfangen, die an mein Google Mail-Konto gesendet wurden.Mailx und Google Mail nss config dir

Nach meiner mail.rc Konfiguration wie folgt:

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 
} 

Ich würde den Fehler:

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. 

Nach oben schauen, was die "NSS-config-dir" war here, befindet I die certN.db und keyN.db Dateien und fügten hinzu, dass meine mail.rc etwa so:

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 
} 

jetzt, wenn ich zu se versuchen nd Mail mit diesem Befehl:

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

ich dieses:

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. 

Weiß jemand, wie man entweder:
A) Richten Sie mailx/mail.rc Gmail zugreifen, aber ignorieren die NSS benötigen -config-dir BS?
B) Richten Sie mailx/mail.rc so ein, dass das nss-config-dir tatsächlich funktioniert?
C) einrichten mailx/mail.rc Gmail vielleicht in einer anderen Art und Weise zuzugreifen (POP -Don 't wissen, ob das eine Option ist, nicht in sie aussah?)

Jede mögliche Hilfe Super geschätzt.

Antwort

10

Vielen Dank dafür gab es mir eine Möglichkeit, eine noch bessere Lösung zu finden. Angeblich sind diese keyN.db und certN.db Datenbanken von vertrauenswürdigen Zertifizierungsstellen.

habe ich ein einfaches

find/-name "cert*.db" 

wo die keyN.db und certN.db Dateien auf meinem System (Fedora 20) auf meinem System zu finden.
Ich fand sie unter /etc/pki/nssdb/.

8

Gelöst es!

Es gibt 2 Möglichkeiten, wie Sie das Problem lösen können.

  1. Go über here und Benutzer ndasusers Antwort folgen. Es wird sowohl die keyN.db und certN.db Dateien erstellen, die Sie benötigen, aber auch ein anderes GMail SSL-Zertifikat, das ein anderes potenzielles Problem löst.
  2. Oder Sie können einfach die keyN.db und certN.db in einen Ordner (/etc/ssl/cert maybe) und direkte mail.rc dort kopieren wie so:

    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 
    } 
    

Stellen Sie sicher, Sie über die Berechtigung, diese Dateien zugreifen, wenn Sie nicht root sind User, das hat mich eine ganze Weile gestört.

+4

Das Verzeichnis von NSS ist '/ etc/pki/nssdb /'. Dies kann auch verwendet werden, um auf "nss-config-dir" zu zeigen. –

+1

+1 zu @k_o_. Für CentOS-Benutzer sollten Sie/etc/pki/nssdb als/etc/pki als Standardspeicherort für alles verwenden, was mit cert zusammenhängt, und ein nssdb-Verzeichnis enthalten. –