Domain Name Service, DNS სერვერის დაყენება Ubuntu-ზე

ამ სტატიაში განვიხილავთ DNS სერვერის განლაგების ერთ-ერთ ვარიანტს ადგილობრივი ქსელისთვის Ubuntu-ზე დაფუძნებული (მე მაქვს 14.04.3 LTS) და bind9. სხვა დისტრიბუციების უმეტესობისთვის განსხვავებები მინიმალური იქნება Debian-ის მსგავსი განაწილებისთვის. თუ თქვენ უკვე წაიკითხეთ წინა სტატია DHCP სერვერის დაყენების შესახებ, მაშინ იცით, რომ თავდაპირველად მე დავაინსტალირე dnsmasq, რომელიც არ იყო მხარდაჭერილი დისტრიბუციის მიერ, რომლის შეცვლაც გადაწყდა. მას შემდეგ, რაც ბოლო დროს წავშალე dnsmasq (და ეს იყო როგორც DHCP, ასევე DNS სერვერი, რომელიც, სხვათა შორის, არ იყო სწორად კონფიგურირებული და არ მუშაობდა), საჭირო იყო DNS, რომელიც გადავწყვიტე გამეკეთებინა თავისუფალ დროს. . DNS-ის დაყენებას ცოტა მეტი დრო სჭირდება, მაგრამ მხოლოდ იმიტომ, რომ მეტი კონფიგურაციის ფაილია.

მაშ ასე, დავიწყოთ. პირველ რიგში, მოდით განაახლოთ სისტემა (განახლეთ პაკეტები):

sudo apt-get განახლება && sudo apt-get განახლება -y

ახლა მოდით დავაინსტალიროთ bind9 DNS სერვერი:

sudo apt-get install bind9

ახლა თქვენ შეგიძლიათ შექმნათ გასაღები, რათა სხვა დემონებმა განაახლონ ამ სერვერის DNS ჩანაწერები. ეს შეიძლება იყოს ან სხვა სერვერები ქსელში ან იმავე სერვერის სხვა სერვისები. ჩემთვის ეს იქნება ადგილობრივად დაინსტალირებული DHCP სერვერი. თეორიულად, უსაფრთხოებისთვის, თითოეულ სერვისს ან სერვერს სჭირდება საკუთარი გასაღების გენერირება, მაშინ, თუ რომელიმე მათგანი კომპრომეტირებულია, ის უბრალოდ შეიძლება დაიბლოკოს, ხოლო დანარჩენები გააგრძელებენ მუშაობას. მაგრამ ჩემს შემთხვევაში, მხოლოდ ჩემი DHCP სერვერი განაახლებს ჩანაწერებს, ასე რომ მე მხოლოდ ერთ კლავიშს ვქმნი:

dnssec-keygen -a HMAC-MD5 -b 128 -r /dev/urandom -n USER DHCP_UPDATER

მომხმარებლის მთავარ დირექტორიაში, საიდანაც ბრძანება დაიწყო, გამოჩნდება 2 ფაილი:

Rw------- 1 მომხმარებელი 54 იან 21 12:17 Kdhcp_updater.+157+55379.key
-rw------- 1 მომხმარებელი 165 იან 21 12:17 Kdhcp_updater.+157+55379.პირადი

დაე, ფაილები ასე დარჩეს, ისინი არ დაიკარგება. საჭირო გასაღების სანახავად გაუშვით:

კუდი Kdhcp_updater*.პირადი

თქვენ ნახავთ მსგავს კონტენტს, სადაც მნიშვნელობა "Key" არის საჭირო გასაღები:

პირველი, მოდით გავხადოთ ჩვენი DNS სერვერი ქეშირების სახელების სერვერად, ანუ ჩვენ ვაიძულებთ მას გადაჭრას დომენური სახელები, მათი მოთხოვნით ზედა ნაკადის სერვერიდან. პირველად, როდესაც კლიენტი ითხოვს დომენის სახელს, სერვერი გადააგზავნის მოთხოვნას ზედა ნაკადის სერვერზე და შემდეგ დააბრუნებს მას ქეშიდან, რაც ოდნავ გაზრდის ჩვენს ქსელში კლიენტებისთვის DNS მოთხოვნების დამუშავების სიჩქარეს. ჩვენ ასევე მივუთითებთ სერვერს, რომელ მისამართებზე მოემსახურება ჩვენი DNS კლიენტებს. ამისათვის თქვენ უნდა შეცვალოთ /etc/bind/named.conf.options ფაილი:

sudo cp /etc/bind/named.conf.options /etc/bind/named.conf.options.dist && sudo nano /etc/bind/named.conf.options

აქ დავამატოთ შემდეგი სტრიქონები:

ექსპედიტორები (
212.120.160.130;
8.8.8.8;
};
მოსმენა (
127.0.0.1;
192.168.0.231;
};

განვიხილოთ ეს სექციები:

  • გამგზავნი - აქ ჩვენ მივუთითებთ უფრო მაღალი დონის სახელების სერვერებს. მათი რაოდენობა შეზღუდული არ არის, თუ რომელიმე მათგანი მიუწვდომელია, მოთხოვნები გადაეგზავნება შემდეგს. მე დავაზუსტე ჩემი ISP-ის DNS და Google Public DNS;
  • lisnen-on - ლოკალური ინტერფეისების მისამართები, რომლებზეც სერვერი მიიღებს DNS მოთხოვნებს კლიენტებისგან.

ნანოში ასე გამოიყურება:

შეინახეთ კონფიგურაცია. ახლა შეგიძლიათ გადატვირთოთ DNS სერვისი:

sudo სერვისის bind9 გადატვირთვა

ახლა ჩვენი სერვერი მუშაობს როგორც ქეშირების DNS, რომელიც უკვე გვაძლევს საშუალებას მივუთითოთ ის როგორც DNS სერვერი ჩვენს ქსელში არსებულ ნებისმიერ კლიენტს. მოდით შევამოწმოთ მისი მუშაობა ქსელში ან თავად სერვერზე. მე გაჩვენებთ Windows 7-ის სამუშაო სადგურის გამოყენებას, როგორც მაგალითად, დააჭირეთ Win+R, ჩაწერეთ cmd ფანჯარაში, რომელიც გამოჩნდება და Windows ბრძანების გარსი დაიწყება. იქ ვწერთ შემდეგს:

nslookup - 192.168.0.231

ბუნებრივია, თქვენ წერთ თქვენი სერვერის IP-ს. კონსოლის DNS დიაგნოსტიკური პროგრამა Windows-ისთვის - nslookup - დაიწყება და DNS სერვერად გამოყენებული იქნება არა სისტემის DNS, არამედ პარამეტრში მითითებული. Nslookup კარგია, რადგან ის აგზავნის მოთხოვნებს საჭირო სერვერზე Windows DNS ქეშის გვერდის ავლით. უპირველეს ყოვლისა, მოდით შევამოწმოთ პირდაპირი DNS მოთხოვნების ფუნქციონირება:

შემდეგ საპირისპირო მოთხოვნების შესრულება:

cmd.exe-ში ასე გამოიყურება:

თუ ყველაფერი ზუსტად იგივეა თქვენთვის, მაშინ თქვენი DNS უკვე იდეალურად მუშაობს როგორც ქეშირების სერვერი. google.ru-ს შემთხვევაში, ჩვენ ასევე ვხედავთ, რომ ჩვენს სერვერს შეუძლია დაუშვას IPv6.

ახლა ჩვენ უნდა ვუთხრათ ჩვენს სერვერს გამოიყენოს საკუთარი თავი DNS-ად. ის ამას გააკეთებს loopback ინტერფეისის მეშვეობით. ამისათვის ჩვენ უნდა შევცვალოთ /etc/resolv.conf ფაილი, მაგრამ აზრი არ აქვს მის შეცვლას, რადგან ქსელის მენეჯერი მას მაინც გამოასწორებს გადატვირთვის შემდეგ. ამიტომ ჩვენ ჩავასწორებთ /etc/network/interfaces:

sudo nano /etc/ქსელი/ინტერფეისები

ჩვენ იქ ვპოულობთ განყოფილებას ლოკალური ქსელის ინტერფეისით (ჩემთვის ეს არის eth0) და ვამატებთ ან ვცვლით შემდეგ ხაზებს:

