Tất cả các tên miền phụ cho một IP trong tập tin máy chủ?


8

Tôi đã có một VirtualBox VM chạy với mạng chỉ lưu trữ. VM này đang chạy Apache và tôi muốn thiết lập một loạt các máy chủ ảo dựa trên tên có thể được truy cập từ trình duyệt web trên máy chủ.

Vấn đề là, mỗi khi tôi thêm một tên miền phụ mới cho máy chủ ảo, tôi phải thêm nó vào tệp máy chủ. Ngay bây giờ tôi có một cái gì đó như thế này:

192.168.56.3 vm site1.vm site2.vm site3.vm site4.vm ...

Tôi muốn đạt được hiệu quả tương tự như thế này

192.168.56.3 vm *.vm

Tôi biết rằng * không hoạt động như một ký tự đại diện trong tệp máy chủ. Có cách nào khác để đạt được kết quả mong muốn khi chạy một máy chủ DNS thực tế không? Tôi có nên hút nó lên và tiếp tục thêm vào tập tin máy chủ của mình không?

Câu trả lời:


8

Không có cách ký tự đại diện nào để thực hiện việc này - bạn cần triển khai máy chủ DNS hoặc tiếp tục thêm các mục vào tệp máy chủ của mình.

Nếu bạn đi với cài đặt một máy chủ DNS, bạn không cần phải cài đặt bind- bạn có thể cài đặt một máy chủ đơn giản bộ nhớ đệm DNS như totd, dnsmasqhoặc maradns.

Bất kể bạn làm gì, bạn sẽ cần đảm bảo resolv.confcó chứa máy chủ DNS mới và mục nhập sau phải xuất hiện trong đó (trong ví dụ này, máy chủ DNS được cài đặt trên localhost) ...

nameserver 127.0.0.1

Đây là một cái gì đó thú vị. Tại thời điểm hiện tại, đây dường như là câu trả lời chính xác, vì vậy tôi sẽ đánh dấu nó như vậy. Tuy nhiên, nó không thực sự giải quyết vấn đề của tôi, có lẽ vì nó không thể giải quyết được. Chỉ cần một cái gì đó để suy nghĩ.
Apreche

Một lưu ý khác. Tôi đã có thể sử dụng dnsmasq để thực hiện công việc này. Tuy nhiên, trên Ubuntu tôi đã phải sửa đổi cấu hình máy khách dhcp của máy chủ để bổ sung 127.0.0.1 cho độ phân giải.
Juleche

Có - độ phân giải là cách duy nhất để xác định máy chủ DNS, tôi sẽ thêm nó vào bài viết để hoàn thành.
Xerxes

2

Bạn có thể sử dụng dnsmasqcho điều đó, chỉ cần thêm vào tập tin cấu hình:

địa chỉ = /. vm / 192.168.56.3

0

Đây là một câu hỏi thú vị. Bản thân tệp máy chủ không hỗ trợ ký tự đại diện, như bạn đã đề cập. Sẽ khá dễ dàng để thiết lập liên kết trên máy apache và biến nó thành máy chủ auth dns và trỏ * .vm chính xác, nhưng đó là một cách giải quyết (ngay cả khi đó là giải pháp "chính xác").

Có một cách để lừa nscd vào nó, nhưng tôi chưa tìm ra. Hãy cho tôi thêm thời gian và tôi sẽ cập nhật câu trả lời này

Biên tập

Được rồi, đặt cược tốt nhất của bạn, mà không cần dùng đến nhiệm vụ đơn giản là lấp đầy tệp máy chủ của bạn với số lượng máy chủ ảo khổng lồ hoặc nhiệm vụ phức tạp hơn một chút để định cấu hình liên kết với auth cho miền đó, là sử dụng lỗ hổng này để đầu độc bộ đệm nscd : http://linuxgazette.net/154/misc/lg/conspire_dns_vulnerability_details.html

Ít nhất, đó là xa như tôi sẽ đi ngày hôm nay. Có lẽ nếu tôi chán sau này tôi sẽ kiểm tra nguồn tới nscd và tìm ra cách tiêm trực tiếp thông tin.


4
Tôi thực sự không khuyên bạn nên khai thác lỗ hổng để đạt được mục tiêu. Ý tôi là, điều gì sẽ xảy ra nếu bạn phụ thuộc vào nó và lỗ hổng được ... sửa chữa? ... Trong số 100 điều khác tôi có thể thấy đó chỉ là sai với điều đó. Nhưng bên cạnh đó - có vẻ như rất vui khi chơi với những cú đá :).
Xerxes

2
hehe "... tính năng yêu thích của tôi trong phần mềm đã được sửa trong lần sửa đổi trước ..." ;-)
Matt Simmons
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.