התקנת תעודה בכל מוצרי node: הבדלים בין גרסאות בדף

מתוך ויקי נטפרי
קפיצה לניווט קפיצה לחיפוש
מ (הבהרה של האפשרויות לסביבות שורת פקודה במאק, והכנסה של קובץ פרופיל ל-oh my zsh)
מ
שורה 3: שורה 3:
  
 
'''עדכון עבור מערכות windows: בתאריך כ"ח ניסן תשע"ט / 3 במאי 2019, יצאה [[התקנת תעודה נפוצה|תוכנה חדשה להתקנת התעודה]], התוכנה החדשה מתקינה את התעודה אוטומטית גם במוצרי node.'''
 
'''עדכון עבור מערכות windows: בתאריך כ"ח ניסן תשע"ט / 3 במאי 2019, יצאה [[התקנת תעודה נפוצה|תוכנה חדשה להתקנת התעודה]], התוכנה החדשה מתקינה את התעודה אוטומטית גם במוצרי node.'''
 
 
 
  
 
==אפשרות מומלצת==
 
==אפשרות מומלצת==

גרסה מ־10:43, 20 בפברואר 2022

For English click here

למעבר מתצוגת עריכה לתצוגת קריאה

עמוד ראשי > תעודת האבטחה > התקנת תעודה בכל מוצרי node ‎‎


עדכון עבור מערכות windows: בתאריך כ"ח ניסן תשע"ט / 3 במאי 2019, יצאה תוכנה חדשה להתקנת התעודה, התוכנה החדשה מתקינה את התעודה אוטומטית גם במוצרי node.

אפשרות מומלצת

מורידים את התעודה של ספק נטפרי הנוכחי שאתם מחוברים אליו מכאן:

http://netfree.link/netfree-ca.crt

ושומרים אותה במחשב במיקום קבוע.


windows:

מגדירים במחשב משתנה סביבה בשם NODE_EXTRA_CA_CERTS, שהערך שלו הוא כתובת התעודה במחשב.

להגדרת משתנה סביבה במערכת Windows יש לכתוב בשורת הפקודה במצב מנהל:

SetX NODE_EXTRA_CA_CERTS "C:\netfree-ca.crt" /m

כמובן שיש לשנות את הנתיב ‎C:\netfree-ca.crt בנתיב בו שמרתם את התעודה שהורדתם.


linux:

יש לפתוח את קובץ הפרופיל (‎/etc/profile) ולכתוב את השורה הבאה בסוף הקובץ:

export NODE_EXTRA_CA_CERTS=/path/to/netfree-ca.crt

יש להחליף את הנתיב ‎/path/to/netfree-ca.crt בנתיב בו שמרתם את התעודה שהורדתם, ולהפעיל חלון טרמינל חדש.


mac:

צריך להגדיר משתנה סביבה לקובץ הפרופיל של סביבת שורת הפקודה שאתם משתמשים בה.

  • אם אתם משתמשים ב-bash, קובץ הפרופיל נמצא בנתיב bash_profile./~ או בנתיב bashrc./~
  • אם אתם משתמשים ב-zsh (ברירת המחדל מ-Catalina 10.15 ואילך), קובץ הפרופיל נמצא בנתיב zshenv./~
  • אם אתם משתמשים ב-Oh my zsh, קובץ הפרופיל נמצא בנתיב zshrc./~

הריצו את הפקודה הבאה בהתאמה לנתיב של קובץ הפרופיל הנוכחי שלכם, וכמובן את path/to/netfree-ca.crt/ תחליפו בנתיב שבו שמרתם את התעודה שהורדתם:

echo export NODE_EXTRA_CA_CERTS=/path/to/netfree-ca.crt >> ~/.zshenv

והפעילו חלון טרמינל חדש.


אפשרות נוספת

במקרה שההגדרה לא עובדת בגלל שזו גירסה ישנה או שמדובר ב electron יש להוסיף את הקוד הזה בקוד שאתם כותבים:

(function(){
	if(!process.env.NODE_EXTRA_CA_CERTS) return;
	try{
		var netfreeCa = require("fs").readFileSync(process.env.NODE_EXTRA_CA_CERTS);
	}catch(e){
		return;
	}
	
	var NativeSecureContext = process.binding('crypto').SecureContext;
	var oldaddRootCerts = NativeSecureContext.prototype.addRootCerts;
	NativeSecureContext.prototype.addRootCerts = function(){
		var ret = oldaddRootCerts.apply(this,arguments);
		this.addCACert(netfreeCa);
		return ret;
	};
})();



אפשרות ביטול בדיקת אבטחה

ניתן גם לבטל את הצורך בתעודה ע"י ביטול האבטחה, בכל הרצת node ודברים מבוססים עליו (לא מומלץ כפתרון קבע):


הריצו בשורת הפקודה:

linux\mac:

export NODE_TLS_REJECT_UNAUTHORIZED=0

windows:

set NODE_TLS_REJECT_UNAUTHORIZED=0


ולאחר מכן הריצו את ה node.

הפעולה תעזור עבור ההרצה הנוכחית של הטרמינל בלבד.