ปกป้อง resolv.conf จาก DHCP บน FreeBSD 10

หากคุณใช้โปรแกรมแก้ไขของคุณเองหรือต้องการใช้งานจากผู้ให้บริการบุคคลที่สามคุณอาจพบว่า/etc/resolv.confDHCP ถูกเขียนทับไฟล์ของคุณ มีหลายวิธีในการแก้ไขปัญหานี้ เนื่องจากคุณอาจต้องการที่จะรีบูตเพื่อให้แน่ใจว่าการเปลี่ยนแปลงของคุณจะเริ่มต้นและเนื่องจากคุณกำลังจะเริ่มต้นด้วยการตั้งค่าเครือข่ายในตอนแรกฉันขอแนะนำให้ทำเช่นนี้ในตัวอย่างทดสอบและ / หรือนอกขอบเขต ชั่วโมง

ตอนนี้ต่อไปนี้เป็นสามวิธีจากที่แย่ที่สุดไปหาดีที่สุด โปรดทราบว่าวิธีการทั้งหมดในคู่มือนี้เขียนขึ้นสำหรับ FreeBSD 10 ผู้ใช้ Linux สามารถอ้างอิงคู่มือนี้ได้

วิธีที่ 1: ใช้การตั้งค่าอินเทอร์เฟซแบบคงที่

ในการทดสอบที่ จำกัด ของฉันผลลัพธ์นี้ทำให้เวลาบูตเร็วขึ้นเล็กน้อยเนื่องจากคุณไม่ต้องรอ DHCP เพื่อกำหนดการตั้งค่าเครือข่ายของคุณ อย่างไรก็ตามฉันได้เห็นการกล่าวถึงในเอกสาร Vultr หลายตัวที่ใช้การตั้งค่าส่วนต่อประสานแบบคงที่และเมื่อคุณควรติดกับ DHCP ฉันคิดว่าพวกเขามีเหตุผลที่ดีสำหรับสิ่งนี้และทำให้ฉันยังคงใช้ DHCP ต่อไป อย่างไรก็ตามหากคุณตัดสินใจที่จะไปเส้นทางนี้ให้ทำตามขั้นตอนด้านล่าง

  • กำหนด IP, เน็ตเวิร์กมาสก์และ IP เกตเวย์ของเซิร์ฟเวอร์ของคุณ
  • แก้ไข/etc/rc.confเพื่อใช้ค่าเหล่านี้แทน DHCP
  • รีบูตเครื่องเพื่อทดสอบการตั้งค่า

กำหนด IP / netmask / เกตเวย์

สมมติว่าอินเตอร์เฟสของคุณคือ vtnet0 ให้ทำดังต่อไปนี้:

ifconfig vtnet0 | grep inet

สิ่งนี้จะทำให้คุณได้รับที่อยู่ IP และ netmask สำหรับเซิร์ฟเวอร์ของคุณ:

inet 10.10.10.10 netmask 0xffffff00 broadcast 10.10.10.255

FreeBSD ชอบใช้ hex สำหรับ netmask การแปลงข้างต้นเป็น255.255.255.0หากคุณสงสัย คุณสามารถหาตารางที่มีประโยชน์ได้ที่นี่แต่อย่ากลัว: คุณสามารถคัดลอกที่อยู่ฐานสิบหกไปยังไฟล์ปรับแต่งของคุณ (หรือแปลงเป็นทศนิยมหากคุณต้องการ)

คุณสามารถค้นหาเกตเวย์ได้หลายวิธี นี่คือหนึ่ง:

route get default | grep gateway จะส่งคืนบางสิ่งตามบรรทัด:

gateway: 10.10.10.1

แก้ไข/etc/rc.confด้วยค่าใหม่

อาวุธที่มี IP, netmask และเกตเวย์ตอนนี้ถึงเวลาที่จะเพิ่มลงในการกำหนดค่าระบบ ฉันขอแนะนำให้สำรองไฟล์นี้ก่อนทำการเปลี่ยนแปลงใด ๆ เนื่องจากจะทำให้การเลิกทำได้ง่ายขึ้นถ้าคุณทำเลอะ จากนั้นเปิดตัว/etc/rc.confแก้ไขที่คุณเลือกและทำการเปลี่ยนแปลงต่อไปนี้:

