Ochiq
Yopish

Linux xost fayli. Linuxda xostlar fayli. Kartaning jismoniy ulanishi

Linuxda xostlar faylini qanday o'zgartirish va boshqarish kerak Xostlar fayli deb ataladigan kam ma'lum xususiyat sizning ehtiyojlaringizga qarab tizimingizni o'zgartirish uchun ishlatilishi mumkin. Yorliqlar yaratishingiz, veb-saytlarni bloklashingiz yoki boshqa biror narsa qilishingiz kerak bo'ladimi, barchasini hostlar fayli yordamida amalga oshirishingiz mumkin, ammo unga qanday o'zgartirishlar kiritasiz? Bu erda biz sizga qanday qilib foydalanishni aytib beramiz va siz darhol fayldan foydalanishni boshlashingiz mumkin xost nomlari IP manzillarga. Xost nomini kiritganingizda - masalan. facebook.com yoki myubuntu.ru- mos keladigan serverga ulanish uchun zarur bo'lgan IP-manzilni olish uchun tizimingiz xostlar faylini tekshiradi. Ammo agar siz ushbu faylni kompyuteringizda ochsangiz, unda barcha Internet saytlarining katalogi yo'qligini tezda bilib olasiz. Faqat bir nechta satr bo'lishi mumkin va boshqa hech narsa yo'q. Tizim har doim birinchi navbatda xostlar faylini tekshiradi va u yerda oʻrnatilmagan barcha narsa tarmoq sozlamalarida sozlangan DNS serverlarida topiladi (odatda sizning ISP serverlaringiz), lekin bu manzillar qoʻshish uchun Xost faylidan foydalanishingiz mumkinligini ham bildiradi DNS serverlari tomonidan ta'minlab bo'lmaydigan (masalan, bu sizning uy tarmog'ingizdagi turli joylar uchun taxalluslar bo'lishi mumkin, aks holda siz o'zingizning DNS serveringizni o'rnatgan va sozlagan bo'lsangizgina foydalanish mumkin) yoki sukut bo'yicha taqdim etilgan IP manzillarni chetlab o'tish uchun Misol uchun, agar siz brauzeringizdan ochishni so'rasangiz facebook.com, DNS serverlari Facebook IP manzilini kompyuteringizga qaytaradi. Ammo, agar siz to'satdan kompyuteringizda Facebook-ni bloklamoqchi bo'lsangiz, kompyuteringizga barcha so'rovlarni bildiradigan xostlar fayliga yozuv qo'shishingiz mumkin. facebook.com haqiqiy Facebook IP-manzilidan farq qiladigan boshqa IP-manzilga yo'naltirish kerak. Ushbu ijtimoiy tarmoqni blokirovka qilish uchun siz shunchaki tarjima qilinadigan so'rovlarni ro'yxatdan o'tkazishingiz mumkin facebook.com IP manziliga 127.0.0.1, bu har doim tizimingizga qaytadi. Ushbu fayl bilan siz juda ko'p narsalarni qilishingiz mumkin va bu juda oddiy misol - barchasi sizning xohishingiz va ehtiyojlaringizga bog'liqdir. xostlar. Bu oddiy matn fayli bo'lgani uchun siz oddiy matn muharriridan foydalanishingiz mumkin (terminal yoki grafik). Afsuski, qisman xostlar fayllarini boshqarishni ta'minlaydigan bitta grafik vosita mavjud - Linux Mint'dan Domen Blocker ilovasi Ushbu dastur siz ko'rsatgan domenlarni qayta yo'naltiruvchi xostlar fayliga yozuvlar qo'shish orqali ishlaydi 127.0.0.1- ya'ni kompyuteringizda. Baribir, Domen Blocker bilan qilishingiz mumkin bo'lgan yagona narsa - xostlar faylidan boshqa barcha foydalanish uchun matn muharriri yordamida faylni qo'lda tahrirlash talab qilinadi, chunki hostlar tizim fayli bo'lib, ushbu faylga kiritilgan o'zgarishlarni saqlash uchun sizga ma'muriy huquqlar kerak bo'ladi. Biroq, uni sudo nano /etc/hosts yoki gksu gedit /etc/hosts kabi terminal buyrug'i yordamida tahrirlashingiz mumkin. Ma'muriy huquqlar bilan kerakli dasturni shu tarzda ishga tushirishingiz uchun siz terminaldan foydalanishingiz kerak. Sevimli matn muharririni ishga tushirish buyrug'i bilan nano yoki geditni ham almashtirishingiz mumkin. Faylni nano-da tahrirlashni tugatgandan so'ng, o'zgarishlarni qayta yozishni tasdiqlash uchun Ctrl+X va keyin y tugmalarini bosishingiz mumkin Xostlar faylidagi har bir yozuv o'z-o'zidan chiziq. Ushbu maqolaning maqsadlari uchun siz juda oddiy sintaksisdan foydalanishingiz mumkin - siz host nomini (domenni) yo'naltirmoqchi bo'lgan IP-manzilni, so'ngra yorliq belgisini va domenning o'zini yozasiz. Masalan, Facebook-ni blokirovka qilish uchun siz kirishingiz mumkin 127.0.0.1facebook.com, klaviaturadagi Tab tugmachasini bosish. Kirish to'g'ri ekanligiga ishonch hosil qilish uchun siz skrinshotga ham qarashingiz va uni faylingizdagi narsalar bilan solishtirishingiz mumkin. Keling, ushbu xususiyatdan foydalanishning yana bir misolini keltiramiz. Misol uchun, agar sizning uy tarmog'ingizda kompyuteringiz bo'lsa (aytaylik, uning IP manzili 192.168.1.10), siz uchun foydali narsalarni qiladigan oddiy veb-saytni boshqaradi. Xostlar fayliga quyidagilarni kiritishingiz mumkin: 192.168.1.10homeserver. Endi, agar siz brauzeringizni ochsangiz va manzil satriga oddiygina http://homeserver yozsangiz, u avtomatik ravishda xost tarkibini ko'rsatadi. 192.168.1.10. Bu har safar IP manzilini kiritishdan ko'ra osonroqdir Potentsial muammolar Men duch kelgan yagona muammo Chrome brauzeri bilan bog'liq. Agar siz ikkita mumkin bo'lgan narsadan kamida bittasini qilmasangiz, u xostlar faylini e'tiborsiz qoldiradi: har bir manzildan oldin http:// kiriting. Misol uchun, agar sizda Facebook xostlar fayli orqali bloklangan bo'lsa, oddiygina kiritsangiz, Chrome blokni chetlab o'tadi