dns-nameservers 127.0.0.1
dns-ძებნა ordaupfin.local

*ordaupfin.local-ის ნაცვლად თქვენ მიუთითეთ თქვენი დომენი ან სამუშაო ჯგუფი.

ეს უნდა გამოიყურებოდეს რაღაც ჩემსავით:

ახლა, თუ ფიზიკურად უშუალოდ სერვერის კონსოლის უკან ხართ, უბრალოდ გადატვირთეთ ქსელის სერვისი ბრძანებით:

sudo სერვისის ქსელის გადატვირთვა

და თუ თქვენ ხართ დაკავშირებული სერვერთან SSH-ის საშუალებით (ჩემ მსგავსად), მაშინ აქტიური სესია არ მისცემს საშუალებას სერვისის გადატვირთვას, ამიტომ სერვერის გადატვირთვა მოგიწევთ:

ახლა თქვენ შეგიძლიათ შეამოწმოთ, ნამდვილად აგზავნის თუ არა სერვერი საკუთარ თავს DNS მოთხოვნებს ტერმინალში ჩაწერით:

თუ ბოლო სტრიქონები ამბობს SERVER: 127.0.0.1, მაშინ ყველაფერი სწორად არის კონფიგურირებული. ასე უნდა გამოიყურებოდეს თხრილის გამონაბოლქვი google.ru-ზე:

თუ კვლავ გაუშვით dig google.ru, ნახავთ, რომ შეკითხვის შესრულების დრო მნიშვნელოვნად შემცირდა. ეს გამოწვეულია იმით, რომ სერვერი მიიღებს ყველა მომდევნო მოთხოვნას იმავე დომენზე ქეშიდან, უმაღლესი დონის სერვერზე მოთხოვნის გადამისამართების გარეშე.

ჩვენი DNS სერვერი კარგად ასრულებს სახელების გადაჭრას გარე მისამართებზე, მაგრამ მან აბსოლუტურად არაფერი იცის კლიენტების შესახებ ლოკალურ ქსელში. იმისათვის, რომ მან გადაჭრას ადგილობრივი მანქანებისა და მოწყობილობების სახელები, თქვენ უნდა დააკონფიგურიროთ ის, როგორც თქვენი ქსელის ძირითადი ძირითადი. უფრო მეტიც, ეს აუცილებელია ქსელის სრული ფუნქციონირებისთვის.

შექმენით წინ ხედვის ზონა. სერვერი უკვე შეიცავს სტანდარტული პარამეტრების ფაილებს, ასე რომ თქვენ უბრალოდ უნდა დააკოპიროთ ისინი სამუშაო დირექტორიაში და შეცვალოთ ისინი თქვენთვის შესაფერისად. მე ვიყენებ ჩემს მონაცემებს, თქვენ, რა თქმა უნდა, უნდა შეცვალოთ თქვენი. დააკოპირეთ წინა ხედვის ზონის კონფიგურაციის ფაილი და გახსენით იგი რედაქტირებისთვის:

sudo cp /etc/bind/db.local /var/lib/bind/db.ordaupfin.local && sudo nano /var/lib/bind/db.ordaupfin.local

მოდით მივიყვანოთ იგი ამ ფორმაში (არ დაგავიწყდეთ ორიგინალის ნაცვლად თქვენი მონაცემების მითითება):

; BIND მონაცემთა ფაილი ადგილობრივი loopback ინტერფეისისთვის
;
$TTL 604800
20150122; სერიალი
604800 ; განაახლეთ
86400 ; ხელახლა სცადეთ
2419200; ვადა გასდის
;
@ IN NS ubunturoute.ordaupfin.local.
@ IN A 192.168.0.231
@ IN AAAA::1
ubunturoute IN A 192.168.0.231

ახლა ჩვენ ვქმნით და ვცვლით საპირისპირო საძიებო ზონის ფაილს იმავე გზით:

sudo cp /etc/bind/db.127 /var/lib/bind/db.192 && sudo nano /var/lib/bind/db.192

და მივყავართ შემდეგ ფორმაში:

; BIND საპირისპირო მონაცემთა ფაილი ადგილობრივი მარყუჟის ინტერფეისისთვის
;
$TTL 604800
@ IN SOA ubunturoute.ordaupfin.local. root.ubunturoute.ordaupfin.local. (
20150122; სერიალი
604800 ; განაახლეთ
86400 ; ხელახლა სცადეთ
2419200; ვადა გასდის
604800); უარყოფითი ქეში TTL
;
@ IN NS ubunturute.
231 IN PTR ubunturoute.ordaupfin.local.

გთხოვთ, გაითვალისწინოთ, რომ "231", რომელიც იწყება ბოლო სტრიქონზე, არის ჩემი სერვერის IP მისამართის ბოლო განყოფილება.

ახლა ეს ზონები უნდა დარეგისტრირდეს მთავარ სერვერის კონფიგურაციაში, რათა შემდეგ ჯერზე, როცა დაიწყება, იცოდეს მათი არსებობის შესახებ. ამისათვის გახსენით /etc/bind/named.conf.local რედაქტირებისთვის

sudo cp /etc/bind/named.conf.local /etc/bind/named.conf.local.dist && sudo nano /etc/bind/named.conf.local

და დაამატეთ იქ შემდეგი შინაარსი:

გასაღები DHCP_UPDATER (
ალგორითმი HMAC-MD5.SIG-ALG.REG.INT;
საიდუმლო "s5Efp/-/-/-/wQtvg9rR7Q==";
};

ზონა "ordaupfin.local" (
ტიპის master;
ფაილი "/var/lib/bind/db.ordaupfin.local";
};

ზონა "0.168.192.in-addr.arpa" (
ტიპის master;
ფაილი "/var/lib/bind/db.192";
დაშვება-განახლება (გასაღები DHCP_UPDATER;);
};

  • გასაღები DHCP_UPDATER - ინფორმაცია ჩანაწერების განახლებისთვის, აქ შეიყვანთ თქვენს ადრე გენერირებულ გასაღებს;
  • ზონა "ordaupfin.local" - პირდაპირი ნახვის ზონა;
  • ზონა "0.168.192.in-addr.arpa" - საპირისპირო ძიების ზონა.

ეს დაახლოებით ასე გამოიყურება:

სერვერის შენახვა და გადატვირთვა:

sudo სერვისის bind9 გადატვირთვა

სერვერის მუშაობის შემოწმება:

nslookup ubunturute.ordaupfin.local

გამომავალი უნდა იყოს ასეთი:

სერვერი: 127.0.0.1
მისამართი: 127.0.0.1#53

სახელი: ubunturoute.ordaupfin.local
მისამართი: 192.168.0.231

ჩვენ ვამოწმებთ საპირისპირო საძიებო ზონის ფუნქციონირებას ანალოგიურად:

nslookup 192.168.0.231

და ჩვენ ვიღებთ:

სერვერი: 127.0.0.1
მისამართი: 127.0.0.1#53

231.0.168.192.in-addr.arpa name = ubunturoute.ordaupfin.local.

თუ ყველაფერი ზუსტად თქვენთვისაა, სამუშაო თითქმის დასრულებულია. თითქმის იმიტომ, რომ ახლა ჩვენ გვჭირდება ჩვენი DHCP სერვერი, რათა შეძლოს DNS ჩანაწერების განახლება ახალი კლიენტების გამოჩენისას. მე გადავხედავ დაყენებას ჩემზე დაინსტალირებული isc-dhcp-სერვერის მაგალითის გამოყენებით. რედაქტირება /etc/dhcp/dhcpd.conf:

სუდო ნანო /etc/dhcp/dhcpd.conf

და ჩასვით იქ შემდეგი შინაარსი:

ddns-განახლების სტილის შუალედური;
განახლება-სტატიკური-იჯარის შესახებ;
გასაღები DHCP_UPDATER (
ალგორითმი hmac-md5;
საიდუმლო "s5EfpF53BBE9/-/tvg9rR7Q==";
) ზონა ორდაუფფინი.ადგილობრივი. (
პირველადი 127.0.0.1;
გასაღები DHCP_UPDATER;
) ზონა 0.168.192.in-addr.arpa. (
პირველადი 127.0.0.1;
გასაღები DHCP_UPDATER;
}