# Comment out this line:
# ifconfig_vtnet0="dhcp"

# Add these lines:
defaultrouter="10.10.10.1"
ifconfig_vtnet0="inet 10.10.10.10 netmask 0xffffff00"

เห็นได้ชัดว่าคุณควรเปลี่ยน IP, netmask และเกตเวย์จริง ๆสำหรับการปลอมของฉันอย่างชัดเจน

รีบูตและทดสอบ

รีบูตเซิร์ฟเวอร์ของคุณโดยใช้shutdown -r nowและตรวจสอบให้แน่ใจว่ามันกลับมาอย่างถูกต้อง ทำการทดสอบอะไรก็ตามที่คุณเห็นว่าจำเป็นเพื่อให้แน่ใจว่าทุกอย่างทำงานได้อย่างถูกต้อง หากไม่สามารถเข้าถึงเครือข่ายได้ให้ลงชื่อเข้าใช้ผ่านคอนโซลและยกเลิกการเปลี่ยนแปลงของคุณ ถ้าทุกอย่างเรียบร้อยดี ณ จุดนี้คุณสามารถใส่อะไรก็ได้ที่คุณต้องการresolv.confโดยไม่ต้องกลัวว่ามันจะหายไป

ถ้าด้วยเหตุผลใดก็ตามที่คุณไม่สามารถรีบูทได้ควรทำงานได้ แต่ฉันจะทำการรีบูตที่เหมาะสมถ้าฉันเป็นคุณ:

service netif restart && service routing restart

วิธีที่ 2: ทำให้resolv.confไม่เปลี่ยนรูป

นี่เป็นบิตของการแฮ็ก แต่มันเป็นทางออกที่รวดเร็วที่สุด ฉันไม่แนะนำเพราะฉันไม่สามารถรับประกันได้ว่าสิ่งนี้จะไม่ทำให้เกิดความแปลกประหลาดในอนาคตเมื่อคุณอัปเกรดเป็นรุ่นใหม่ของระบบปฏิบัติการและ dhclient น่าจะบ่นเป็นกลุ่ม ที่กล่าวว่าเรียบง่ายchflags schg /etc/resolv.confเป็นสิ่งที่จำเป็น ตอนนี้ไฟล์ได้รับการป้องกันการเขียนอย่างสมบูรณ์แม้จากรูท คุณสามารถตรวจสอบเช่น:

vultr [~]# chflags schg /etc/resolv.conf
vultr [~]# ls -ol /etc/resolv.conf
-rw-r--r--  1 root  wheel  schg 50 Nov 29 06:28 /etc/resolv.conf
vultr [~]# echo "so very untouchable" >> /etc/resolv.conf
/etc/resolv.conf: Operation not permitted.

เลิกทำด้วย: chflags noschg /etc/resolv.conf

วิธีที่ 3: บอก FreeBSD อย่างสุภาพเพื่อออกจากการตั้งค่าของคุณ

นี่คือวิธีที่สะอาดและเหมาะสมที่สุดในการทำสิ่งนี้ให้สำเร็จ มีสองวิธีที่คุณสามารถทำได้:

กำหนดค่า dhclient

ลองยกตัวอย่างจากด้านบนและบอกว่าสิ่งที่คุณต้องทำคือใส่เนมเซิร์ฟเวอร์ที่กำหนดเองของคุณresolv.confและไม่ต้องการเสียทุกครั้งที่ DHCP ทำสิ่งนั้น ในกรณีของฉันฉันต้องการใช้ตัวแก้ไขแคชที่ติดตั้งที่ฟังบน localhost ดังนั้นฉันจึงแก้ไข/etc/dhclient.conf(ซึ่งอาจจะว่างเปล่าจากความคิดเห็น) และเพิ่มรายการต่อไปนี้:

interface "vtnet0" {
    supersede domain-name-servers 127.0.0.1;
}

สิ่งนี้จะช่วยให้ dhclient ทำทุกอย่างที่คุณต้องการ แต่เมื่อเซิร์ฟเวอร์ DHCP ส่งรายชื่อเซิร์ฟเวอร์ที่จะใช้มันคุณจะเข้ามาแทนที่ (เหมือนเข้าแทนที่) อย่างสมบูรณ์ หากคุณต้องการเสริม (แทนที่จะแทนที่) สิ่งที่เสนอคุณสามารถ "ผนวก" หรือ "เพิ่ม" แทน "แทนที่" ตามความเหมาะสม