NAME
xostlar - statik IP-manzilni o'zgartirish jadvali
avtomobil nomlari

SYNTAX
/etc/hosts

TAVSIF
Ushbu sahifada fayl formatining tavsifi mavjud
/etc/hosts. Ushbu faylda tavsiflovchi matn mavjud
IP manzillar va mashina nomlari o'rtasidagi yozishmalar (har bir
chiziq). Har bir mashina uchun bitta chiziq bo'lishi kerak
quyidagi ma'lumotlar mavjud:

IP_manzil kanonik_taxallus nomi

Ushbu yozuvning maydonlari bir-biridan bo'shliqlar va/yoki bo'shliqlar bilan ajratilgan
yorliqlar. “#” belgisidan boshlab oxirigacha matn
satr izoh hisoblanadi va e'tiborga olinmaydi. Mashina nomlari
chegaralovchidan tashqari har qanday bosma belgilarni o'z ichiga olishi mumkin
chetlari, yangi qator yoki sharh belgisi.
Taxalluslar o'zgartirilgan, muqobil,
mashina nomlarining qisqartirilgan yoki umumiy shakllari (masalan,
localhost). Mashina nomlari jadvalining formati RFC 952 da tasvirlangan.

Berkli Internet domen nomi (BIND) serveri o'z ichiga oladi
UNIX mashinalari uchun Internet nom serveri. U faylni almashtiradi
/etc/hosts yoki mashina qidiruvi va mashinani bo'shatadi
faylni to'liq to'ldirish zaruratidan
/etc/hosts.

