התקנה ותצורה של dnscrypt-proxy + dnsmasq ב- Archlinux

מבוא: 
  

מה זה dnscrypt-proxy?
- DNScrypt מצפנה ומאמתת תעבורת DNS בין המשתמש לפותר ה- DNS, מונעת זיוף מקומי של שאילתות DNS, ומבטיחה שתגובות DNS נשלחות על ידי השרת הנבחר. (Wiki)

מה זה dnsmasq?
- dnsmasq מספק שירותים כגון מטמון DNS ושרת DHCP. כשרת שם דומיין (DNS), הוא יכול לשמור מטמון שאילתות DNS כדי לשפר את מהירויות החיבור לאתרים בהם ביקרת בעבר, וכשרת DHCP ניתן להשתמש ב- dnsmasq כדי לספק כתובות IP פנימיות ומסלולים למחשבים ברשת LAN. ניתן ליישם אחד או שני השירותים הללו. dnsmasq נחשב קל משקל וקל להגדרה; הוא מיועד לשימוש במחשב אישי או לשימוש ברשת עם פחות מ -50 מחשבים. זה מגיע גם עם שרת PXE. (Wiki)

במה השתמשתי?:
- לעריכת קבצי התצורה בהם השתמשתי ננו.
- כל הזמן עשיתי את זה עם חשבון השורש שלי, אבל אם הם הגדירו sudo, הם יכולים להשתמש בזה בבטחה.
- כדי לבדוק את המטמון באמצעות הפקודה dig, הוא נמצא בכלי bind
בתוך המאגרים הרשמיים, pacman -S כלים לאגד ???

התקנה:

  • כשורש או באמצעות sudo במסוף או tty שלנו אנו מתקינים את חבילות dnscrypt-proxy ו- dnsmasq ככה:
  • הודעת האזהרה היא מכיוון שכבר התקנתי אותם, אתה רק צריך לאשר על ידי לחיצה על Enter:

הגדרה:

1 - בואו נפעיל dnscrypt-proxy (זכור כשורש או באמצעות sudo):


2 - כעת אנו עורכים את הקובץ / Etc / resolv.conf ובשרת שמות אנחנו מוחקים את מה שיש שם ושמים 127.0.0.1 (אם אתה רוצה אתה יכול לעשות גיבוי של הקובץ) וזה אמור להיראות כך:

  • אם ניקח בחשבון ש- NetworkManager כותב את הקובץ resolv.conf, מה שאנחנו הולכים לעשות הוא להגן עליו מפני כתיבה באמצעות הפקודה הבאה:


    3 - עכשיו מה שאנחנו הולכים לעשות הוא לחפש שרת הקרוב ביותר למיקום שלנו, אבל אתה יכול להשתמש בשרת שמגיע כברירת מחדל שהוא dnscrypt.eu-nl, הרשימה ניתנת לפתיחה עם localc נמצאת כאן: / usr / שתף / dnscrypt-proxy / dnscrypt-resolvers.csv ככה:

  • אם ברצוננו לשנות את השרת הפותר את ה- DNS המוגדר כברירת מחדל אנו יכולים לערוך כך:
  • בסוף הקובץ בקטע [שירות] אנו משנים את מה שנבחר באפור ומציבים את השרת שכבר בחרנו ברשימה:


    4 - כברירת מחדל dnscrypt-proxy משתמש ביציאה 53, מכיוון ש- dnsmasq עושה זאת, אז מה שאנחנו הולכים לעשות זה לשנות אותו באמצעות שוב עם:
    systemctl לערוך את dnscrypt-proxy.service - מלא ובקטע [Socket] אנו משאירים זאת כדלקמן:

אנו שומרים את השינויים וסוגרים.

5 - עכשיו אנו מגדירים את dnsmasq, אנו הולכים לערוך את הקובץ /etc/dnsmasq.conf ולהוסיף את שלוש השורות בסוף:

לא פתור
שרת = 127.0.0.1 # 40
כתובת האזנה = 127.0.0.1

אנו שומרים את השינויים וסוגרים.

6 - כעת אנו מבצעים את הפעולות הבאות:
- אנו מפעילים מחדש את dnscrypt-proxy:
הפעל מחדש את מערכת dnscrypt-proxy
- אנו מפעילים את dnsmasq:
systemctl לאפשר dnsmasq
- אנו מבצעים דנסמסק:
התחל systemctl dnsmasq
- אנו מפעילים מחדש את חיבור האינטרנט שלנו:
הפעל מחדש את NetworkManager

7 - ובכן עכשיו אנו בודקים אם זה באמת עובד עם פינג למשל ל- google.com.ar:

8 - אנו בודקים אם מטמון ה- dns עובד עם הפקודה dig:

- כאן אנו לוקחים בחשבון שהחפירה הראשונה שאני עושה יש עיכוב של 349 אלפיות שניים וכשאני עושה את השאילתה שוב עם חפירה, מה קורה? 0 אלפיות שנייה, אז הוא נשמר נכון.

