Installation of certificate in all Node products
לעברית לחצו כאן
To switch from edit view to read view
Home page > Security certificate > Installation of certificate in all Node products
Update for windows systems: as of 3 May 2019, a new certificate installation software was released, the new software automatically installs the certificate also in GIT
Recommended option
Download the certificate from the current NetFree provider you are connected to from here:
http://netfree.link/netfree-ca.crt
And keep it on the computer in a fixed location.
windows:
Download the certificate of your Provider of NetFree from here.
http://netfree.link/netfree-ca.crt
Save it on your computer where you want but in a fixed place.
Configure on your computer an Environment variable named NODE_EXTRA_CA_CERTS, whose value is the certificate address on the computer.
To define an environment variable in the system Windows, write in a command prompt opened in administrator mode:
SetX NODE_EXTRA_CA_CERTS "C:\netfree-ca.crt" /m
Of course you have to change C:\netfree-ca.crt
to the correct folder where the certificate was saved.
linux:
In Linux systems, open the profile file (/etc/profile) And write the following line at the end of the file:
export NODE_EXTRA_CA_CERTS=/path/to/netfree-ca.crt
Change the path /path/to/netfree-ca.crt
to the path where you saved the certificate you downloaded, and open a new terminal window.
mac:
You need to set an environment variable for the profile file of the command-line environment that you are using.
- If you use bash, the profile file is in the path
bash_profile./~
Or in the pathbashrc./~
- If you use zsh (default from -Catalina 10.15 onwards), the profile file is in the path
zshenv./~
- If you use Oh my zsh, the profile file is in the path
zshrc./~
Run the following command according to the path of your current profile file, and of course path/to/netfree-ca.crt/
replace with the path where you saved the certificate you downloaded:
echo export NODE_EXTRA_CA_CERTS=/path/to/netfree-ca.crt >> ~/.zshenv
And activate a new terminal window.
Another option
If the setting does not work because it is an old version or it is electron, add this code somewhere in the software.
(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; }; })();
Option to cancel security check
Alternatively you can also cancel the need for a certificate by canceling security, on every node run and things based on it (not recommended as a permanent solution):
Run at the command prompt.
In linux\mac:
export NODE_TLS_REJECT_UNAUTHORIZED=0
In windows:
set NODE_TLS_REJECT_UNAUTHORIZED=0
And then run the Node.
This will only help for the current terminal run.