თქვენ, რა თქმა უნდა, უნდა შეცვალოთ თქვენი ღირებულებები. ამის შემდეგ ჩვენ გადატვირთავთ DNS და DHCP სერვერს. თუ სერვერი შეცდომების გარეშე დაიწყო, ყველაფერი კარგადაა. თუ სერვერი არ იწყება, ყურადღებით დააკვირდით კონფიგურაციას, გარდა ამისა, syslog დაგეხმარებათ შეცდომების დიაგნოსტიკაში;

კუდი -f /var/log/syslog

გმადლობთ ყურადღებისთვის!

ამ სტატიის წინადადებები და განხილვები მოცემულია კომენტარებში

DNS (დომენის სახელების სისტემა) არის მნიშვნელოვანი და საკმაოდ რთული კონფიგურაციის კომპონენტი, რომელიც აუცილებელია ვებსაიტების და სერვერების მუშაობისთვის. ბევრი მომხმარებელი იყენებს მათი ჰოსტინგის პროვაიდერის მიერ მოწოდებულ DNS სერვერებს, მაგრამ საკუთარი DNS სერვერების ფლობას აქვს გარკვეული უპირატესობები.

ამ გაკვეთილზე თქვენ შეისწავლით თუ როგორ დააინსტალიროთ Bind9 და დააკონფიგურიროთ როგორც ქეშირების ან გადამისამართების DNS სერვერი Ubuntu 14.04 სერვერზე.

მოთხოვნები

  • DNS სერვერების ძირითადი ტიპების გაგება. დამატებითი დეტალების გაცნობა შეგიძლიათ აქ.
  • ორი მანქანა, რომელთაგან ერთი მაინც მუშაობს Ubuntu 14.04-ზე. პირველი მანქანა კონფიგურირებული იქნება როგორც კლიენტი (IP მისამართი 192.0.2.100), ხოლო მეორე როგორც DNS სერვერი (192.0.2.1).

თქვენ შეისწავლით, თუ როგორ უნდა დააკონფიგურიროთ კლიენტის მანქანა, რათა გაგზავნოს მოთხოვნები DNS სერვერის მეშვეობით.

DNS სერვერის ქეშირება

ამ ტიპის სერვერებს ასევე უწოდებენ გადამწყვეტებს, რადგან ისინი ამუშავებენ რეკურსიულ შეკითხვებს და ჩვეულებრივ შეუძლიათ მოძებნონ DNS მონაცემები სხვა სერვერებზე.

როდესაც ქეშირების DNS სერვერი მონიტორინგს უწევს კლიენტის მოთხოვნაზე პასუხს, ის უბრუნებს პასუხს კლიენტს და ასევე ინახავს მას ქეშში შესაბამისი DNS ჩანაწერების TTL მნიშვნელობით დაშვებული დროის განმავლობაში. შემდეგ ქეში შეიძლება გამოყენებულ იქნას როგორც პასუხების წყარო შემდგომი მოთხოვნებისთვის, რათა დააჩქაროს მოთხოვნის დამუშავების საერთო დრო.

თქვენი ქსელის კონფიგურაციის თითქმის ყველა DNS სერვერი იქნება ქეშირების სერვერები. ქეშირების DNS სერვერი კარგი არჩევანია მრავალი სიტუაციისთვის. თუ არ გსურთ დაეყრდნოთ თქვენი ჰოსტინგის პროვაიდერის DNS სერვერებს ან სხვა საჯარო DNS სერვერებს, დააყენეთ თქვენი საკუთარი ქეშირების DNS სერვერი. რაც უფრო მოკლეა მანძილი DNS სერვერიდან კლიენტის მანქანებამდე, მით უფრო მოკლე დრო სჭირდება DNS მოთხოვნების მომსახურებას.

გადამისამართება DNS სერვერი

კლიენტის პერსპექტივიდან, გადამისამართების DNS სერვერი თითქმის იდენტური იქნება ქეშირების სერვერთან, მაგრამ მექანიზმები და დატვირთვა სრულიად განსხვავებულია.

გადამისამართების DNS სერვერს აქვს იგივე უპირატესობები, როგორც ქეშირების სერვერს. თუმცა, ის რეალურად არ ასრულებს რეკურსიულ შეკითხვებს. ამის ნაცვლად, ის გადასცემს ყველა მოთხოვნას გარე გადაწყვეტის სერვერზე და შემდეგ ქეშირებს შედეგებს შემდგომი მოთხოვნებისთვის.

ეს საშუალებას აძლევს გადამისამართების სერვერს მოემსახუროს მოთხოვნები მისი ქეშიდან რეკურსიული მოთხოვნების დამუშავების გარეშე. ამრიგად, ეს სერვერი ამუშავებს მხოლოდ ერთ მოთხოვნებს (კლიენტის გადამისამართებულ მოთხოვნებს) და არა მთელ რეკურსიის პროცედურას. ეს შეიძლება იყოს უპირატესობა შეზღუდული გარე გამტარუნარიანობის მქონე გარემოში, სადაც ქეშირების სერვერები ხშირად უნდა შეიცვალოს და იმ სიტუაციებში, როდესაც ლოკალური მოთხოვნები უნდა გადავიდეს ერთ სერვერზე და გარე მოთხოვნები მეორეზე.

1: დააინსტალირეთ Bind DNS სერვერზე

Bind პაკეტის ნახვა შეგიძლიათ Ubuntu-ს ოფიციალურ საცავში. განაახლეთ თქვენი პაკეტის ინდექსი და დააინსტალირეთ Bind apt მენეჯერის გამოყენებით. თქვენ ასევე გჭირდებათ რამდენიმე დამოკიდებულების დაყენება.

sudo apt-get განახლება
sudo apt-get install bind9 bind9utils bind9-doc

ამის შემდეგ შეგიძლიათ დაიწყოთ სერვერის დაყენება. ქეშირების სერვერის კონფიგურაცია შეიძლება გამოყენებულ იქნას, როგორც შაბლონი გადამისამართების სერვერის კონფიგურაციისთვის, ამიტომ ჯერ უნდა დააკონფიგურიროთ ქეშირების DNS სერვერი.

2: ქეშირების DNS სერვერის დაყენება

პირველ რიგში, თქვენ უნდა დააკონფიგურიროთ Bind, როგორც ქეშირების DNS სერვერი. ეს კონფიგურაცია აიძულებს სერვერს რეკურსიულად მოძებნოს პასუხები კლიენტის მოთხოვნებზე სხვა DNS სერვერებზე. ის თანმიმდევრულად იკითხავს ყველა შესაბამის DNS სერვერს, სანამ პასუხს არ იპოვის.

Bind კონფიგურაციის ფაილები ინახება /etc/bind დირექტორიაში.

ფაილების უმეტესობას არ სჭირდება რედაქტირება. ძირითადი კონფიგურაციის ფაილს ეწოდება named.conf (დასახელებული და bind არის ერთი და იგივე აპლიკაციის ორი სახელი). ეს ფაილი მიუთითებს named.conf.options, named.conf.local და named.conf.default-zones ფაილებზე.

ქეშირების DNS სერვერის კონფიგურაციისთვის საჭიროა მხოლოდ named.conf.options-ის რედაქტირება.

sudo nano დასახელებული.conf.options

ეს ფაილი ასე გამოიყურება (კომენტარები გამოტოვებულია სიმარტივისთვის):

პარამეტრები (
დირექტორია "/var/cache/bind";
dnssec-validation auto;

listen-on-v6 (ნებისმიერი; );
};

ქეშირების სერვერის დასაყენებლად, თქვენ უნდა შექმნათ წვდომის კონტროლის სია, ან ACL.

თქვენ უნდა დაიცვათ DNS სერვერი, რომელიც ამუშავებს რეკურსიულ შეკითხვებს თავდამსხმელებისგან. DNS გამაძლიერებელი შეტევები განსაკუთრებით საშიშია, რადგან მათ შეუძლიათ სერვერის ჩართვა სერვისის უარყოფის განაწილებულ შეტევებში.