Ushbu jadvalning funktsiyalari uzoq vaqt davomida bajarilganiga qaramay
DNS hali ham uchun ishlatiladi

Tizimning dastlabki yuklanishi.
Ko'pgina tizimlarda nomlarning kichik jadvali mavjud
nomlar va manzillar haqidagi ma'lumotlarni o'z ichiga olgan mashinalar
mahalliy tarmoqdagi muhim mashinalar. Bunda bu foydali
DNS ishlamasa, masalan, qachon
tizimni yuklash.

NIS tizimidagi NIS saytlari nomlar jadvalidan foydalanadi
Ma'lumotlar bazasi uchun ma'lumot manbai sifatida mashinalar
NIS mashinasi ma'lumotlari. Garchi NIS bo'lishi mumkin
DNS bilan ishlash, ko'plab NIS saytlari foydalanadi
barcha mashinalar uchun qatorlar bilan mashina nomlari jadvali
mahalliy tarmoq xavfsizlik tarmog'i sifatida.

Izolyatsiya qilingan tugunlar
Global tarmoqqa ulanmagan kichik saytlar
DNS o'rniga mashina nomi jadvalidan foydalaning. Agar
mahalliy ma'lumotlar kamdan-kam o'zgaradi va tarmoq o'zgarmaydi
Internetga ulangan bo'lsa, DNS deyarli kerak emas.

MISOL
127.0.0.1 mahalliy xost
192.168.1.10 foo.mydomain.org foo
192.168.1.13 bar.mydomain.org satri
216.234.231.5 master.debian.org ustasi
205.230.163.103 www.opensource.org

TARIXIY MA'LUMOT
DNS joriy etilishidan oldin mashina nomlari jadvali yagona edi
mashina nomlarini manzillarga aylantirish vositasi
o'sib borayotgan Internet. Aslida, bu fayl
rasmiy avtomobil ma'lumotlar bazasi asosida yaratilgan,
Tarmoq axborotini boshqarish markazida saqlanadi
(NIC), shuningdek, o'z ichiga olgan mahalliy yamoqlarga asoslangan
norasmiy taxalluslar va/yoki noma'lum shaxslar haqidagi ma'lumotlar
avtomobillar. NIC endi hosts.txt fayllarini qo'llab-quvvatlamaydi,
ammo, bu sahifani yozish paytida (taxminan 2000 yil)
WWW da eski hosts.txt fayllari bor edi. Ular ... bo'lgandi
topilgan; ularni joylashtirish sanalari - 92, 94 va 95.

Ubuntuda virtual xostlar o'rnatish va hosting saytlari katalogini o'zgartirish haqida yozishimni aytdim. Xo'sh, men yozyapman.

Internetda virtual xostlar va ularni qanday sozlash haqida ko'p yozilgan. Ammo ba'zi joylarda ma'lumotlar eskirgan, boshqalarida esa faqat yarmi ishlaydi. Natijada, ko'pi bilan besh daqiqa davom etadigan protsedura bir necha soatga cho'ziladi. Menda ham bor edi. Shuning uchun, keyingi safar kerak bo'lganda yana ko'p vaqtni behuda sarf qilmaslik uchun men ushbu maqolani yozyapman.

Saytlar uchun ildiz katalogini sozlash