9 - מוכן dnscrypt-proxy ו- dnsmasq מוגדרים ועובדים כראוי!

הערה: אני רוצה להבהיר לאחר חיפוש בכמה מקומות שזה לא עבד לי בשום צורה שהיא הראתה ב- arch wiki, הגרסה הספרדית מתורגמת בצורה גרועה (זו תהיה שאלה אם מישהו מתרגם טוב או שאני מתישהו) השתמשתי בגרסה באנגלית. אז בעצם סמכתי על הוויקי האמור, כל הזיכויים להם. במקרה זה הם הצעדים בהם השתמשתי וזה עבד בשבילי.
כל שאלה או אי נוחות שהם הודיעו לי ואנחנו נדבר על זה עד שזה יעבוד!

חיבוק מטרה! 😀


השאירו את התגובה שלכם

כתובת הדוא"ל שלך לא תפורסם. שדות חובה מסומנים *

*

*

  1. אחראי לנתונים: מיגל אנחל גטון
  2. מטרת הנתונים: בקרת ספאם, ניהול תגובות.
  3. לגיטימציה: הסכמתך
  4. מסירת הנתונים: הנתונים לא יועברו לצדדים שלישיים אלא בהתחייבות חוקית.
  5. אחסון נתונים: מסד נתונים המתארח על ידי Occentus Networks (EU)
  6. זכויות: בכל עת תוכל להגביל, לשחזר ולמחוק את המידע שלך.

  1.   ללא שם דיג'ו

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

    לחפור פעמים עם ובלי dnsmasq להישאר זהה, אולי מישהו יודע על שיטה אחרת ולשתף אותה.
    לגבי

    1.    קֶרַח דיג'ו

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

  2.   ללא שם דיג'ו

    תמונה מצורפת :
    imgur .com / 9RQ7yhF.png

  3.   דניאל סק 3 דיג'ו

    כמה זמן כתובות dns שמורות במטמון dnsmasq? אני זוכר שניסיתי את זה לפני זמן מה ואחרי כמה דקות, 10 או 5, dnsmasq שוכח הכל

    1.    קֶרַח דיג'ו

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

  4.   חכם דיג'ו

    שלום כשאני נותן כשורש "systemctl start dnsmasq" אני מקבל שגיאה, כשאני נותן את הפקודה "systemctl status dnsmasq.service" זה מה שאני מקבל:

    ● dnsmasq.service - שרת DNS קליל ושמירת מטמון
    נטען: נטען (/usr/lib/systemd/system/dnsmasq.service; מופעל; הגדרת ספק מראש: מושבתת)
    פעיל: נכשל (תוצאה: קוד יציאה) מאז שני 2016-03-07 11:41:41 ART; לפני 18 שנים
    Docs: man: dnsmasq (8)
    תהליך: 7747 ExecStart = / usr / bin / dnsmasq -k –enable-dbus –user = dnsmasq –pid-file (קוד = יציאה, סטטוס = 2)
    תהליך: 7742 ExecStartPre = / usr / bin / dnsmasq –test (קוד = יציאה, סטטוס = 0 / SUCCESS)
    PID ראשי: 7747 (קוד = יציאה, סטטוס = 2)

    יום שלישי 07 11:41:41 חוכמת מערכת [1]: הפעלת DHCP קל משקל ושרת DNS במטמון ...
    שלישי 07 11:41:41 חוכמת דנסמסק [7742]: דנסמסק: תחביר בדוק אישור.
    יום שלישי 07 11:41:41 חוכמת dnsmasq [7747]: dnsmasq: נכשל יצירת שקע האזנה ליציאה 53: כתובת כבר בשימוש
    יום שלישי 07 11:41:41 חוכמת מערכת [1]: dnsmasq.service: התהליך הראשי יצא, קוד = יציאה, סטטוס = 2 / INVALIDARGUMENT
    יום שלישי 07 11:41:41 Wisdom systemd [1]: נכשלה הפעלת DHCP קל משקל ושרת DNS במטמון.
    יום שלישי 07 11:41:41 Wisdom systemd [1]: dnsmasq.service: היחידה נכנסה למצב נכשל.
    יום שלישי 07 11:41:41 Wisdom systemd [1]: dnsmasq.service: נכשל עם התוצאה 'קוד יציאה'.

    מה עליי לעשות? תודה.

    1.    קֶרַח דיג'ו

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

  5.   גונזה דיג'ו

    @ice ice, בהשוואה בין הפוסט הזה לסרטון שלך שנעשה עליו, אני יכול לראות שיש שגיאה בשלב מספר 4 שנכתבה כאן. והשגיאה היא שהקובץ שיש לערוך אינו "systemctl edit dnscrypt-proxy.service –full", אלא יש לערוך אותו "systemctl edit dnscrypt-proxy.socket –full". (שימו לב שבמקום .service עליכם לכתוב .socket).

    זו הסיבה ש- @ wisse wisse מקבל את הודעת השגיאה כשרוצים להתחיל את שירות dnsmasq (מכיוון שגם אותו דבר קרה לי).

    ברכות!