שלב 1: התקנה של החבילות הדרושות
לפני שתתחיל לשקול את ההוראות הבאות, אנו רוצים לציין כי באתר שלנו יש כבר מדריך תצורה כללית ל- DNS סטנדרטי ב- Linux. אנו ממליצים להשתמש בדיוק בחומר אם עליך להגדיר את ההגדרות עבור הביקור הרגיל באתרי אינטרנט. לאחר מכן, אנו נציג כיצד מותקן שרת ה- DNS המקומי הראשי עם חלק הלקוח.בסוף תהליך זה, תקבל הודעה כי כל החבילות נוספו בהצלחה למערכת. לאחר מכן, ללכת לשלב הבא.
שלב 2: הגדרת שרת DNS גלובלי
עכשיו אנחנו רוצים להוכיח איך קובץ התצורה העיקרי נערך, כמו גם אשר שורות מתווספים שם. אנחנו לא מתעכב על כל שורה בנפרד, כפי שהוא ייקח הרבה זמן, יתר על כן, כל המידע הדרוש זמין בתיעוד הרשמי.
- באפשרותך להשתמש בכל עורך טקסט כדי לערוך אובייקטי תצורה. אנו מציעים להתקין ננו נוח על ידי הזנת yum sudo להתקין nano ב קונסולה.
- כל החבילות הדרושות יורדו, ואם הם כבר נוכחים בהפצה, תקבל הודעה "לא לבצע שום דבר".
- נמשיך לערוך את הקובץ עצמו. לפתוח אותו דרך sudo nano /etc/named.conf. במידת הצורך, החלף את עורך הטקסט הרצוי, ואז המחרוזת תהיה כדלקמן: sudo vi /etc/named.conf.
- להלן אנו מציגים את התוכן שאתה צריך להכניס את הקובץ שנפתח או לאמת אותו עם הקיים כבר על ידי הוספת שורות חסרות.
- לאחר מכן, לחץ על Ctrl + O כדי להקליט שינויים.
- אין צורך לשנות את שם הקובץ, פשוט לחץ על Enter.
- השאירו עורך טקסט באמצעות CTRL + X.
כפי שהוא כבר נאמר קודם לכן, קובץ התצורה יחייב להוסיף שורות מסוימות המציינות את הכללים הכלליים עבור התנהגות שרת ה- DNS.
//
/ / Named.conf.
//
/ / מסופק על ידי Red Hat Bind החבילה כדי להגדיר את ISC Bind בשם (8) DNS
// שרת כמחסלת שמות בלבד (כמתקן DNS LocalHost בלבד).
//
// ראה / usr / share / doc / bind * / לדוגמה / לדוגמה בשם קבצי תצורה.
//
אפשרויות {
להקשיב לנמל 53 {127.0.0.1; 192.168.1.101;}; ### מאסטר DNS IP ###
# האזנה ON-V6 יציאה 53 {:: 1; };
Directory "/ var / בשם";
קובץ dump "/var/named/data/cache_dump.db";
סטטיסטיקה קובץ "/var/named/data/named_stats.txt";
Memstatistics-file "/var/named/data/named_mem_stats.txt";
לאפשר שאילתה {localhost; 192.168.1.0/24;}; ### טווח IP ###
מתירים העברת {localhost; 192.168.1.102; }; ### Slave DNS IP ###
/*
- אם אתה בונה שרת סמכותי DNS, איננו מאפשר רקורסיה.
- אם אתה רקורסיבית בניין (Caching) שרת DNS, אתה צריך לאפשר
רקורסיה.
- אם שרת DNS רקורסיבית שלך יש כתובת IP לציבור, עליך להפעיל את הגישה
בקרה כדי הגבל שאילתה המשתמשים הלגיטימיים שלך. משנכשל לעשות כך יהיה
לגרום לשרת שלך להיות חלק הגברה DNS בקנה מידה גדול
התקפות. הטמעת BCP38 בתוך תיתן הרשת באופן משמעותי
מנמיכים Surface תקיפה כזו
*/
רקורסיה YES;
dnssec להפעיל כן;
DNSSEC אימות YES;
DNSSEC-LOOKASIDE AUTO;
/ * נתיב ISC DLV KEY * /
bindkeys-קובץ "/etc/named.iscdlv.key";
Managed-מפתחות-ספרייה "/ var / בשם / דינמי";
PID-קובץ "/urn/named/named.pid";
מושב-keyfile "/urn/named/Session.Key";
};
רישום {
ערוץ Default_debug {
קובץ "נתונים / Named.Run";
SEVERITY דינמי;
};
};
אזור "" בשנת {
הקלד רמז;
קובץ "Named.ca";
};
אזור "unixmen.local" ב {
הקלד מאסטר;
קובץ "Forward.unixmen";
מתיר-UPDATE {none; };
};
אזור "1.168.192.in-addr.arpa" ב {
הקלד מאסטר;
קובץ "Reverse.unixmen";
מתיר-UPDATE {none; };
};
כולל "/etc/named.rfc1912.zones";
כולל "/etc/named.root.key";
ודא כי הכל חשוף בדיוק כפי שפורט לעיל, ולאחר מכן לעבור לשלב הבא.
שלב 3: יצירת אזור ישיר הפוך
לקבלת מידע בנוגע למקור, שרת ה- DNS משתמש אזורי ישיר הפוך. הקשר הישיר מאפשר לך לקבל כתובת IP לפי שם המארח, והחזרת באמצעות IP נותן שם תחום. לפעולה התקינה של כול אזור חייבת להינתן עם כללים מיוחדים, יצירה שאנו מציעים לעשות עוד.
- עבור אזור ישיר, ניצור קובץ נפרד באמצעות אותו עורך הטקסט. ואז המחרוזת תיראה כך: sudo ננו /var/named/forward.unixmen.
- תקבל הודעה שזה אובייקט ריק. הדבק את התכנים הבאים שם:
$ TTL 86,400.
@ ב- SOA masterdns.unixmen.local. root.unixmen.local. (
2011071001; סידורי
3600; רענן.
1800; נסה שנית.
604,800; EXPIRE
86,400; מינימום TTL
)
@ לפי NS MASTERDNS.UNIXMEN.LOCAL.
@ ב NS secondarydns.unixmen.local.
@ בכל 192.168.1.101
@ בכל 192.168.1.102
@ בכל 192.168.1.103
MasterDNS IN A 192.168.1.101
SECONDARYDNS IN A 192.168.1.102
בשנת A מזמין 192.168.1.103
- שמור את השינויים וסגור את עורך הטקסט.
- כעת אנו פונים אל האזור הפוך. זה דורש קובץ /Var/Named/reverse.unixmen.
- זה יהיה גם קובץ חדש ריק. הכנס שם:
$ TTL 86,400.
@ ב- SOA masterdns.unixmen.local. root.unixmen.local. (
2011071001; סידורי
3600; רענן.
1800; נסה שנית.
604,800; EXPIRE
86,400; מינימום TTL
)
@ לפי NS MASTERDNS.UNIXMEN.LOCAL.
@ ב NS secondarydns.unixmen.local.
@ ב PTR unixmen.local.
MasterDNS IN A 192.168.1.101
SECONDARYDNS IN A 192.168.1.102
בשנת A מזמין 192.168.1.103
101 ב PTR masterdns.unixmen.local.
102 ב PTR SecondaryDns.unixmen.local.
103 ב PTR client.unixmen.local.
- כאשר חיסכון, אינם משנים את שם האובייקט, אלא פשוט לחץ על מקש Enter.
עכשיו את הקבצים שצוינו ישמשו אזור ישיר הפוך. במידת הצורך, כדאי לערוך אותם כדי לשנות פרמטרים מסוימים. אתה גם יכול לקרוא על כך תיעוד רשמי.
שלב 4: התחל DNS שרת
לאחר השלמת כל ההוראות הקודמות, אתה כבר יכול להתחיל את שרת ה- DNS כך שבעתיד קל לבדוק את הביצועים שלו ולהמשיך בהגדרת פרמטרים חשובים. המשימה מתבצעת כדלקמן:
- במסוף, הזן SUDO SYSTEMCTL להפעיל בשם להוסיף שרת DNS ל- Autoload עבור התחל אוטומטי בעת הפעלת מערכת ההפעלה.
- אשר פעולה זו על ידי הזנת סיסמת Superuser.
- תקבל הודעה על יצירת התייחסות סמלית, כלומר הפעולה הצליחה.
- הפעל את השירות באמצעות systemctl להתחיל בשם. אתה יכול לעצור את זה באותו אופן, רק החלפת אפשרות להתחיל על עצירה.
- כאשר מוצג חלון מוקפץ האימות, הזן את הסיסמה מהשורש.
כפי שניתן לראות, הניהול של השירות שצוין מתבצע על פי אותו עיקרון כמו כל שאר כלי עזר סטנדרטיים, ולכן, לא צריך להיות שום בעיות עם זה אפילו במשתמשים טירון.
שלב 5: שינוי הפרמטרים של חומת האש
עבור הפעולה הנכונה של שרת ה- DNS, יהיה עליך לפתוח את היציאה 53, המתבצעת באמצעות חומת האש סטנדרטית של FireWalld. בטרמינל, תצטרך להציג רק שלושה פקודות פשוטות:
- הראשון כולל תצוגה של FireWall-CMD --פרננט - DD-Port = 53 / TCP והוא אחראי לפתיחת יציאת פרוטוקול TCP. הכנס אותו לתוך הקונסולה ולחץ על Enter.
- עליך לקבל את הודעת "הצלחה", המציינת את היישום המוצלח של הכלל. לאחר מכן, הכנס את מחרוזת FireWall-CMD -Perment - DD-Port = 53 / UDP כדי לפתוח את יציאת פרוטוקול UDP.
- כל השינויים ייושמו רק לאחר אתחול מחדש של חומת האש, המבוצעת באמצעות הפקודה FireWall-CMD --Reload.
אין עוד שינויים עם חומת אש לייצר. שמור את זה כל הזמן על המדינה, כך שאין בעיות גישה.
שלב 6: התאם זכויות גישה
עכשיו יהיה צורך להגדיר את ההרשאות העיקריות ואת זכויות הגישה כדי להגן על פונקציית שרת ה- DNS ולהגן על המשתמשים הרגילים מהיכולת לשנות את הפרמטרים. אנו נעשה את זה בצורה סטנדרטית באמצעות selinux.
- כל הפקודות הבאות יש להפעיל מטעם Superuser. ללא הרף לא להזין את הסיסמה, אנו ממליצים לך להפעיל גישה שורש קבוע עבור הפגישה מסוף הנוכחי. לשם כך, הזן SU במונסולה.
- ציין את סיסמת הגישה.
- לאחר מכן, לסירוגין להזין את הפקודות הבאות כדי ליצור תצורת גישה אופטימלית:
Chgrp בשם -r / var / בשם
Chown -v שורש: בשם /etc/named.conf
Restorecon -rv / var / בשם
Restorecon /etc/named.conf.
על כך, התצורה הכללית של שרת ה- DNS הראשי הושלמה. זה נשאר רק כדי לערוך מספר קבצי תצורה שגיאות בדיקה. אנו מציעים את כל זה כדי להבין את הצעד הבא.
שלב 7: בדיקה עבור שגיאות והשלמת ההגדרה
אנו ממליצים להתחיל בדיקות שגיאה, כך שבעתיד זה לא צריך לשנות את קבצי התצורה הנותרים. לכן נשקול את כל זה בתוך צעד אחד, כמו גם אנו נותנים דוגמאות של פלט תקין של פקודות לבדיקה.
- הזן את בשם Checkconf /etc/named.conf בטרמינל. זה יאפשר לך לבדוק פרמטרים גלובליים. אם, כתוצאה מכך, לא בא פלט, זה אומר שהכל מוגדר כראוי. אחרת, למד את ההודעה, ולדחוף ממנו, לפתור את הבעיה.
- הבא אתה צריך לבדוק את האזור הישיר על ידי הוספת chemedzone בשם Unixmen.Local /var/forworward.Unixmen מחרוזת.
- מדגם פלט הוא כדלקמן: אזור Unixmen.Local / in: טעון סדרתי 2011071001 אישור.
- בערך באותו אזור עם אזור ההפך דרך בשם- Checkzone Unixmen.Local /var/named/evreverse.Unixmen.
- הפלט הנכון צריך להיות: אזור Unixmen.Local / in: טעון סדרתי 2011071001 אישור.
- כעת אנו עוברים אל ההגדרות של ממשק הרשת הראשי. זה ידרוש להוסיף נתונים של שרת ה- DNS הנוכחי. לשם כך, לפתוח את / etc / sysconfig / רשת-סקריפטים / IFCFG-ENP0S3 קובץ.
- ודא שהתוכן מופיע בהמשך. במידת הצורך, הכנס את הפרמטרים DNS.
סוג = "Ethernet"
BootProto = "אף אחד"
Defraute = "כן"
IPv4_failure_fatal = "לא"
Ipv6init = "כן"
IPv6_autoconf = "כן"
Ipv6_defroute = "כן"
IPv6_failure_fatal = "לא"
שם = "ENP0S3"
UUID = "5D0428B3-6AF2-4F6B-9FE3-4250CD839EFA"
Onboot = "כן"
HWADDR = "08: 00: 27: 19: 68: 73"
Ipaddr0 = "192.168.1.101"
Prefix0 = "24"
Gateway0 = "192.168.1.1"
DNS = "192.168.1.101"
Ipv6_peerdns = "כן"
IPv6_peerroutes = "כן"
- לאחר שמירת שינויים, עבור אל הקובץ /etc/resolv.conf.
- כאן אתה צריך להוסיף רק שורה אחת: שמות 192.168.1.101.
- בסיום, הוא נשאר רק להפעיל מחדש את הרשת או המחשב כדי לעדכן את הגדרות התצורה. הרשת מופעל מחדש באמצעות הפקודה NETWORK להפעיל מחדש SystemCTL.
שלב 8: בדיקת שרת ה- DNS מותקן
בסוף בתצורה, הוא נשאר רק כדי לאמת את הפעולה של שרת ה- DNS הזמין לאחר שהוא מתווסף שירות הרשת הגלובלי. פעולה זו מתבצעת גם באמצעות פקודות מיוחדות. הראשון מהם יש צורה של Dig Masterdns.Unixmen.local.
כתוצאה מכך, פלט אמור להופיע על המסך, שבה יש ייצוג דומה עם התוכן כמפורט להלן.
; Dig 9.9.4-Redhat-9.9.4-14.EL7 MasterDns.Unixmen.local
;; אפשרויות גלובל: + CMD
;; בתשובה יש:
;; - >> כותרת.
;; דגלים: QR AA RD RA; שאילתה: 1, תשובה: 1, רשות: 2, נוספת: 2
;; OPT Pseudosection:
; EDNS: גרסה: 0, דגלים :; UDP: 4096.
;; שאלת סעיף:
; Masterdns.unixmen.local. ב.
;; סעיף תשובה:
Masterdns.Unixmen.local. 86,400 IN A 192.168.1.101
;; רשות סעיף:
unixmen.local. 86,400 ב NS secondarydns.unixmen.local.
unixmen.local. 86,400 ב NS masterdns.unixmen.local.
;; קטע נוסף:
Secondarydns.unixmen.local. 86,400 IN A 192.168.1.102
;; זמן שאילתה: 0 מילישניה
;; שרת: 192.168.1.101 # 53 (192.168.1.101)
;; מתי: WED AUG 20 16:20:46 IST 2014
;; גודל RCVD MSG: 125
בפקודה נוספת תאפשר לכם ללמוד על מעמדו של שרת ה- DNS המקומי. כדי לעשות זאת, הכנס nslookup unixmen.local למסוף ולחץ על ENTER.
כתוצאה מכך, שלושה ייצוגים שונים של כתובות IP ושמות תחום אמורה להיות מוצגת.
שרת: 192.168.1.101
כתובת: 192.168.1.101 # 53
שם: unixmen.local
כתובת: 192.168.1.103
שם: unixmen.local
כתובת: 192.168.1.101
שם: unixmen.local
כתובת: 192.168.1.102
אם הפלט תואם לזו שאנחנו מצוינים, זה אומר כי התצורה הושלמה בהצלחה ואתה יכול ללכת לעבודה עם חלק הלקוח של שרת ה- DNS.
הגדרת חלק הלקוח של שרת ה- DNS
אנחנו לא נפריד הליך זה על צעדים בודדים, שכן היא מבוצעת על ידי עריכת קובץ תצורה אחת בלבד. יש צורך להוסיף מידע על כל הלקוחות אשר יחוברו לשרת, ואת הדוגמה של המראה ההתקנה כזה ככה:
- פתח את הקובץ שכתוב בקובץ /etc/resolv.conf באמצעות כל עורך טקסט נוח.
- הוספת מחרוזת החיפוש שרת שמות unixmen.local 192.168.1.101 ו Nameserver 192.168.1012, החלפת כתוב לקוח ההכרחית.
- כאשר חיסכון, אינו משנה את שם הקובץ, אלא פשוט לחץ על מקש Enter.
- לאחר שעזב את עורך הטקסט, להפעיל מחדש את הרשת הגלובלית באמצעות פקוד NETWORK להפעיל מחדש SystemCTL.
אלה היו עיקרי מרכיב הלקוחות של שרת ה- DNS, שרצינו לספר. כל הניואנסים האחרים מוצעים ללמוד על ידי קריאת התיעוד הרשמי במידת הצורך.
בדיקת שרת DNS
השלב האחרון של החומר של היום שלנו הוא בדיקה סופית של שרת ה- DNS. להלן אתה רואה כמה פקודות, ומאפשר לך להתמודד עם המשימה. השתמש אחד מהם על ידי הפעלת דרך "טרמינל". אם לא נצפו שגיאות בתפוקה, אם כן, התהליך כולו נעשה כראוי.
לחפור Masterdns.Unixmen.Local.
לחפור MemayaryDns.Unixmen.Local.
לחפור client.unixmen.Local.
nslookup unixmen.local.
היום שלמדת הכול על הגדרת שרת ה- DNS הראשי בהפצת Centos. כפי שניתן לראות, כל המבצע מתמקד בהזנת פקודות מסוף ועריכת קבצי תצורה, אשר עלולים לגרום לקשיים מסוימים של משתמשים טירונים. עם זאת, אתה רק צריך במדויק בצע את ההוראות האלה ולקרוא את התוצאות של המחאות, כך הכל הולך ללא שגיאות.