Odatiy bo'lib, Apache Internet sahifalarini qidiradi /var/www/html. Ammo bu foydalanuvchi uchun noqulay bo'lishi mumkin. Shuning uchun, agar so'ralsa, ildiz katalogini o'zgartirish mumkin. Masalan, saytlarim uchun men papkadan foydalanaman public_html uy katalogida. Bundan tashqari, men darhol test sayti uchun papka yarataman testsite.loc va to'g'ridan-to'g'ri sayt fayllari joylashgan papka www. Ya'ni, siz quyidagi katalog tuzilmasini yaratishingiz kerak: /public_html/testsite.loc/www/. Buni fayl menejeri yoki terminal orqali qilishingiz mumkin:

Mkdir -p public_html/testsite.loc/www

Keling, darhol oddiy test sahifasini yarataylik index.html

Virtual xostlarni sozlash

Salom!!

Va uni www papkasida saqlang.

Endi virtual xost faylini tahrir qilaylik 000-default.conf Apache-ga saytlarni qayerda joylashtirganimizni aytish uchun:

Sudo gedit /etc/apache2/sites-available/000-default.conf

Ochilgan faylda DocumentRoot bilan boshlanadigan qatorni toping va yo'lni yangisiga o'zgartiring: /home/user/public_html/. Qayerda foydalanuvchi— foydalanuvchi ismingiz.

Faylni saqlang va muharrirni yoping.

Keling, sozlamalar fayliga o'zgartirish kiritamiz apache2.conf:

Sudo gedit /etc/apache2/apache2.conf

Ochilgan faylga quyidagi blokni qo'shing:

Options Indexes FollowSymLinks AllowOverride None Hammasi berilgan talab qiladi

Yana, almashtirishni unutmang foydalanuvchi foydalanuvchi nomingizga. Faylni saqlang.

Yangi xost uchun konfiguratsiya faylini yarating. Buning uchun 000-default.conf standart faylidan nusxa oling va nomini o'zgartiring testsite.conf:

Sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/testsite.conf

Endi uni tahrir qilaylik:

Sudo gedit /etc/apache2/sites-available/testsite.conf