ในกรณีที่คุณต้องการเซิร์ฟเวอร์ที่กำหนดเองมากกว่าหนึ่งตัวให้ระบุดังนี้:

supersede domain-name-servers 127.0.0.1, 127.0.0.2;

หลังจากทำการเปลี่ยนแปลงให้รีสตาร์ทdhclientเพื่อให้การเปลี่ยนแปลงมีผลทันที:

service dhclient restart vtnet0

ตรวจสอบของคุณ/etc/resolv.confและคุณควรพบว่าตอนนี้มีเนมเซิร์ฟเวอร์ที่คุณกำหนดเองอยู่

จากการเขียนนี้เนมเซิร์ฟเวอร์เป็นสิ่งเดียวที่เซิร์ฟเวอร์ DHCP ของ Vultr ได้ใส่เข้าไปในตัวฉันresolv.confและสิ่งเดียวที่ฉันใส่ใจในการปรับแต่ง อย่างไรก็ตามหากคุณต้องการแทนที่การตั้งค่าอื่น ๆ ให้ศึกษาคู่มือที่ยอดเยี่ยมสำหรับรายการที่ครอบคลุม:

man 5 dhclient.conf

มีตัวอย่างที่ดีที่ด้านล่างที่ควรให้คุณมีความคิดในสิ่งที่คุณสามารถทำได้ ปิดด้านบนของหัวของฉันฉันสามารถจินตนาการที่คุณอาจต้องการที่จะเพิ่มบางอย่างเช่นถ้าปกติคุณจะมีสายเช่นนั้นในของคุณsupersede domain-name "example.com"; resolv.confโปรดอ่านเอกสารอีกครั้ง

กำหนดค่า resolvconf

นี่เป็นทางออกที่ง่ายที่สุดถ้าคุณแค่อยากresolv.confอยู่คนเดียว ตามคู่มือ:

resolvconf manages resolv.conf(5) files from multiple sources, such as DHCP and VPN clients

การกำหนดค่าของมันอยู่ใน/etc/resolvconf.confซึ่งอาจไม่มีอยู่ในระบบของคุณดังนั้นอย่าลังเลที่จะสร้างมันขึ้นมา เพื่อทำให้resolv.confไม่เปลี่ยนรูปของคุณเพิ่ม:

# prevent all updates to resolv.conf:
resolv_conf="/dev/null"

หากคุณใช้unboundเป็นตัวแก้ไขแคชในท้องถิ่นของคุณนั่นคือบรรทัดที่เพิ่มเข้ามา (พร้อมด้วยตัวของมันเอง) ที่พื้นหลอกresolvconfเข้าไปในความคิดของคุณตั้งอยู่ที่/etc/resolv.conf /dev/nullสิ่งที่มีความหมายน้อยกว่าเล็กน้อย แต่มีประสิทธิภาพเท่ากันคือ:

# disable resolvconf from running any subscribers:
resolvconf="NO"

หากคุณต้องการทำสิ่งที่ซับซ้อนกว่าเพียงแค่ปิดมันหน้าคนสำหรับresolvconfและresolvconf.confมีข้อมูลมากมาย



Leave a Comment

ReactOS: นี่คืออนาคตของ Windows หรือไม่?

ReactOS: นี่คืออนาคตของ Windows หรือไม่?

ReactOS ซึ่งเป็นโอเพ่นซอร์สและระบบปฏิบัติการฟรีพร้อมเวอร์ชันล่าสุดแล้ว สามารถตอบสนองความต้องการของผู้ใช้ Windows ยุคใหม่และล้ม Microsoft ได้หรือไม่? มาหาข้อมูลเพิ่มเติมเกี่ยวกับรูปแบบเก่านี้ แต่เป็นประสบการณ์ OS ที่ใหม่กว่ากัน

AI สามารถต่อสู้กับการโจมตีของแรนซัมแวร์ที่เพิ่มขึ้นได้หรือไม่

AI สามารถต่อสู้กับการโจมตีของแรนซัมแวร์ที่เพิ่มขึ้นได้หรือไม่