DNS გამაძლიერებელი შეტევები სერვერებისა და ვებსაიტების დაშლის ერთ-ერთი გზაა. ამისათვის თავდამსხმელები ცდილობენ იპოვონ საჯარო DNS სერვერები, რომლებიც ამუშავებენ რეკურსიულ შეკითხვებს. ისინი ატყუებენ მსხვერპლის IP მისამართს და აგზავნიან მოთხოვნას, რომელიც უბრუნებს ძალიან დიდ პასუხს DNS სერვერზე. ამ შემთხვევაში, DNS სერვერი უბრუნებს ძალიან ბევრ მონაცემს მსხვერპლის სერვერზე მცირე მოთხოვნის საპასუხოდ, რაც ზრდის თავდამსხმელის ხელმისაწვდომ სიჩქარეს.

საჯარო რეკურსიული DNS სერვერის ჰოსტინგი მოითხოვს ფრთხილად კონფიგურაციას და ადმინისტრირებას. თქვენი სერვერის გატეხვის თავიდან ასაცილებლად, დააკონფიგურირეთ IP მისამართების სია ან ქსელის დიაპაზონი, რომელსაც სერვერს შეუძლია ენდოს.

პარამეტრების ბლოკამდე დაამატეთ acl ბლოკი. შექმენით ლეიბლი ACL ჯგუფისთვის (ამ სახელმძღვანელოში ჯგუფს უწოდებენ goodclients).

