ในบทความนี้ชื่อ กำหนดค่าเซิร์ฟเวอร์ Linuxผู้ใช้สามารถทราบวิธีการดำเนินกิจกรรมนี้ เขาควรจะดำเนินการกับเนื้อหาที่ง่ายและเข้าใจเท่านั้น
กำหนดค่าเซิร์ฟเวอร์ Linux
การจัดการการกำหนดค่าและติดตั้งเซิร์ฟเวอร์ Linux, DNS ซึ่งย่อมาจาก Domain Name System หมายถึงระบบชื่อที่ไม่เฉพาะเจาะจงสำหรับระบบ หน้าที่ของมันถูกเรียกว่าเซิร์ฟเวอร์ DNS ซึ่งนำไปสู่ที่อยู่ IP ที่ผู้ใช้เลือก
เป็นกระบวนการที่สำคัญและมีวัตถุประสงค์เพื่อรักษาอินเทอร์เน็ต เป็นบริการพื้นฐานบนเซิร์ฟเวอร์
จากย่อหน้านี้ เราจะแจ้งให้ผู้ใช้ทราบทุกอย่างที่เกี่ยวข้องกับการกำหนดค่าและการติดตั้งเซิร์ฟเวอร์ Linux
ไฟล์ / etc / hosts
ในการกำหนดค่าเซิร์ฟเวอร์ Linux คุณจะรู้ว่าไฟล์โฮสต์ที่เป็นของคอมพิวเตอร์นั้นระบบปฏิบัติการใช้เพื่อเก็บข้อมูลที่มีอยู่ระหว่างโดเมนอินเทอร์เน็ตและที่อยู่ IP หมายถึงหนึ่งในวิธีการต่าง ๆ ที่ระบบปฏิบัติการใช้กับแนวคิด ของการแก้ชื่อโดเมน ตารางที่เรียกว่า / etc / hosts เป็นของไฟล์บนระบบ Linux
กล่าวคือ ถ้าผู้ใช้ไม่มีเซิร์ฟเวอร์ DNS หรือล้มเหลวว่าเซิร์ฟเวอร์ DNS ไม่พร้อมใช้งาน ไฟล์ /ฯลฯ / โฮสต์มีความสามารถในการแปลที่อยู่ IP เป็นชื่อโดยใช้ไฟล์ของตัวเอง
ซึ่งหมายความว่าระบบจะพิจารณาไฟล์ก่อนที่จะไปที่เซิร์ฟเวอร์ DNS และเมื่อได้รับโดเมนแล้ว ก็สามารถแปลได้โดยไม่ต้องไปที่เซิร์ฟเวอร์ DNS
ทำได้โดยการแก้ไขดังแสดงด้านล่าง: 127.0.0.1 google.com จากนั้นคุณต้องไปที่เบราว์เซอร์เขียน google.com และดูผลลัพธ์ในกรณีที่คุณมีเซิร์ฟเวอร์ Apache ในระบบและเซิร์ฟเวอร์ภายในถูกปรับเพื่อให้คุณสามารถดูหน้าดัชนีของเซิร์ฟเวอร์ ท้องถิ่น แทนที่จะแสดงหน้า Google
เราขอแนะนำบทความที่น่าสนใจเกี่ยวกับการคำนวณ: ประเภทของเซิร์ฟเวอร์
คุณมีตัวเลือกที่จะย้าย google.com ไปยังที่อยู่ IP อื่นที่พบได้ทุกที่ และสังเกตผลลัพธ์เพื่อให้แน่ใจ
หน้าที่ของไฟล์นี้คือการแปลที่อยู่ IP ต่างๆ เป็นชื่อ อย่างไรก็ตาม บนเครือข่ายที่เชื่อมต่อซึ่งมีเซิร์ฟเวอร์ที่เชื่อมต่ออยู่
ชื่อโดเมน
หากคุณเข้าชมเว็บไซต์ คุณต้องเขียน FQDN ซึ่งหมายถึงชื่อโดเมนแบบเต็ม หรือไม่ใช้ชื่อโดเมนในลักษณะนี้: likegeeks.com หรือ www.google.com
ต้องทราบว่าแต่ละโดเมนประกอบด้วยส่วนประกอบของโดเมน และประเด็นมีหน้าที่ในการแยกส่วนประกอบเหล่านี้
คอมข้อความหมายถึงองค์ประกอบโดเมนของระดับบนสุด Google เป็นองค์ประกอบโดเมนระดับที่สอง ในขณะที่ www เป็นองค์ประกอบโดเมนระดับที่สาม
ความจริงก็คือเมื่อคุณเยี่ยมชมเว็บไซต์ใด ๆ เบราว์เซอร์จะเพิ่มจุดสิ้นสุดอย่างเงียบ ๆ มันมองไม่เห็นดังนั้นโดเมนจริงจึงปรากฏ www.google.com จึงต้องระลึกไว้เสมอว่าระยะเวลานั้นปรากฏขึ้นหลัง com ณ จุดนี้เรียกว่าโดเมนรูท
หลายคนจะตั้งคำถามว่า ทำไมรูทโดเมนนี้หรือจุดที่ถูกเพิ่มเข้าไป มันเป็นเพียงเพราะจุดนี้ให้บริการโดยเนมเซิร์ฟเวอร์รูท มีเนมเซิร์ฟเวอร์รูทประมาณ 13 แห่งทั่วโลก ที่หน้าที่ของพวกเขาคือสมองของ อินเตอร์เนต.
เนมเซิร์ฟเวอร์รูทมีชื่อดังต่อไปนี้: a.root-server.net, b.root-server.net
ชื่อโดเมนระดับบนสุด (TLD)
ควรเปิดเผยว่าโดเมนระดับบนสุด (TLD) แบ่งออกเป็นหมวดหมู่ที่เกี่ยวข้องกับองค์ประกอบทางภูมิศาสตร์หรือการทำงาน
มีโดเมนระดับบนสุดมากกว่า 800 โดเมนบนเว็บ เราแสดงไว้ด้านล่าง:
โดเมนระดับบนสุดทั่วไป เช่น: org, .com, .net Edu และอื่น ๆ อีกมากมาย
โดเมนระดับบนสุดตามรหัสประเทศ ได้แก่ .us, .ca และอื่นๆ ที่เป็นของรหัสประเทศ ซึ่งในกรณีนี้คือสหรัฐอเมริกาและแคนาดา
โดเมนระดับบนสุดใหม่จากแบรนด์ต่างๆ เช่น Linux, .Microsoft, .CompanyNamey
โครงสร้างพื้นฐานระดับบนสุดเป็นโดเมน
โดเมนย่อย
ในกรณีเหล่านี้ เมื่อคุณเข้าสู่เว็บไซต์ เช่น google.com อีเมลจะเป็นโดเมนย่อยของ google.com
เฉพาะเนมเซิร์ฟเวอร์ของ mail.google.com เท่านั้นที่ทราบถึงการมีอยู่ของโฮสต์ทั้งหมดที่อยู่ภายใต้นั้น เหตุผลที่ Google รับรู้ในกรณีที่มีหรือไม่มีโดเมนย่อยหรืออีเมล เนมเซิร์ฟเวอร์ที่รูทที่พวกเขามี ไม่มีความคิดเกี่ยวกับเรื่องนี้
ประเภทของเซิร์ฟเวอร์ DNS
ในสภาพแวดล้อมการประมวลผล มีเซิร์ฟเวอร์ DNS สามประเภท เช่น:
- เซิร์ฟเวอร์ DNS หลักคือเซิร์ฟเวอร์ที่มีไฟล์การกำหนดค่าของโดเมนและตอบคำถาม DNS
- เซิร์ฟเวอร์ DNS รองคือเซิร์ฟเวอร์ที่ทำหน้าที่เป็นสำเนาสำรองและมีหน้าที่แจกจ่ายโหลด เซิร์ฟเวอร์หลักรู้ว่ามีเนมเซิร์ฟเวอร์สำรองซึ่งกำลังส่งการอัปเดต
- การแคชเซิร์ฟเวอร์ DNS ฟังก์ชันเหล่านี้จะแคชเฉพาะการตอบสนองทั้งหมดที่ออกจาก DNS เพื่อให้เซิร์ฟเวอร์ DNS หลักหรือรองไม่ต้องถูกสอบถามอีก
- สามารถจัดการให้ระบบดำเนินกิจกรรมต่างๆ ได้อย่างง่ายดาย เช่น เซิร์ฟเวอร์แคช
การกำหนดค่าเซิร์ฟเวอร์ Linux DNS
ในตลาดมีแพ็คเกจ Linux มากมายที่เสนอให้ใช้งานฟังก์ชัน DNS อย่างไรก็ตาม เราจะพูดถึงเซิร์ฟเวอร์ BIND DNS ซึ่งใช้ในเซิร์ฟเวอร์ DNS ส่วนใหญ่ในทุกส่วนของโลก
ในกรณีที่ผู้ใช้ใช้การแจกจ่ายที่อิงตาม Red Hat เช่น CentOs วิธีการติดตั้งแพ็กเกจจะเป็นดังนี้: $ dnf -y install bind
หากคุณอ้างถึงระบบ Debian เช่น Ubuntu: $ apt-get install bind9
ในการกำหนดค่าเซิร์ฟเวอร์ Linux จะแสดงให้ผู้อ่านเห็นเมื่อกระบวนการติดตั้งเสร็จสิ้น สามารถเริ่มบริการและทดสอบการทำงานได้ทันทีเมื่อเริ่มต้น: $ systemctl start named; $ systemctl เปิดใช้งานชื่อ
การตั้งค่า BIND
เป็นที่เปิดเผยว่าการกำหนดค่าของบริการสามารถพบได้ในไฟล์ /etc/named.conf
มีคำสั่งบางอย่างที่ BIND ใช้ในไฟล์เช่น:
- ตัวเลือก: ซึ่งใช้สำหรับการกำหนดค่า BIND ส่วนกลาง
- การบันทึก: สามารถบันทึกได้และไม่สามารถละเว้นได้
- โซน: เรียกว่าโซน DNS
- รวม: ใช้เพื่อรวมไฟล์อื่นในตัวเลือก named.conf
- คุณสามารถดูได้จากคำสั่ง options ไดเร็กทอรีการทำงานที่เสนอให้ BIND เป็นไดเร็กทอรี: / var / ตั้งชื่อ
- พึงระลึกไว้เสมอว่าการประกาศโซน ยอมรับว่ามีการกำหนดเขต DNS เหมือนกับที่เกิดขึ้นกับโดเมน google.com ซึ่งมีโดเมนย่อยด้วย mail.google.com ที่รู้จักกันดี เช่นเดียวกับ analytics.google .com นอกเหนือจากโดเมนย่อยอื่นๆ
- สิ่งสำคัญที่ควรทราบคือ โดเมนและโดเมนย่อยทั้งสามนี้: โดเมนและโดเมนย่อย มีโซนที่กำหนดโดยคำสั่งโซน
การกำหนดโซนหลัก
เมื่อเราทราบประเภทของเซิร์ฟเวอร์ DNS ที่มีอยู่แล้ว เช่น เซิร์ฟเวอร์ DNS หลักและรอง รวมถึงเซิร์ฟเวอร์แคช
เซิร์ฟเวอร์หลักและเซิร์ฟเวอร์รองได้รับการพิจารณาว่ามีสิทธิ์ในการตอบกลับ ซึ่งแตกต่างจากเซิร์ฟเวอร์แคช
ตอนนี้ เพื่อคั่นโซนหลักในไฟล์ คุณสามารถใช้สิ่งต่อไปนี้: โซน «likegeeks.com» {; พิมพ์ต้นแบบ; ไฟล์ likegeeks.com.db; } ;.
สำหรับความรู้ของผู้ใช้ ไฟล์ที่มีข้อมูลของข้อมูลที่สอดคล้องกับพื้นที่ที่มีไดเร็กทอรี / var / ชื่ออยู่ เนื่องจากเป็นไดเร็กทอรีการทำงานที่มีตัวเลือกอยู่
ในการกำหนดค่าเซิร์ฟเวอร์ Linux แสดงว่าต้องจำไว้ว่าซอฟต์แวร์เซิร์ฟเวอร์หรือแผงโฮสต์จะสร้างไฟล์นี้ด้วยชื่อโดยอัตโนมัติ ดังนั้นหากโดเมนคือ example.org ไฟล์จะถูกตั้งชื่อ / var / ชื่อ / example.org.db
ในกรณีที่ประเภทปรากฏเป็นต้นแบบ แสดงว่าอยู่ในโซนหลัก
คำจำกัดความของโซนรอง
คำจำกัดความของโซนรองนั้นคล้ายกับที่เรียกว่าโซนหลักมาก มันมีการปรับเปลี่ยนเพียงเล็กน้อย มาดูกัน: โซน «likegeeks.com» {; พิมพ์ทาส; ต้นแบบที่อยู่ IP Nameserver หลักที่นี่; ; ไฟล์ likegeeks.com.db และ} ;.
โดเมนในโซนรองจะเหมือนกับโซนหลัก ต้องเป็นประเภทสเลฟ หมายความว่าเป็นโซนรอง ตัวเลือกมาสเตอร์ทำงานเพื่อแสดงรายการที่อยู่ IP ต่างๆ ของเนมเซิร์ฟเวอร์หลักเพื่อสรุป อาจรายงานว่าไฟล์นั้นเป็นเส้นทางอินพุตของไฟล์โซนหลัก
การกำหนดโซนแคช
ในการกำหนดค่าเซิร์ฟเวอร์ Linux เราจะแสดงคำจำกัดความของพื้นที่จัดเก็บแคช อาจกล่าวได้ว่าแง่มุมนี้มีความจำเป็น อย่างไรก็ตาม ไม่ควรมีพื้นที่แคชให้สมบูรณ์ ซึ่งจะช่วยลดการสืบค้นที่ส่งไปยังเซิร์ฟเวอร์ DNS ได้
- ในการกำหนดว่าแคชโซนคืออะไร จำเป็นต้องมีสามส่วนโซน โดยมีรายการต่อไปนี้ในลำดับแรก:
- โซน "." ใน {พิมพ์คำใบ้; ไฟล์ "root.hint"; } ;.
- ในอันแรกมีจุดเนื่องจากเป็นรูทเนมเซิร์ฟเวอร์ประเภทที่แสดงเป็น: คำใบ้; หมายถึงการเข้าถึงในพื้นที่แคชในขณะที่ไฟล์ "root.hints"; หมายถึงไฟล์ที่มีเซิร์ฟเวอร์รูท
- สามารถรับรูทเนมเซิร์ฟเวอร์ล่าสุดได้จาก http://www.internic.net/zones/named.root
ในโซนที่สองมีการกำหนดด้วยไฟล์ที่แสดงด้านล่าง: /ฯลฯ / named.rfc1912.zones, นอกจากนี้ยังมี /etc/named.conf ผ่านคำสั่ง "รวม" ที่แทรกโดยค่าเริ่มต้น เช่น:
- โซน "localhost" ใน {type master; ไฟล์ "localhost.db"; } ;.
- ในที่สุดในโซนที่สามจะได้รับการค้นหาที่ตรงกันข้ามสำหรับ localhost
- โซน "0.0.127.in-addr.arpa" ใน {ประเภทหลัก; ไฟล์ "127.0.0.rev"; }; -.
- เป็นสิ่งสำคัญที่จะต้องทราบว่าการวางสามโซนเหล่านี้ใน /etc/named.conf ช่วยให้ระบบทำงานเป็นเซิร์ฟเวอร์แคช DNS ข้อมูลของไฟล์จะต้องเขียนลงใน likegeeks.com.db, localhost ต่อไปนี้ db และ 127.0.0.rev
ประเภทระเบียน DNS
ไฟล์ที่อยู่ในฐานข้อมูลเป็นประเภทบันทึก เช่น SOA, NS, A, PTR, MX, CNAME และ TXT
ต่อไป เราอุทิศตนเองเพื่อพูดถึงบันทึกแต่ละประเภท เราเริ่มต้นด้วย:
SOA: เริ่มบันทึกอำนาจ
ประเภทระเบียน SOA จะแสดงรายการ DNS สำหรับไซต์ดังต่อไปนี้: example.com 86400 ใน SOA ns1.example.com mail.example.com (2017012604; ซีเรียล 86400; รีเฟรช วินาที 7200; ลองใหม่อีกครั้ง วินาที 3600000; หมดอายุ วินาที 86400; ต่ำสุด วินาที ).
จะเห็นได้ว่าบรรทัดแรกขึ้นต้นด้วยโดเมน example.com และลงท้ายด้วยจุด ซึ่งเหมือนกับนิยามโซนในไฟล์ /etc/named.conf
ควรพิจารณาว่าไฟล์ที่เป็นของการกำหนดค่า DNS นั้นเข้มงวดเกินไป
ในบทความนี้การกำหนดค่าเซิร์ฟเวอร์ Linux เราแสดงข้อกำหนดต่อไปนี้:
- IN ย่อมาจากการลงทะเบียนอินเทอร์เน็ต
- SOA แปลบันทึกการเริ่มต้นของผู้มีอำนาจ
- Ns1.example.com. หมายถึงเซิร์ฟเวอร์ชื่อโดเมน
- Mail.host.com.es มันคืออีเมล @ มันถูกแทนที่ด้วยจุด และอีกช่วงเวลาหนึ่งจะถูกสรุป
ในบรรทัดที่ 2 คุณมีหมายเลขประจำเครื่องที่ใช้ในการประกาศให้เนมเซิร์ฟเวอร์ทราบเวลาที่ไฟล์ได้รับการอัปเดตซึ่งหมายความว่าเมื่อมีการแก้ไขข้อมูลโซนจะต้องเพิ่มขึ้น หมายเลข หมายถึง หมายเลขซีเรียลที่มีรูปแบบ YYYYMMDDxx วาง xx และเริ่มต้นด้วย 00
บรรทัดที่ 3 หมายถึงความถี่ที่มีการอัปเดตในหน่วยวินาที แสดงความถี่ที่เซิร์ฟเวอร์ DNS สำรองต้องปรึกษากับเซิร์ฟเวอร์หลัก เพื่อเริ่มการค้นหาการอัปเดต
ในบรรทัดที่ 4 หมายถึงอัตราการคืนเงินเป็นวินาที เป็นเวลาที่ใช้สำหรับเซิร์ฟเวอร์ DNS สำรอง หลังจากที่พยายามเชื่อมต่อกับเซิร์ฟเวอร์ DNS หลัก และไม่สามารถเข้าถึงได้
บรรทัดที่ 5 คือนโยบายการหมดอายุ ในกรณีที่เซิร์ฟเวอร์รองไม่สามารถเชื่อมต่อกับเซิร์ฟเวอร์หลักเพื่อดำเนินการอัปเดต คุณต้องยกเลิกค่าหลังจากจำนวนวินาทีที่แสดง
สุดท้าย บรรทัดที่ 6 แสดงเซิร์ฟเวอร์แคชที่ไม่สามารถเชื่อมต่อกับเซิร์ฟเวอร์ DNS หลักได้ พวกเขารอก่อนที่รายการจะหมดอายุ เป็นหน้าที่รับผิดชอบในการกำหนดเวลารอ
NS: บันทึกเนมเซิร์ฟเวอร์
เร็กคอร์ดเหล่านี้สามารถใช้โดยเซิร์ฟเวอร์ NS เพื่อดูรายละเอียดเนมเซิร์ฟเวอร์สำหรับโซนเฉพาะ เร็กคอร์ด NS สามารถเขียนได้ด้วยวิธีต่อไปนี้:
- ใน NS ns1.example.com ใน NS ns2.example.com
- คุณไม่จำเป็นต้องมีระเบียน NS 2 รายการ อย่างไรก็ตาม ควรมีเนมเซิร์ฟเวอร์สำรอง
- A และ AAAA: บันทึกที่อยู่
- คุณต้องลงทะเบียน A มีหน้าที่ในการจับคู่ชื่อโฮสต์กับที่อยู่ IP: รองรับใน 192.168.1.5 ในกรณีที่ผู้ใช้มีโฮสต์ที่ suppor.example.com ที่ IP address 192.168.1.5 สามารถเขียนได้ดังกรณีข้างต้น
PTR: บันทึกตัวชี้
ระเบียน PTR ใช้เพื่อดำเนินการแก้ไขชื่อตรงข้าม ส่งกลับที่อยู่ IP และส่งคืนชื่อโฮสต์ เป็นสิ่งที่ตรงกันข้ามกับสิ่งที่รีจิสเตอร์ A ดำเนินการ 192.168.1.5 ใน PTR support.example.com ในกรณีนี้ ชื่อเต็มของโฮสต์จะถูกวางโดยการหยุดแบบเต็ม
MX: บันทึกการแลกเปลี่ยนเมล
ระเบียน MX ประเภทนี้หมายถึงไฟล์ในเซิร์ฟเวอร์อีเมล เช่น example.com ในเมล MX 10 จะเห็นได้ว่าโดเมนลงท้ายด้วยจุด ตัวเลข 10 หมายถึงความสำคัญของเซิร์ฟเวอร์เมล ในกรณีที่มีเซิร์ฟเวอร์เมลต่างกัน จำนวนที่น้อยกว่าแสดงว่ามีความเกี่ยวข้องเพียงเล็กน้อย
CNAME: Canonical Name Records
ประเภทของระเบียน CNAME คือประเภทที่ให้สิทธิ์เข้าถึงชื่อโฮสต์โดยตรง
ตัวอย่างเช่น มีการชี้ให้เห็นว่าในกรณีที่คุณมีไซต์ที่มีชื่อโฮสต์ขององค์ประกอบใด ๆ -bignameis.example.com เนื่องจากระบบเป็นเว็บเซิร์ฟเวอร์ คุณมีตัวเลือกในการสร้างชื่อแทนระเบียน www หรือ CNAME สำหรับเจ้าภาพ
ในการสร้างระเบียน CNAME คุณสามารถใช้ชื่อ www.example.com:
- ไม่ว่า bignameis ใน 192.168.1.5
- www IN CNAME ไม่ว่า bignameis.
บรรทัดแรกให้ข้อมูลแก่เซิร์ฟเวอร์ DNS เกี่ยวกับตำแหน่งของนามแฝง ในขณะที่บรรทัดที่สองกำหนดนามแฝงที่ระบุ www
ระเบียน TXT
คุณสามารถใส่ข้อความประเภทใดก็ได้ในระเบียน TXT เช่น ข้อมูลติดต่อหรือข้อมูลอื่นๆ ที่ผู้ใช้ต้องการให้บุคคลระบุเมื่อปรึกษาเซิร์ฟเวอร์ DNS
ในทำนองเดียวกัน คุณมีตัวเลือกในการใช้บันทึก RP เพื่อวางข้อมูลการติดต่อ: example.com ใน TXT »ข้อมูลของคุณอยู่ที่นี่».
ค่า DNS TTL
ในส่วนนี้ /etc/named.conf ที่ด้านบนสุดจะมีรายการ $ TTL ซึ่งมีวัตถุประสงค์เพื่อแจ้ง BIND เกี่ยวกับอายุของแต่ละเร็กคอร์ด
ค่าเป็นวินาทีที่ 14400 วินาที (4 ชั่วโมง), เซิร์ฟเวอร์ DNS จะแคชโซนของคุณนานถึงสี่ชั่วโมง จากนั้นจึงสอบถามเซิร์ฟเวอร์ DNS อีกครั้ง