2013-06-10 3 views
9

Ich versuche, NPM in einer Umgebung hinter einer Unternehmensfirewall zu verwenden. Diese Firewall fängt den gesamten https-Verkehr ab und signiert sie mit ihrer eigenen CA ... Gibt es eine Möglichkeit, dieser CA zu vertrauen, damit NPM tatsächlich funktionieren kann?Wie konfiguriere ich NPM, um den Firewall-Aussteller für HTTPS-Proxy zu vertrauen?

+0

Ich weiß, dass dies für eine andere StackExchange-Website besser geeignet ist, aber da es für eine bestimmte Entwicklungsplattform spezifisch ist, hielt ich dies für einen geeigneteren Ort. – Tracker1

Antwort

6

Es gibt eine bessere Möglichkeit, npm zu konfigurieren, um Zertifikate zu trauen, die von einer bestimmten CA ausgestellt wurden.

Dadurch wird diese Zertifizierungsstelle (wahrscheinlich das selbstsignierte Zertifikat Ihres Unternehmens) zu den vertrauenswürdigen Zertifizierungsstellen des npm hinzugefügt. Mit dieser Lösung profitieren Sie von der SSL-Schlüsselvalidierung und fügen Ihre eigenen CA-Entitäten hinzu.

+1

Es ist erwähnenswert, dass, wenn Sie durch interne Proxy gezwungen werden, dass die CERT-Validierung ist sowieso ziemlich bedeutungslos ... – Tracker1

+0

Welches Format ist das myCA.cert? Pm, Jks, ...? – dokaspar

+1

Werte sollten im PEM-Format sein –

7

die Lösung gefunden ... (Ignorieren von SSL-Zertifikate)

npm config -g set strict-ssl false 

Dank this thread in Google Groups.

+1

Warnung: Ich glaube, dass diese Lösung bewirkt, dass npm ANY-Zertifikate akzeptiert. Es wäre besser, wenn es eine Option gäbe, npm zu sagen, nur einem bestimmten Zertifikat zu vertrauen. –

+0

@ScottMarchant fair genug .. oder in der Lage, die interne CA-Kette hinzufügen ... das heißt, die obige Lösung funktioniert in der gegebenen Umgebung. Ich hatte die gleichen Probleme mit Git und einigen anderen, ähnlichen Problemen am Ende. – Tracker1