การโจมตีของ Ransomware กำลังเพิ่มขึ้น แต่ AI สามารถช่วยจัดการกับไวรัสคอมพิวเตอร์ตัวล่าสุดได้หรือไม่? AI คือคำตอบ? อ่านที่นี่รู้ว่า AI boone หรือ bane

เชื่อมต่อผ่าน WhatsApp Desktop App 24*7

เชื่อมต่อผ่าน WhatsApp Desktop App 24*7

ในที่สุด Whatsapp ก็เปิดตัวแอพเดสก์ท็อปสำหรับผู้ใช้ Mac และ Windows ตอนนี้คุณสามารถเข้าถึง Whatsapp จาก Windows หรือ Mac ได้อย่างง่ายดาย ใช้ได้กับ Windows 8+ และ Mac OS 10.9+

AI จะนำกระบวนการอัตโนมัติไปสู่อีกระดับได้อย่างไร

AI จะนำกระบวนการอัตโนมัติไปสู่อีกระดับได้อย่างไร

อ่านข้อมูลนี้เพื่อทราบว่าปัญญาประดิษฐ์กำลังได้รับความนิยมในหมู่บริษัทขนาดเล็กอย่างไร และเพิ่มโอกาสในการทำให้พวกเขาเติบโตและทำให้คู่แข่งได้เปรียบ

การอัปเดตเสริม macOS Catalina 10.15.4 ทำให้เกิดปัญหามากกว่าการแก้ปัญหา

การอัปเดตเสริม macOS Catalina 10.15.4 ทำให้เกิดปัญหามากกว่าการแก้ปัญหา

เมื่อเร็ว ๆ นี้ Apple เปิดตัว macOS Catalina 10.15.4 การอัปเดตเสริมเพื่อแก้ไขปัญหา แต่ดูเหมือนว่าการอัปเดตทำให้เกิดปัญหามากขึ้นที่นำไปสู่การสร้างเครื่อง Mac อ่านบทความนี้เพื่อเรียนรู้เพิ่มเติม

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

ระบบไฟล์บันทึกคืออะไรและทำงานอย่างไร

ระบบไฟล์บันทึกคืออะไรและทำงานอย่างไร

คอมพิวเตอร์ของเราจัดเก็บข้อมูลทั้งหมดในลักษณะที่เรียกว่าระบบไฟล์บันทึก เป็นวิธีการที่มีประสิทธิภาพที่ช่วยให้คอมพิวเตอร์สามารถค้นหาและแสดงไฟล์ได้ทันทีที่คุณกดค้นหาhttps://wethegeek.com/?p=94116&preview=true

ภาวะเอกฐานทางเทคโนโลยี: อนาคตอันห่างไกลของอารยธรรมมนุษย์?

ภาวะเอกฐานทางเทคโนโลยี: อนาคตอันห่างไกลของอารยธรรมมนุษย์?

ในขณะที่วิทยาศาสตร์มีวิวัฒนาการไปอย่างรวดเร็ว โดยรับช่วงต่อความพยายามของเราอย่างมาก ความเสี่ยงในการทำให้ตัวเองตกอยู่ในภาวะภาวะเอกฐานที่อธิบายไม่ได้ก็เพิ่มขึ้นเช่นกัน อ่านว่าภาวะเอกฐานอาจมีความหมายสำหรับเราอย่างไร

ข้อมูลเชิงลึกเกี่ยวกับ 26 เทคนิคการวิเคราะห์ข้อมูลขนาดใหญ่: ตอนที่ 1

ข้อมูลเชิงลึกเกี่ยวกับ 26 เทคนิคการวิเคราะห์ข้อมูลขนาดใหญ่: ตอนที่ 1

ข้อมูลเชิงลึกเกี่ยวกับ 26 เทคนิคการวิเคราะห์ข้อมูลขนาดใหญ่: ตอนที่ 1

ผลกระทบของปัญญาประดิษฐ์ในการดูแลสุขภาพ 2021

ผลกระทบของปัญญาประดิษฐ์ในการดูแลสุขภาพ 2021

AI ในการดูแลสุขภาพได้ก้าวกระโดดอย่างมากจากทศวรรษที่ผ่านมา ดังนั้นอนาคตของ AI ในการดูแลสุขภาพจึงยังคงเติบโตทุกวัน