კარგი კლიენტები (
};
პარამეტრები (
. . .

ამ ბლოკში ჩამოთვალეთ IP მისამართები ან ქსელები, რომლებსაც ექნებათ წვდომა ამ DNS სერვერზე. ვინაიდან სერვერი და კლიენტი მუშაობს /24 ქვექსელზე, შეგიძლიათ შეზღუდოთ წვდომა ამ ქვექსელზე. თქვენ ასევე უნდა განბლოკოთ localhost და localnets, რომლებიც ავტომატურად უკავშირდებიან.

კარგი კლიენტები (
192.0.2.0/24;
ლოკალჰოსტი;
ლოკალური ქსელები;
};
პარამეტრები (
. . .

ახლა თქვენ გაქვთ უსაფრთხო კლიენტი ACL. თქვენ შეგიძლიათ დაიწყოთ მოთხოვნის რეზოლუციის დაყენება პარამეტრების ბლოკში. დაამატეთ მას შემდეგი სტრიქონები:

პარამეტრები (
დირექტორია "/var/cache/bind";
რეკურსია დიახ;

. . .

პარამეტრების ბლოკი ცალსახად რთავს რეკურსიას და შემდეგ აკონფიგურირებს დაშვების შეკითხვის ოფციას ACL-ის გამოსაყენებლად. თქვენ ასევე შეგიძლიათ გამოიყენოთ სხვა პარამეტრი, როგორიცაა დაშვება-რეკურსია, ACL ჯგუფთან მიმართებაში. როდესაც რეკურსია ჩართულია, დაშვება-რეკურსია განსაზღვრავს კლიენტთა სიას, რომლებსაც შეუძლიათ გამოიყენონ რეკურსიული სერვისები.

თუმცა, თუ დაშვება-რეკურსია არ არის დაყენებული, Bind ბრუნდება allow-query-cache სიაში, შემდეგ დაშვების შეკითხვის სიაში და ბოლოს ნაგულისხმევი localnets და localhost სიებში. ვინაიდან ჩვენ ვაყენებთ მხოლოდ ქეშირების სერვერს (მას არ აქვს საკუთარი ზონები და არ აგზავნის შეკითხვებს), დაშვებული მოთხოვნების სია ყოველთვის ვრცელდება მხოლოდ რეკურსიაზე. ეს არის ACL-ის განსაზღვრის ყველაზე გავრცელებული გზა.

შეინახეთ და დახურეთ ფაილი.

ეს არის ყველა პარამეტრი, რომელიც უნდა დაემატოს ქეშირების DNS სერვერის კონფიგურაციის ფაილს.

შენიშვნა: თუ მხოლოდ ამ ტიპის DNS-ის გამოყენება გსურთ, გააგრძელეთ კონფიგურაციების შემოწმება, სერვისის გადატვირთვა და კლიენტის კონფიგურაცია.

3: გადამისამართების DNS სერვერის დაყენება

თუ თქვენი ინფრასტრუქტურა უფრო მეტად შეეფერება გადამისამართების DNS სერვერს, შეგიძლიათ ოდნავ დაარეგულიროთ დაყენება.

ამჟამად named.conf.options ფაილი ასე გამოიყურება:

კარგი კლიენტები (
192.0.2.0/24;
ლოკალჰოსტი;
ლოკალური ქსელები;
};
პარამეტრები (
დირექტორია "/var/cache/bind";
რეკურსია დიახ;
დაშვება-შეკითხვა (კარგი კლიენტები;);
dnssec-validation auto;
auth-nxdomain no; # შეესაბამება RFC1035
listen-on-v6 (ნებისმიერი; );
};

თქვენ შეგიძლიათ გამოიყენოთ იგივე ACL, რომ შეზღუდოთ DNS სერვერი კლიენტების კონკრეტულ სიაზე. თუმცა, ეს მოითხოვს კონფიგურაციის მცირე ცვლილებას, რათა სერვერი აღარ შეეცადოს რეკურსიული მოთხოვნების შესრულებას.

არ შეცვალოთ რეკურსია No. გადამისამართების სერვერი კვლავ მხარს უჭერს რეკურსიულ სერვისებს. გადამისამართების სერვერის კონფიგურაციისთვის, თქვენ უნდა შექმნათ ქეშირების სერვერების სია, რომლებზეც ის გადამისამართებს მოთხოვნებს.

ეს კეთდება პარამეტრები() ბლოკში. პირველ რიგში, თქვენ უნდა შექმნათ მასში ახალი გადამგზავნის ბლოკი, სადაც შეინახება რეკურსიული სახელების სერვერების IP მისამართები, რომლებზეც გსურთ მოთხოვნების გადამისამართება. ამ შემთხვევაში, ეს იქნება Google DNS სერვერები (8.8.8.8 და 8.8.4.4):

. . .
პარამეტრები (
დირექტორია "/var/cache/bind";
რეკურსია დიახ;
დაშვება-შეკითხვა (კარგი კლიენტები;);
ექსპედიტორები (

8.8.8.8;

8.8.4.4;

};
. . .

შედეგად მიღებული კონფიგურაცია ასე გამოიყურება:

კარგი კლიენტები (
192.0.2.0/24;
ლოკალჰოსტი;
ლოკალური ქსელები;
};
პარამეტრები (
დირექტორია "/var/cache/bind";
რეკურსია დიახ;
დაშვება-შეკითხვა (კარგი კლიენტები;);
ექსპედიტორები (
8.8.8.8;
8.8.4.4;
};
მხოლოდ წინ;
dnssec-validation auto;
auth-nxdomain no; # შეესაბამება RFC1035
listen-on-v6 (ნებისმიერი; );
};

ბოლო ცვლილება ეხება dnssec პარამეტრს. მიმდინარე კონფიგურაციით და DNS სერვერების პარამეტრებიდან გამომდინარე, რომლებზეც გადამისამართებულია მოთხოვნები, შემდეგი შეცდომები შეიძლება გამოჩნდეს ჟურნალებში:

25 ივნისი 15:03:29 დასახელებული ქეში: შეცდომა (დადევნე DS სერვერები) ამოხსნის "in-addr.arpa/DS/IN": 8.8.8.8#53
25 ივნისი 15:03:29 დასახელებული ქეში: შეცდომა (არ არის სწორი DS) გადაჭრის "111.111.111.111.in-addr.arpa/PTR/IN": 8.8.4.4#53

მათ თავიდან ასაცილებლად, თქვენ უნდა შეცვალოთ dnssec-validation პარამეტრი დიახ და ცალსახად ჩართოთ dnssec.

. . .
მხოლოდ წინ;
dnssec-ჩართეთ დიახ;
dnssec-ვალიდაცია დიახ;
auth-nxdomain no; # შეესაბამება RFC1035
. . .

შეინახეთ და დახურეთ ფაილი. გადამისამართების DNS სერვერის დაყენება დასრულებულია.

4: შეამოწმეთ პარამეტრები და გადატვირთეთ Bind

ახლა თქვენ უნდა დარწმუნდეთ, რომ პარამეტრები მუშაობს ისე, როგორც მოსალოდნელია.

კონფიგურაციის ფაილების სინტაქსის შესამოწმებლად, შეიყვანეთ:

sudo სახელად-checkconf

თუ ფაილებში შეცდომები არ არის, ბრძანების სტრიქონი არ აჩვენებს რაიმე გამომავალს.

თუ თქვენ მიიღებთ შეცდომის შეტყობინებას, შეასწორეთ და ხელახლა შეამოწმეთ.

შემდეგ შეგიძლიათ გადატვირთოთ Bind daemon პარამეტრების განახლებისთვის.

sudo სერვისის bind9 გადატვირთვა

შემდეგ თქვენ უნდა შეამოწმოთ სერვერის ჟურნალი. გაუშვით ბრძანება სერვერზე:

sudo tail -f /var/log/syslog

ახლა გახსენით ახალი ტერმინალი და დაიწყეთ კლიენტის აპარატის დაყენება.

5: კლიენტის დაყენება

შესვლა კლიენტის მანქანაში. დარწმუნდით, რომ კლიენტი ჩამოთვლილი იყო კონფიგურირებული DNS სერვერის ACL ჯგუფში. წინააღმდეგ შემთხვევაში, DNS სერვერი უარს იტყვის ამ კლიენტის მოთხოვნების მომსახურებაზე.

შეცვალეთ /etc/resolv.conf ფაილი, რათა სერვერი მიუთითოთ სახელების სერვერზე.

აქ განხორციელებული ცვლილებები შენარჩუნდება მხოლოდ გადატვირთვამდე, რაც შესანიშნავია ტესტირებისთვის. თუ თქვენ კმაყოფილი ხართ ტესტის პარამეტრების შედეგებით, შეგიძლიათ ეს პარამეტრები მუდმივი გახადოთ.

გახსენით ფაილი sudo-ით ტექსტურ რედაქტორში:

სუდო ნანო /etc/resolv.conf

ფაილს სჭირდება DNS სერვერების სია, რომლებიც გამოყენებული იქნება მოთხოვნების გადასაჭრელად. ამისათვის გამოიყენეთ სახელების სერვერის დირექტივა. დაწერეთ ყველა მიმდინარე ჩანაწერი და დაამატეთ სახელების სერვერის ხაზი, რომელიც მიუთითებს თქვენს DNS სერვერზე:

სახელების სერვერი 192.0.2.1
# სახელების სერვერი 8.8.4.4
# სახელების სერვერი 8.8.8.8
# სახელების სერვერი 209.244.0.3

შეინახეთ და დახურეთ ფაილი.

ახლა შეგიძლიათ გაგზავნოთ ტესტის მოთხოვნა, რათა დარწმუნდეთ, რომ ის სწორად მოგვარდება.

ამისათვის შეგიძლიათ გამოიყენოთ ping:

ping -c 1 google.com
PING google.com (173.194.33.1) 56(84) ბაიტი მონაცემები.
64 ბაიტი sea09s01-in-f1.1e100.net-დან (173.194.33.1): icmp_seq=1 ttl=55 დრო=63.8 ms
--- google.com პინგ სტატისტიკა ---
1 პაკეტი გადაცემული, 1 მიღებული, 0% პაკეტის დაკარგვა, დრო 0ms
rtt min/avg/max/mdev = 63.807/63.807/63.807/0.000 ms

დღეს ჩვენ გავაგრძელებთ სტატიების სერიას სერვერის დაყენების შესახებ და განვიხილავთ როგორია DNS სერვერის დაყენება Ubuntu-ში. ჩვენ უკვე გვაქვს ubuntu 14.04.1 LTS-ზე დაფუძნებული სერვერი, მასზე კონფიგურირებულია DHCP სერვერი. დღეს ჩვენ ასევე დავამატებთ იქ DNS სერვისს.

პირველ რიგში, მოდით გაერკვნენ, რატომ გვჭირდება ეს. DNS არის დომენური სახელების სისტემა, რომელიც შექმნილია კომპიუტერის IP მისამართის მისამართად მისი სახელით და პირიქით, სახელი IP მისამართის მიხედვით. იმათ. იცოდეთ კომპიუტერის სახელი, არ გჭირდებათ მისი IP-ის დამახსოვრება შემდგომი მითითებისთვის. სერვისი შეიქმნა ქსელის გაფართოებასთან და IP მისამართების უზარმაზარი რაოდენობის გაჩენასთან დაკავშირებით, რომელთა პირველად დამახსოვრება უბრალოდ შეუძლებელია.

მკითხველთა მრავალრიცხოვანი მოთხოვნის გამო, მე კვლავ გადავამოწმე ყველა პუნქტი და აღმოვაჩინე რამდენიმე ნიუანსი, რის გამოც სერვერი სწორად არ მუშაობდა (სტატია თავდაპირველად დაიწერა ubuntu სერვერზე 11.04). სტატია მთლიანად გადაწერილი და გამოცდილია Ubuntu Server 14.04.1-ზე

ბევრი მომხმარებელი აწყდება პრობლემებს Ubuntu-ში ინტერნეტის დაყენების მცდელობისას. ყველაზე ხშირად ეს გამოუცდელობის გამო ხდება, მაგრამ შეიძლება სხვა მიზეზებიც იყოს. სტატიაში მოცემულია ინსტრუქციები რამდენიმე ტიპის კავშირის დასაყენებლად, განხორციელების პროცესში ყველა შესაძლო გართულების დეტალური ანალიზით.

არსებობს მრავალი სახის ინტერნეტ კავშირი, მაგრამ ეს სტატია მოიცავს ყველაზე პოპულარულებს: სადენიანი ქსელი, PPPoE და DIAL-UP. ჩვენ ასევე ვისაუბრებთ ცალკე DNS სერვერის დაყენებაზე.

მოსამზადებელი აქტივობები

სანამ კავშირის დამყარებას დაიწყებთ, უნდა დარწმუნდეთ, რომ თქვენი სისტემა მზად არის ამისათვის. დაუყოვნებლივ უნდა განვმარტოთ, რომ ბრძანებები შესრულებულია "ტერმინალი", იყოფა ორ ტიპად: ისინი, რომლებიც საჭიროებენ მომხმარებლის უფლებებს (მათ წინ უძღვის სიმბოლო $ ) და მოითხოვს სუპერმომხმარებლის უფლებებს (დასაწყისში არის სიმბოლო # ). ყურადღება მიაქციეთ ამას, რადგან საჭირო უფლებების გარეშე, ბრძანებების უმეტესობა უბრალოდ უარს იტყვის შესრულებაზე. ასევე ღირს იმის გარკვევა, რომ თავად სიმბოლოებია "ტერმინალი"არ არის საჭირო შესვლა.

თქვენ უნდა შეავსოთ რამდენიმე პუნქტი:


სხვა საკითხებთან ერთად, თქვენ უნდა იცოდეთ ქსელის ადაპტერის სახელი. გასარკვევად შედით "ტერმინალი"ეს ხაზი:

$ sudo lshw -C ქსელი

შედეგად, თქვენ იხილავთ მსგავსი რამ:

თქვენი ქსელის ადაპტერის სახელი გამოჩნდება სიტყვის საპირისპიროდ "ლოგიკური სახელი". ამ შემთხვევაში "enp3s0". ეს არის სახელი, რომელიც გამოჩნდება სტატიაში, ის შეიძლება იყოს განსხვავებული თქვენთვის.

შენიშვნა: თუ თქვენს კომპიუტერზე დაყენებული გაქვთ მრავალი ქსელის ადაპტერი, ისინი დანომრილი იქნება შესაბამისად (enp3s0, enp3s1, enp3s2 და ა.შ.). გადაწყვიტეთ რომელთან იმუშავებთ და გამოიყენეთ იგი შემდგომ პარამეტრებში.

მეთოდი 1: ტერმინალი

"ტერმინალი"არის ერთჯერადი ინსტრუმენტი Ubuntu-ში ყველაფრის დასაყენებლად. მისი დახმარებით შესაძლებელი იქნება ყველა ტიპის ინტერნეტ კავშირის დამყარება, რაზეც ახლა ვისაუბრებთ.

სადენიანი ქსელის დაყენება

Ubuntu-ში სადენიანი ქსელის დაყენება ხდება კონფიგურაციის ფაილში ახალი პარამეტრების შეტანით "ინტერფეისები". ამიტომ, ჯერ უნდა გახსნათ ეს ფაილი:

შენიშვნა: კონფიგურაციის ფაილის გახსნის ბრძანება იყენებს Gedit ტექსტურ რედაქტორს, მაგრამ შეგიძლიათ შეიყვანოთ ნებისმიერი სხვა რედაქტორი, მაგალითად, vi, შესაბამის ნაწილში.

ახლა თქვენ უნდა გადაწყვიტოთ რა ტიპის IP აქვს თქვენს პროვაიდერს. არსებობს ორი სახეობა: სტატიკური და დინამიური. თუ ზუსტად არ იცით, დარეკეთ ტექ. მხარი დაუჭირეთ და გაიარეთ კონსულტაცია თქვენს ოპერატორთან.

პირველ რიგში, მოდით შევხედოთ დინამიურ IP - მისი კონფიგურაცია უფრო მარტივია. წინა ბრძანების შეყვანის შემდეგ გახსნილ ფაილში მიუთითეთ შემდეგი ცვლადები:

iface [ინტერფეისის სახელი] inet dhcp
ავტომატური [ინტერფეისის სახელი]

  • iface [ინტერფეისის სახელი] inet dhcp- ეხება შერჩეულ ინტერფეისს, რომელსაც აქვს დინამიური IP მისამართი (dhcp);
  • ავტომატური [ინტერფეისის სახელი]- როდესაც შეხვალთ, ის ავტომატურად უერთდება მითითებულ ინტერფეისს ყველა მითითებული პარამეტრით.

შესვლის შემდეგ უნდა მიიღოთ მსგავსი რამ:

სტატიკური IP კონფიგურაცია ცოტა უფრო რთულია. მთავარია იცოდეთ ყველა ცვლადი. კონფიგურაციის ფაილში თქვენ უნდა შეიყვანოთ შემდეგი ხაზები:

iface [ინტერფეისის სახელი] inet static
მისამართი [მისამართი]
ქსელის ნიღაბი [მისამართი]
კარიბჭე [მისამართი]
dns-nameservers [მისამართი]
ავტომატური [ინტერფეისის სახელი]


ყველა პარამეტრის შეყვანის შემდეგ დაინახავთ მსგავსი რამ:

არ დაგავიწყდეთ ყველა თქვენი პარამეტრის შენახვა ტექსტის რედაქტორის დახურვამდე.

სხვა საკითხებთან ერთად, Ubuntu OS-ში შეგიძლიათ დროებით დააყენოთ ინტერნეტ კავშირი. ის განსხვავდება იმით, რომ მითითებული მონაცემები არანაირად არ ცვლის კონფიგურაციის ფაილებს და კომპიუტერის გადატვირთვის შემდეგ, ყველა ადრე მითითებული პარამეტრი გადატვირთული იქნება. თუ პირველად ცდილობთ სადენიანი კავშირის დამყარებას Ubuntu-ზე, მაშინ გირჩევთ გამოიყენოთ ეს მეთოდი დასაწყებად.

ყველა პარამეტრი დაყენებულია ერთი ბრძანების გამოყენებით:

$ sudo ip adr add 10.2.119.116/24 dev enp3s0

  • 10.2.119.116 - ქსელის ბარათის IP მისამართი (თქვენთვის შეიძლება განსხვავებული იყოს);
  • /24 - მისამართის პრეფიქსის ნაწილში ბიტების რაოდენობა;
  • enp3s0- ქსელის ინტერფეისი, რომელსაც უკავშირდება პროვაიდერის კაბელი.

ყველა საჭირო მონაცემის შეყვანით და ბრძანების შესრულებით "ტერმინალი", შეგიძლიათ შეამოწმოთ მათი სისწორე. თუ ინტერნეტი გამოჩნდება კომპიუტერზე, მაშინ ყველა ცვლადი სწორია და შეიძლება შეიყვანოთ კონფიგურაციის ფაილში.

DNS პარამეტრები

DNS კავშირის დაყენება განსხვავებულად ხდება Ubuntu-ს სხვადასხვა ვერსიაში. OS-ის ვერსიებში 12.04-დან დაწყებული არის ერთი მეთოდი, წინა ვერსიებში არის მეორე. ჩვენ განვიხილავთ მხოლოდ სტატიკური კავშირის ინტერფეისს, რადგან დინამიური გულისხმობს DNS სერვერების ავტომატურ გამოვლენას.

OS-ის 12.04-ზე მაღალ ვერსიებში კონფიგურაცია ხდება უკვე ცნობილ ფაილში "ინტერფეისები". თქვენ უნდა შეიყვანოთ ხაზი "dns-nameservers"და ჩამოთვალეთ სივრცეებით გამოყოფილი მნიშვნელობები.

ასე რომ, ჯერ გახსენით მეშვეობით "ტერმინალი"კონფიგურაციის ფაილი "ინტერფეისები":

$ sudo gedit /etc/ქსელი/ინტერფეისები

dns-nameservers [მისამართი]

შედეგად, თქვენ უნდა მიიღოთ მსგავსი რამ, მხოლოდ მნიშვნელობები შეიძლება იყოს განსხვავებული:

თუ გსურთ DNS-ის კონფიგურაცია Ubuntu-ს უფრო ადრეულ ვერსიაზე, კონფიგურაციის ფაილი განსხვავებული იქნება. მოდით გავხსნათ "ტერმინალი":

$ sudo gedit /etc/resolv.conf

შემდეგ შეგიძლიათ მასში დააყენოთ საჭირო DNS მისამართები. გასათვალისწინებელია, რომ პარამეტრების შეყვანისგან განსხვავებით "ინტერფეისები", ვ "resolv.conf"მისამართები იწერება ყოველ ჯერზე აბზაციდან, მნიშვნელობის წინ გამოიყენება პრეფიქსი "სახელების სერვერი"(ციტატების გარეშე).

PPPoE კავშირის დაყენება

PPPoE-ის დაყენება მეშვეობით "ტერმინალი"არ გულისხმობს ბევრი პარამეტრის შეყვანას სხვადასხვა კონფიგურაციის ფაილში კომპიუტერში. პირიქით, გამოყენებული იქნება მხოლოდ ერთი ბრძანება.

ასე რომ, წერტილიდან წერტილის დასაკავშირებლად (PPPoE), თქვენ უნდა გააკეთოთ შემდეგი:


ყველა გადადგმული ნაბიჯის შემდეგ თქვენი კომპიუტერი დაამყარებს კავშირს ინტერნეტთან, თუ ყველაფერი სწორად გააკეთეთ.

გთხოვთ გაითვალისწინოთ, რომ ნაგულისხმევად კომუნალური pppoeconfასახელებს შექმნილ კავშირს dsl-პროვაიდერი. თუ კავშირის შეწყვეტა გჭირდებათ, გაუშვით "ტერმინალი"ბრძანება:

$ sudo poff dsl-პროვაიდერი

კავშირის ხელახლა დასამყარებლად, შეიყვანეთ:

$ sudo pon dsl-პროვაიდერი

შენიშვნა: თუ თქვენ დაუკავშირდებით ქსელს pppoeconf უტილიტას გამოყენებით, მაშინ ქსელის მართვა ქსელის მენეჯერის მეშვეობით შეუძლებელი იქნება პარამეტრების „ინტერფეისების“ კონფიგურაციის ფაილში შეყვანის გამო. ყველა პარამეტრის გადატვირთვისა და ქსელის მენეჯერისთვის კონტროლის მისაცემად, თქვენ უნდა გახსნათ "ინტერფეისების" ფაილი და შეცვალოთ ყველა შინაარსი ქვემოთ მოცემული ტექსტით. შეყვანის შემდეგ შეინახეთ ცვლილებები და გადატვირთეთ ქსელი ბრძანებით „$ sudo /etc/init.d/networking restart“ (ბრჭყალების გარეშე). ასევე გადატვირთეთ ქსელის მენეჯერის პროგრამა „$ sudo /etc/init.d/NetworkManager გადატვირთვით“ (ბრჭყალების გარეშე).

DIAL-UP კავშირის დაყენება

DIAL-UP-ის კონფიგურაციისთვის შეგიძლიათ გამოიყენოთ კონსოლის ორი კომუნალური პროგრამა: pppconfigდა wvdial.

დააყენეთ კავშირი გამოყენებით pppconfigსაკმარისად მარტივი. ზოგადად, ეს მეთოდი ძალიან ჰგავს წინა ( pppoeconf): ანალოგიურად დაგისვამთ კითხვებს, რომლებზეც პასუხის გაცემით საბოლოოდ დაამყარებთ კავშირს ინტერნეტთან. პირველ რიგში, გაუშვით პროგრამა თავად:

$sudo pppconfig

ამის შემდეგ მიჰყევით ინსტრუქციას. თუ არ იცით ზოგიერთი პასუხი, რეკომენდებულია მათგან ოპერატორთან დაკავშირება. თქვენი პროვაიდერის მხარდაჭერა და მასთან კონსულტაცია. ყველა პარამეტრის დასრულების შემდეგ, კავშირი დამყარდება.

გამოყენების პარამეტრებთან დაკავშირებით wvdial, მაშინ ეს ხდება ცოტა უფრო რთული. პირველი თქვენ უნდა დააინსტალიროთ პაკეტი თავად მეშვეობით "ტერმინალი". ამისათვის გაუშვით შემდეგი ბრძანება:

$ sudo apt install wvdial

იგი მოიცავს პროგრამას, რომელიც შექმნილია ყველა პარამეტრის ავტომატურად კონფიგურაციისთვის. ჰქვია "wvdialconf". გაუშვით:

$sudo wvdialconf

მისი შესრულების შემდეგ "ტერმინალი"ბევრი პარამეტრი და მახასიათებელი გამოჩნდება - თქვენ არ გჭირდებათ მათი გაგება. თქვენ უბრალოდ უნდა იცოდეთ, რომ პროგრამამ შექმნა სპეციალური ფაილი "wvdial.conf", რომელშიც ავტომატურად შევიყვანე საჭირო პარამეტრები, წავიკითხე ისინი მოდემიდან. შემდეგ თქვენ უნდა შეცვალოთ შექმნილი ფაილი "wvdial.conf", მოდით გავხსნათ "ტერმინალი":

$ sudo gedit /etc/wvdial.conf

როგორც ხედავთ, პარამეტრების უმეტესობა უკვე მითითებულია, მაგრამ ბოლო სამი პუნქტი ჯერ კიდევ საჭიროებს დამატებას. თქვენ უნდა შეიყვანოთ მათში თქვენი ტელეფონის ნომერი, შესვლა და პაროლი, შესაბამისად. თუმცა, არ იჩქაროთ ფაილის დახურვა უფრო მოსახერხებელი მუშაობისთვის, რეკომენდებულია კიდევ რამდენიმე პარამეტრის დამატება:

  • უმოქმედო წამები = 0- კავშირი არ გაითიშება მაშინაც კი, თუ კომპიუტერზე დიდი ხნის განმავლობაში არ არის აქტივობა;
  • აკრიფეთ მცდელობები = 0- უსასრულოდ ცდილობს კავშირის დამყარებას;
  • აკრიფეთ ბრძანება = ATDP- ნომერი აკრიფეთ პულსის მეთოდით.

შედეგად, კონფიგურაციის ფაილი ასე გამოიყურება:

გთხოვთ გაითვალისწინოთ, რომ პარამეტრები დაყოფილია ორ ბლოკად, ფრჩხილებში სახელებით. ეს აუცილებელია პარამეტრების გამოყენების ორი ვერსიის შესაქმნელად. ასე რომ, პარამეტრების ქვეშ «» , ყოველთვის შესრულდება, მაგრამ ქვეშ «» — ბრძანებაში შესაბამისი ოფციის მითითებისას.

ყველა პარამეტრის გაკეთების შემდეგ, DIAL-UP კავშირის დასამყარებლად, თქვენ უნდა შეასრულოთ ეს ბრძანება:

თუ გსურთ პულსის კავშირის დამყარება, ჩაწერეთ შემდეგი:

$ sudo wvdial პულსი

დამყარებული კავშირის შესაწყვეტად, "ტერმინალი"თქვენ უნდა დააჭიროთ კლავიშთა კომბინაციას Ctrl+C.

მეთოდი 2: ქსელის მენეჯერი

Ubuntu-ს აქვს სპეციალური პროგრამა, რომელიც დაგეხმარებათ დაამყაროთ კავშირების უმეტესობა. გარდა ამისა, მას აქვს გრაფიკული ინტერფეისი. ეს არის ქსელის მენეჯერი, რომელიც გამოიძახება ზედა პანელის მარჯვენა მხარეს შესაბამის ხატულაზე დაწკაპუნებით.

სადენიანი ქსელის დაყენება

ანალოგიურად დავიწყებთ სადენიანი ქსელის დაყენებას. პირველ რიგში, თქვენ უნდა გახსნათ თავად პროგრამა. ამისათვის დააწკაპუნეთ მის ხატულაზე და დააჭირეთ "შეცვალეთ კავშირები"კონტექსტურ მენიუში. შემდეგი, ფანჯარაში, რომელიც გამოჩნდება, თქვენ უნდა გააკეთოთ შემდეგი:


ყველა გადადგმული ნაბიჯის შემდეგ, სადენიანი ინტერნეტ კავშირი უნდა დამყარდეს. თუ ეს არ მოხდა, შეამოწმეთ ყველა შეყვანილი პარამეტრი, შესაძლოა, სადმე შეცდომა დაუშვით. ასევე, არ დაგავიწყდეთ შეამოწმოთ, არის თუ არა გვერდითი ჩამრთველი "ქსელის მენეჯმენტი"კომუნალური ჩამოსაშლელი მენიუში.

DNS პარამეტრები

კავშირის დასამყარებლად, შეიძლება დაგჭირდეთ DNS სერვერების ხელით კონფიგურაცია. ამისათვის გააკეთეთ შემდეგი:


PPPoE-ის დაყენება

PPPoE კავშირის დაყენება ქსელის მენეჯერში ისეთივე მარტივია, როგორც აქ "ტერმინალი". სინამდვილეში, თქვენ დაგჭირდებათ მხოლოდ პროვაიდერისგან მიღებული შესვლა და პაროლი. მაგრამ მოდით შევხედოთ ყველაფერს უფრო დეტალურად.


ახლა ქსელის მენეჯერის მენიუში გამოჩნდა ახალი DSL კავშირი, რომლის არჩევით თქვენ მიიღებთ წვდომას ინტერნეტში. შეგახსენებთ, რომ ცვლილებების ძალაში შესვლისთვის ზოგჯერ საჭიროა კომპიუტერის გადატვირთვა.

დასკვნა

შედეგად, შეგვიძლია ვთქვათ, რომ Ubuntu ოპერაციულ სისტემას აქვს მრავალი ინსტრუმენტი საჭირო ინტერნეტ კავშირის დასაყენებლად. ქსელის მენეჯერის პროგრამას აქვს გრაფიკული ინტერფეისი, რაც მნიშვნელოვნად ამარტივებს მუშაობას, განსაკუთრებით დამწყებთათვის. თუმცა "ტერმინალი"უფრო მოქნილი კონფიგურაციის საშუალებას იძლევა იმ პარამეტრების შეყვანით, რომლებიც არ არის პროგრამაში.

მათთვის, ვინც არ იცის, DNS არის დომენური სახელების სისტემა, რომელიც გამოიყენება კომპიუტერის IP მისამართის სახელის გადასაჭრელად და პირიქით. ამრიგად, ბრაუზერში ვებგვერდის მისამართს შეყვანისას, დომენის სახელების სისტემა გარდაქმნის მას ჰოსტინგის სერვისის IP მისამართად, სადაც მდებარეობს კონკრეტული დომენი. ამ სტატიაში ჩვენ დეტალურად განვიხილავთ, თუ როგორ უნდა დააინსტალიროთ და დააკონფიგურიროთ Ubuntu DNS სერვერი. მოდი დავიწყოთ. მოდით წავიდეთ!

გადატვირთეთ bind9

sudo სერვისის bind9 გადატვირთვა

ახლა მიუთითეთ წინა და უკანა საძიებო ზონები და შეიყვანეთ ისინი bind9 კონფიგურაციაში. საწყისი მონაცემები ასეთია:

დომენის სახელი - dom
სერვერის IP მისამართი - 192.168.0.1
სერვერის სახელი - ns.dom

საძიებო ზონის დასაყენებლად, შექმენით შესაბამისი ფაილი და დააკოპირეთ მისი ნიმუში:

sudo cp /etc/bind/db.local /var/lib/bind/db.dom

სუდო ნანო /var/lib/bind/db.dom

და შეცვალეთ შემდეგნაირად:

$ORIGIN.
$TTL 604800; 1 კვირა
dom IN SOA ns.dom. root.ns.dom. (
201605277; სერიალი
604800 ; განახლება (1 კვირა)
86400 ; ხელახლა ცდა (1 დღე)
2419200; ვადა (4 კვირა)
604800 ; მინიმუმ (1 კვირა)
@ IN NS ns.dom.
@ IN A 192.168.0.1
@ IN AAAA::1
$ORIGIN dom.
$TTL 604800; 1 კვირა
ns IN A 192.168.0.1

sudo cp /var/lib/bind/db.dom /var/lib/bind/db.192.dom

გახსენით იგი ბრძანებით:

სუდო ნანო /var/lib/bind/db.192.dom

და ასევე რედაქტირება:

$ORIGIN.
$TTL 604800; 1 კვირა
0.168.192.in-addr.arpa IN SOA ns.dom. root.ns.dom. (
2016052655; სერიალი
604800 ; განახლება (1 კვირა)
86400 ; ხელახლა ცდა (1 დღე)
2419200; ვადა (4 კვირა)
604800 ; მინიმუმ (1 კვირა)
@ IN NS ns.
$ORIGIN 0.168.192.in-addr.arpa.
$TTL 604800; 1 კვირა
1 IN PTR ns.dom.

bind9 კონფიგურაციის ზონების კონფიგურაციისთვის, თქვენ უნდა გახსნათ კონფიგურაციის ფაილი ბრძანებით:

sudo nano /etc/bind/named.conf.local,

გასაღები DHCP_UPDATER (
ალგორითმი HMAC-MD5.SIG-ALG.REG.INT;
საიდუმლო "9DxMmNw7J813qviXajG7rQ==";
};

// წინ ხედვის ზონა

ზონა "dom"(
ტიპის master;
ფაილი "/var/lib/bind/db.dom";

};

// საპირისპირო ძიების ზონა

ზონა "0.168.192.in-addr.arpa"(
ტიპის master;
ფაილი "/var/lib/bind/db.192";
დაშვება-განახლება (გასაღები DHCP_UPDATER;);
};

გასაღები DHCP_UPDATER - ინფორმაცია საიდუმლო გასაღების შესახებ, რომელიც თავიდანვე ჩაწერეთ (ის უნდა ჩაიწეროს ბრჭყალებში). თუ ადრე იყენებდით მეორე მეთოდს, შეიყვანეთ:

// წინ ხედვის ზონა

ზონა "dom"(
ტიპის master;
ფაილი "/var/lib/bind/db.dom";

};

// საპირისპირო ძიების ზონა

ზონა "3.168.192.in-addr.arpa"(
ტიპის master;
ფაილი "/var/lib/bind/db.192";
დაშვება-განახლება (გასაღები rndc-key;);
};

სადაც გასაღები rndc- გასაღები არის სისტემიდან აღებული ძირითადი მონაცემები, ხოლო ზონა “dom” არის მონაცემები დომენის სახელების სისტემის განაცხადის ზონის შესახებ. რჩება მხოლოდ მთელი ნივთის შენახვა, შემდეგ დახურვა და გადატვირთვა bind9 შეყვანით:

sudo /etc/init.d/bind9 გადატვირთვა

დომენური სახელების სისტემის მუშაობის შემოწმება

ახლა შეამოწმეთ დომენური სახელების სისტემის მოქმედება:

შედეგად თქვენ უნდა მიიღოთ მსგავსი რამ:

სერვერი: 127.0.0.1
მისამართი: 127.0.0.1#53
დასახელება: ns.dom
მისამართი: 192.168.0.1

როგორც ხედავთ, წინ ხედვის ზონა მუშაობს. ახლა დარწმუნდით, რომ საპირისპირო ასევე მუშაობს:

შედეგად თქვენ უნდა ნახოთ:

სერვერი: 127.0.0.1
მისამართი: 127.0.0.1#53
1.0.168.192.in-addr.arpa სახელი = ns.dom.

და ბოლოს, თქვენ უნდა მიიღოთ სერვერის სახელი მისი IP შეყვანით. თუ ყველაფერი ასე გამოჩნდება, ეს ნიშნავს, რომ დაყენება სწორად გაკეთდა. თუ არა, ეს ნიშნავს, რომ შეცდომა ადრე იყო დაშვებული.

დინამიური განახლების დაყენება

დინამიური განახლების კონფიგურაციისთვის გახსენით /etc/dhcp/dhcpd.conf ბრძანების გაშვებით:

სუდო ნანო /etc/dhcp/dhcpd.conf

ხაზი ddns-განახლების სტილის არცერთს არ სჭირდება ჩანაცვლება ddns-განახლების სტილის შუალედით. შემდეგი, დაამატეთ განახლება-სტატიკური-იჯარა ონლაინ, რომელიც პასუხისმგებელია სტატიკური IP-ის მქონე კლიენტებისთვის ზონების შექმნაზე. დარწმუნდით, რომ ოფცია domain-name შეიცავს დომენის სახელს "dom". "გასაღები" ხაზი უნდა შეიცავდეს თქვენი გასაღების სახელს (თუ ადრე აირჩიე პირველი მეთოდი, შეიყვანეთ DHCP_UPDATER, თუ მეორე, მაშინ rndc-გასაღები) და შეიცავს თქვენს საიდუმლო გასაღებს. rndc-გაშვების სანახავად:

კატა /etc/bind/rndc.key |grep საიდუმლო

შედეგი უნდა იყოს დაახლოებით ასეთი:

საიდუმლო "2mu11eRajAdm4KV0x0Pmcg==";

ეს ყველაფერი DHCP პარამეტრებით. ახლა თქვენ უნდა გადატვირთოთ bind9 და dhcp. ამისათვის დაწერეთ:

sudo სერვისის bind9 გადატვირთვა
sudo სერვისი isc-dhcp-სერვერის გადატვირთვა

რჩება იმის შემოწმება, თუ როგორ მუშაობს ყველაფერი. გაუშვით კლიენტის მანქანა, რომელიც ქსელშია სერვერთან. გაშვების შემდეგ, მანქანა მიიღებს IP-ს DHCP-დან და ის, თავის მხრივ, შექმნის ჩანაწერს, როგორიცაა client-pc.dom. მოთხოვნით "nslookup client_machine_name", თქვენ უნდა მიიღოთ პასუხი. სერვერის გადატვირთვით, შეგიძლიათ ნახოთ წინა და უკანა საძიებო ფაილები. თუ წინა ეტაპებზე ყველაფერი სწორად დააკონფიგურირეთ, იქ ნახავთ ინფორმაციას ახალი მანქანების შესახებ. მზადაა. დაყენება დასრულებულია.

შედეგები

ახლა თქვენ იცით, როგორ დააკონფიგურიროთ DNS სერვერი Ubuntu-ში. დაწერეთ კომენტარებში, როგორ გაართვით თავი ამ ამოცანას, გაუზიარეთ თქვენი გამოცდილება სხვა მომხმარებლებს და დაუსვით ნებისმიერი შეკითხვა ამ სტატიის თემასთან დაკავშირებით.



რაიმე შეკითხვა?

შეატყობინეთ შეცდომას

ტექსტი, რომელიც გაეგზავნება ჩვენს რედაქტორებს: