netfree-doctor

כלי שמאבחן בלחיצה אחת בעיות של "זה לא עובד בנטפרי", מסביר בעברית מה הבעיה, ומציע תיקונים בטוחים למחשב שלכם.

הכלי לא עוקף את הסינון. הוא לא מציע VPN, פרוקסי, מנהרות DNS או כל דרך אחרת לעקוף את נטפרי, וגם לא מכבה בדיקות אבטחה. המטרה היא אחת: לגרום לדברים לעבוד עם נטפרי.

למה צריך את זה?

נטפרי מסננת גם אתרים מוצפנים (HTTPS). לשם כך היא מציגה לכל אתר תעודה שהיא חתמה עליה, ולכן המחשב צריך לסמוך על תעודת השורש של נטפרי.

הדפדפן משתמש במאגר התעודות של Windows, אבל הרבה תוכנות מחזיקות מאגר תעודות משלהן. לכן הן נכשלות עם שגיאות כמו UNABLE_TO_GET_ISSUER_CERT_LOCALLY, SELF_SIGNED_CERT_IN_CHAIN, CERTIFICATE_VERIFY_FAILED או SSL certificate problem. זה קורה למשל ב-Node/npm, ב-Python/pip, ב-Git, ב-Java, ב-Firefox ובאמולטורים של אנדרואיד.

איך מריצים

דרישות: Windows 10/11 ו-Node.js 20 ומעלה.

git clone https://github.com/ayal408/netfree-doctor
cd netfree-doctor
npm install
npm run build

node dist/cli/index.js                          # all checks (Hebrew output)
node dist/cli/index.js check https://chatgpt.com
node dist/cli/index.js fix node-extra-ca --dry-run
node dist/cli/index.js fix node-extra-ca
node dist/cli/index.js undo
npm run gui                                     # GUI window

אפשרויות: --en, --json, --yes, --dry-run, --only node,git, --verbose, --no-color. קוד היציאה הוא 0 כשאין תקלות ו-2 כשנמצאה תקלה.

מה נבדק

netfree

האם עוברים דרך נטפרי

חיבור TLS לכמה אתרים ובדיקה מי הנפיק את התעודה ועד איזו תעודת שורש מגיעה השרשרת.

windows-store

תעודות במאגר Windows

האם תעודות השורש הרשמיות של נטפרי מותקנות, לפי טביעת אצבע.

הפניה למדריך הרשמי בלבד
firefox

Firefox

האם security.enterprise_roots.enabled מופעל בכל פרופיל.

תיקון: כתיבה ל-user.js
node

Node / npm

NODE_EXTRA_CA_CERTS, ה-cafile של npm, ו-strict-ssl=false שהוגדר בטעות.

תיקון: קובץ PEM משולב ומשתנה סביבה
python

Python / pip

pip config, ‏REQUESTS_CA_BUNDLE ובדיקות חיבור אמיתיות, כולל בעיית Python 3.13.

תיקון: certifi + נטפרי ל-pip
git

Git

http.sslBackend, ‏sslCAInfo ו-sslVerify=false המסוכן.

תיקון: sslBackend schannel
java

Java

איתור Java ופקודת keytool המדויקת, או Windows-ROOT.

הסבר בלבד
android

אמולטורים של אנדרואיד

LDPlayer, Android Studio ו-BlueStacks, והסבר על תעודות משתמש מול תעודות מערכת.

הסבר בלבד, בלי root
check <url>

בדיקת כתובת אחת

DNS, ‏TCP, ‏TLS ו-HTTP. מזהה דף חסימה (418) ואת סיבת החסימה, הערות שנטפרי מוסיפה לאתר, ו-WebSocket.

עקרונות בטיחות

אין כיבוי של אימות TLS. לעולם. אלה ה"פתרונות" השגויים שממליצים עליהם בפורומים, והכלי מסרב לבצע אותם:
  • NODE_TLS_REJECT_UNAUTHORIZED=0
  • git config http.sslVerify false
  • npm config set strict-ssl false
  • pip --trusted-host, ‏verify=False, ‏PYTHONHTTPSVERIFY=0
  • curl -k / --insecure
  • כל VPN, פרוקסי או SOCKS

ממצא חשוב: Python 3.13 ומעלה

החל מ-Python 3.13 מופעלת כברירת מחדל בדיקה מחמירה (VERIFY_X509_STRICT). לתעודת השורש של נטפרי שבשימוש כרגע (NetFree Root CA 1990-2200 RSA) חסרה ההרחבה Key Usage, ולכן requests ו-urllib נכשלים גם כשהכול מוגדר נכון. הכלי מזהה את המצב וממליץ על pip-system-certs או על truststore, שמאמתים מול מאגר Windows.

English

netfree-doctor diagnoses "doesn't work on Netfree" problems and explains them in Hebrew (--en for English). Netfree is an Israeli filtering ISP that inspects HTTPS with its own root CAs. Browsers that use the Windows store are fine, but tools with their own CA stores (Node/npm, Python, Git, Java, Firefox, Android emulators) fail with TLS errors.

Fixes change per-user configuration only, show a dry-run first, back up every file, and can be undone. It never bypasses the filter and never disables TLS verification.