Qulaylik uchun barcha sharhlangan satrlarni (# bilan boshlanadigan) olib tashlashingiz mumkin.

“ServerName testsite.loc” qo‘shing

"ServerAlias ​​www.testsite.loc" qo'shing

DocumentRoot-da biz sayt fayllari bilan katalogga yo'lni belgilaymiz.

O'zgarishlarni saqlang.

Va saytni yoqing:

Sudo a2ensite testsite.conf

Apache-ni qayta ishga tushiring:

Apache2 xizmatini qayta yuklash

Xostlar fayli

Brauzer so'rovlarini bizning serverimizga yo'naltirish uchun. Xostlar faylini tahrir qilaylik:

Sudo gedit /etc/hosts

Birinchi qatorda, bo'sh joy bilan ajratilgan, localhost yonidagi saytimiz domenlarini qo'shing testsite.loc Va www.testsite.loc

O'zgarishlarni saqlang

Ishimiz natijasini tekshirishimiz mumkin. Biz brauzerda veb-saytimizning manzilini yozamiz - testsite.loc.

Jildga ruxsatlar

Apache serveri guruh va foydalanuvchi sifatida ishlaydi www-ma'lumotlar. Uy katalogida fayllar egasi joriy foydalanuvchi hisoblanadi. Shuning uchun, muammolarni oldini olish uchun siz public_html ichidagi fayl va papkalarga va uning o'zida huquqlarni o'zgartirishingiz kerak. Buning uchun terminalga kiring.

Men sizga qisqa nomlar yordamida brauzerda saytlarni ochishingiz mumkin bo'lgan nostandart usul haqida aytib bermoqchiman. Misol uchun, brauzeringizda "yandex.ru" ni yozish o'rniga, siz shunchaki bitta "y" harfini kiritishingiz mumkin. Bunda bizga /etc/hosts fayli yordam beradi.

Fayl /etc/hosts

/etc/hosts fayli IP-manzil va xost nomi (xost nomi, domen), shuningdek, ularning taxalluslari (sinonimlar, taxalluslar deb ham ataladi) o'rtasidagi yozishmalarni belgilaydi. Tarmoqdagi manzilga kirganingizda, masalan, http://yandex.ru, saytga kirish uchun, tizim avvalo sayt manzilini o'zining tegishli IP manziliga aylantirishi kerak, tizim IP-manzilni so'raydi DNS server. Agar /etc/hosts faylida yandex.ru va IP-manzil o'rtasidagi yozishmalar mavjud bo'lsa, tizim ushbu maxsus IP-manzildan foydalanadi. Va biz /etc/hosts faylida ma'lum bir IP-manzilga kirish mumkin bo'lgan taxallusni ham belgilashimiz mumkinligi sababli, masalan, yandex.ru uchun "y" taxallusini belgilashimiz mumkin. Shunga ko'ra, brauzeringizda "y" ni so'raganingizda, tizim /etc/hosts faylidagi IP-manzilni o'qiydi va yandex.ru veb-saytini ochadi. Ya'ni, /etc/hosts mahalliy DNS-serverning bir turi.

Saytning IP manzilini qanday aniqlash mumkin

Endi biz /etc/hosts ga qo'shmoqchi bo'lgan saytlarning IP manzillarini aniqlashimiz kerak. Shuni ta'kidlash kerakki, barcha saytlar alohida ajratilgan IP-manzilga ega emas va ularga faqat IP-manzil orqali kirish mumkin emas. Ammo deyarli barcha yirik saytlar va portallar o'zlarining maxsus IP manzillariga ega. Saytning IP manzilini bilishning oson yo'li ping buyrug'idan foydalanishdir:

Ping site-address.ru

Masalan, keling:

ping yandex.ru

Ping jarayoni ekranda ko'rsatiladi (to'xtatish uchun Ctrl+C tugmalarini bosing). Shunday qilib, biz ping buyrug'ining natijasini quyidagicha olamiz:

PING yandex.ru (87.250.250.11) 56(84) bayt ma'lumotlar. yandex.ru dan 64 bayt (87.250.250.11): icmp_seq=1 ttl=57 vaqt=3,57 ms ...

Bu yerda yandex.ru 87.250.250.11 IP manziliga mos kelishini ko'rishingiz mumkin. Boshqa saytlar uchun ham xuddi shunday qilamiz.

/etc/hosts faylini tahrirlash

Hech narsani buzmaslik uchun /etc/hosts faylini ehtiyotkorlik bilan tahrirlashingiz kerak, chunki bu tizim fayli va uning sintaksisini buzmaslik muhim. Faylni tahrirlash uchun oching, buni buyruq satrida bajaring:

Sudo gedit /etc/hosts

Fayl mazmuni quyidagicha ko'rinadi:

127.0.0.1 localhost::1 mycomp localhost6.localdomain6 localhost6 127.0.1.1 mycomp # Quyidagi qatorlar IPv6 qobiliyatiga ega xostlar uchun ma'qul::1 localhost ip6-localhost ip6-loopback fe00::0 ip6-localnet ...

/etc/hosts fayli sintaksisi juda oddiy:

IP manzili xost nomi [taxalluslar, ...]

Turli saytlar uchun faylga yangi qatorlar qo'shamiz:

74.125.232.19 google.ru g 94.100.191.203 mail.ru m 194.186.36.211 rbc.ru r 87.250.250.11 yandex.ru y

Faylni saqlang va yoping. Biz IP manzillar, sayt nomlari va ularning taxalluslari o'rtasida yozishmalarni yozdik. Endi brauzerga o'ting va manzil satriga "g" ni kiriting, google.ru veb-sayti ochilishi kerak. Mail.ru-ni ochish uchun oddiygina "m", rbc.ru uchun - oddiygina "r", yandex.ru - "y" ni kiriting.