Вибираємо хостинг і домен

1815
  • Що таке Hosts, його зміст і призначення?
  • Де знаходиться файл Hosts і як видалити вірус?
  • Як використовувати Хостс при перенесенні сайту?
  • Здрастуйте, шановні читачі блогу . Сьогодні я хочу поговорити про такий досить-таки простий в своєму пристрої речі, як файл Hosts.

    Що примітно, живе він практично на всіх операційних системах (а значить і всіх комп’ютерах користувачів інтернету), починаючи від Лінукса і закінчуючи Windows 7. Ще одним відмітним властивістю є те, що він не має розширення, але це зумовлено саме тим, що працювати він повинен у будь-яких ОС, а значить зобов’язаний бути універсальним.

    Але не це головне. Хоча він і є пережитком минулого, як і раніше є маса способів використовувати Хостс як в благих цілях, так і не дуже. Наприклад, віруси і вірусописьменники дуже його люблять і часто використовують або для підміни офіційних сайтів їх фішингові дублі, або для блокування можливості оновлення встановленої у вас антивірусної програми.

    Вибираємо хостинг і домен

    Коли інтернет тільки з’явився і був повільним, то багато користувачів прописували в Hosts найбільш часто відвідувані ними ресурси, а так само блокували через нього сервера з рекламою, ну, або доступ до програм, які вони активували, скажімо так, не сплачуючи за це розробникам.

    Але навіть зараз цей файл може приносити користь, в тому числі і вебмайстрам. Наприклад, при зміні хостингу ви змушені іноді чекати добу, перш за на всіх DNS серверах пропишеться новий IP адреса вашого сайту. Однак, можна починати працювати і тестувати сайт на новому хостингу відразу ж після його розташування там. Як це зробити? Ну, все за допомогою того ж Hosts.

    Крім цього взагалі буде корисно знати де знаходиться файл Hosts, як його знайти на різних операційних системах, як його перевірити на предмет дівочої чистоти від вірусних записів, ну і, нарешті, як він повинен виглядати в оригіналі.

    Що таке Hosts, його зміст і призначення?

    За традицією, варто почати з того, а як же власне це диво з’явилося і зуміло оселитися на переважній більшості комп’ютерів у світі. Ну, тут, як завжди все просто.

    Коли інтернету (всесвітньої павутини, глобальної мережі або просто WWW) ще не існувало як такого (як він з’явився можна почитати в статті про появу WWW в інтернеті), але вже були невеликі локальні мережі з підключених один до одного комп’ютерів, то навіть тоді прийшли до висновку, що набагато простіше звертатися до хостів (комп’ютерів в мережі) по іменах, а не по цифровому коду, який називають IP-адресою.

    Однак мережного обладнання потрібні саме Ip-ишники і нічого іншого. Тому вручну формувався список відповідності імені хоста і його Ip адреси (тут можна дізнатися свій IP або якого-небудь сайту). Такий список обзивався ім’ям Hosts і розсилався на всі вузли локальної мережі. Все було чудово аж до того моменту, коли використовувати такий метод вже стало не можливо із-за величезного числа записів, що містяться в цьому файлі. Розсилати його стало проблематично.

    У зв’язку з цим вирішили підійти до цього питання інакше, а саме розмістити в інтернеті цілу деревоподібну мережу серверів DNS (системи доменних імен), які зберігали б всі ці таблиці відповідності та комп’ютери користувачів зверталися до найближчого з них з питанням про те, а який-же Ip-ишник відповідає домену Вася.ру.

    При цьому про файл Hosts все благополучно забули, але він як і раніше мав місце бути у всіх операционках, хіба що тільки його зміст було вкрай мізерним. Зазвичай там присутня і присутня досі лише один запис:

    127.0.0.1 localhost

    З якоїсь причини, даний Ip-адресу (а точніше діапазон 127.0.0.1 — 127.255.255.255) був обраний для позначення локального хоста (приватного IP), тобто того самого комп’ютера, за яким ви сидите (дослівно localhost — «комп’ютер»). Але, правда, це все для дідка IPv4 (четвертої версії).

    А під входить зараз в ужиток IPv6 (з-за того, що закладеного в попередній версії кількості адрес вже не вистачає всім) подібна запис буде виглядати трохи по іншому:

    ::1 localhost

    Але суть одна і та ж. Оскільки зараз ще використовуються або можуть використовуватися обидва стандарту завдання IP адреси у файлі Hosts зазвичай присутні обидві ці рядки. Над ними, правда, може бути всяка билиберда написана (залежить від використовуваної ОС), але всі ті рядки містять спочатку символ решітки # (хеш), який означає, що дані рядка є коментарем і враховуватися не повинні.

    На моїй старенькій Windows Vista файл Хостс зараз виглядає ось так:

    # Copyright (c) 1993-1999 Microsoft Corp.
    #
    # This is a sample HOSTS file used by Microsoft TCP/IP для Windows.
    #
    # This file contains the mappings of IP addresses to host names. Each
    # entry should be kept on an individual line. The IP address should
    # be placed in the first column followed by the corresponding host name.
    # The IP address and the host name should be separated by at least one
    # space.
    #
    # Additionally, comments (such as these) may be inserted on individual
    # lines or following the machine name denoted by a ‘#’ symbol.
    #
    # For example:
    #
    # 102.54.94.97 rhino.acme.com # source server
    # 38.25.63.10 x.acme.com # x client host
    # This HOSTS file created by Dr.Web Anti-rootkit API
    127.0.0.1 localhost
    ::1 localhost

    Синтаксис запису дуже простий — спочатку вказується IP адреса, а потім через будь-яку кількість прогалин (символів табуляції) прописується назва хоста (комп’ютера, хоста або домену). Для кожного запису подібного роду використовується окремий рядок.

    Тут постає головне питання, яке зараз займає Hosts місце в процесі встановлення відповідності вводяться в браузері доменних імен і тих IP адрес, які за цими доменами ховаються? Ну, як виявилося, дуже важливе місце займає, а саме перше. Але про все по порядку.

    Отже, ви вводите в адресний рядок браузера Url адреса (про Url читайте тут) або ж переходьте за посиланням із закладок браузера, або ж з будь-якої відкритої в ньому вебсторінки. У будь-якому випадку браузер отримує від вас шлях до того документа, який ви хочете побачити.

    https:///papka/fail.html

    По любому, в Урлі буде присутній доменне ім’я сайту, на якому цікавить вас документ лежить ( у нашому прикладі). Однак, цього домену відповідає цілком собі конкретний сервер (може бути віртуальний), де хоститься цей самий сайт. І у цього сервера обов’язково має бути IP адреса, щоб він був видний в мережі і до нього могли звертатися.

    Ваш браузер не може знати, який саме IP відповідає доменному імені міститься в Урлі (ну, якщо тільки ви в цьому самому браузері не включили кешування DNS записів і цей вузол був відвіданий вами раніше). Тому він звертається в першу чергу за роз’ясненнями саме до файлу Hosts на вашому комп’ютері.

    Якщо там цей домен знайдений не буде (і відповідний йому IP), то вже далі браузер почне катувати службу кешування DNS записів зі складу Windows. Якщо раніше ви до цього домену зверталися і з тих пір пройшло не дуже багато часу, то DNS-кеш видасть браузеру цей самий Айпішнік. Браузер його отримає і відкриє викликаний вами документ.

    Якщо ж серед кешу для цього домену записів не знайдеться, то браузер відправить запит на найближчий DNS-сервер (швидше за все, це буде сервер вашого інтернет провайдера) і отримає від нього потрібну інформацію. Правда, в цьому випадку може спостерігатися невелика затримка у відкритті затребуваної вами веб-сторінки, але при сучасних швидкостях інтернету це буде практично не помітно.

    І так відбувається при абсолютно будь-який запит на відкриття документа через інтернет з вашого комп’ютера. Вловлюєте? Порожній Hosts не створює жодних проблем, а от якщо його заповнити, та ще й зі злим умислом, то може вийти так, що ви введете пароль від свого Яндекс-гаманця на офіційному сайті цієї платіжної системи, а на шахрайський ресурсі з аналогічним дизайном (див. що таке фішинг).

    Як таке може бути? Ну, від зараження вірусами ніхто не застрахований (тут я писав про свою вірусну епопею з сайтами), а вірус може запросто дописати в Хостс IP адреса фішингової ресурсу і поставити йому у відповідність доменне ім’я money.yandex.ru, приміром. В цьому і криється небезпека.

    На фальшивому сайті соціальної мережі можуть перехопити введені вами паролі, можуть вимагати плату за вхід, ну або ще чого-небудь зробити більш креативного. Найсумніше, що помітити підміну неможливо, бо в адресному рядку браузера буде красуватися правильне доменне ім’я.

    Де знаходиться файл Hosts і як видалити з нього записи вірусу?

    З іншого боку видалити внесені вірусом зміни з файлу Host зможе навіть абсолютний нуб в комп’ютерах. Зазвичай проблема полягає саме в тому, щоб знайти, де цей самий файлик знаходиться.

    В старих версіях Windows, як, наприклад, XP або 2000, він був відкритий для всіх бажаючих і жив в системних папках за адресою:

    Windows\System32\drivers\etc\

    Ви не повірите, але він живе за цією ж адресою і в Windows 7, і у Вісті, але там все трохи складніше, бо пройшовши по дорозі:

    c:\Windows\System32\drivers\

    Папки etc ви там не знайдете. Розробники порахували, що звичайним смертним цей файл чіпати не варто під уникнення проблем.

    Проте, файл hosts в windows 7 і vista все ж має місце бути, треба тільки шукати його, отримавши права Адміністратора. Особисто я ніколи навіть не намагався розібратися у всій це ахінеї з правами, але для себе знайшов дуже простий спосіб обійти це обмеження.

    Отже, заходьте в меню кнопки «Пуск» — «Всі програми» і знаходите там папку «Стандартні». Всередині неї живуть ярлички, серед яких нескладно побачити «Блокнот». Клацаєте по ньому правою кнопкою миші і з появи контекстного меню вибрати «Запуск від імені Адміністратора»:

    Вибираємо хостинг і доменВибираємо хостинг і домен

    Ну, власне, півсправи зроблено. Теперича в блокноті вибираєте з верхнього меню пункти «Файл» — «Відкрити». У стандартному вікні провідника Windows знаходите потрібну папку etc (всередині каталогу Windows\System32\drivers\), вибираєте в правому нижньому куті з випадаючого списку «Всі файли» і щасливими очима спостерігаєте появи цього надсекретного файлу:

    Вибираємо хостинг і доменВибираємо хостинг і домен

    Він буде саме без розширення, а всю іншу лабудєнь, на кшталт hosts.txt дуже часто створюють віруси, щоб відволікти вашу увагу і на кінець заплутати. Для цього файлу вони виставляють атрибут «Прихований», який можна поставити або зняти, просто клацнувши по файлу правою кнопкою миші і вибравши самий нижній пункт «Властивості»:

    Вибираємо хостинг і доменВибираємо хостинг і домен

    А оскільки Windows за замовчуванням для зареєстрованих типів файлів розширення не відображаються (ось навіщо так зробили — я не розумію), то користувач знаходить hosts.txt не бачачи ні його розширення, ні того, що в тій же папці є ще один хостс, але він схований від її очей.

    Вносячи зміни в фальшивку він так нічого і не домагається, починає рвати волосся, заламувати руки і йде в магазин за новим ноутбуком, щоб, нарешті, потрапити в свій улюблений Контакт, який вірус заблокував на старому компі. Ааа, жах.

    Хоча, звичайно ж, користувач може виявитися просунутим і включити в налаштуваннях показ прихованих і системних файлів. Windows Vista для цього потрібно зайти в «Панель управління» — «Властивості папки» — вкладка «Вид» і перемістити галочку в рядок «Показувати приховані папки та файли». До речі, і з розташованої вище рядки «Приховати розширення …» галочку краще буде зняти:

    Вибираємо хостинг і доменВибираємо хостинг і домен

    Є зовсім простий спосіб відкрити цей файл. Достатньо буде лише натиснути на клавіатурі клавіші Win+R (або вибрати з меню кнопки «Пуск» пункт «Виконати»), після чого ввести у вікні наступний рядок і натиснути Ентер:

    notepad %windir%\system32\drivers\etc\hosts

    Вибираємо хостинг і доменВибираємо хостинг і домен

    Але не суть важливо. Ми з вами все ж знайшли, де знаходиться цей секретний (для Windows 7 і vista) файл, і повинні його уважно оглянути на предмет можливих зловживань. Якщо первинний огляд пацієнта ніяких патологій не виявив, то подивіться на область прокручування сторінки в Блокноті.

    Іноді свої записи вірус вносить після декількох сотень порожніх рядків, знижуючи тим самим ризик їх виявлення вами. Якщо смуги прокрутки немає, то все чудово, а якщо є — то скористайтесь їй і приведіть свій Hosts до того увазі, що у нього повинен бути з народження, тобто достатньо буде наявності в ньому всього лише двох рядків (коментарі нікому не потрібні):

    127.0.0.1 localhost
    ::1 localhost

    Ну, якщо підміну адрес в цьому файлі уявити досить просто, наприклад, це може виглядати так:

    127.0.0.1 localhost
    ::1 localhost
    77.88.21.3

    То як же в такому разі здійснюється блокування певних сайтів через Хостс? Ну, просто домену, який потрібно заблокувати, ставлять у відповідність приватний IP адреса 127.0.0.1, наприклад, так:

    127.0.0.1 localhost
    ::1 localhost
    127.0.0.1 vk.com
    127.0.0.1 odnoklassniki.ru

    Розумниця браузер знаходить відповідність і намагається отримати потрібний документ (вебсторінку) з вашого ж комп’ютера, що йому, звичайно, не вдається і про що він вам негайно повідомить. До речі, це хороший спосіб заблокувати доступ вашим чадам до сайтів, які ви вважаєте їм не варто відвідувати. Звичайно ж, потрібно ще буде список таких сайтів створити або десь взяти, але при бажанні цілком можна спробувати.

    Як я вже згадував, у стародавні часи, коли інтернет у більшості користувачів ще був повільним, для прискорення відкриття сайтів прописували їх Айпишники в Hosts. Інша справа, що ці самі ресурси періодично змінювали хостинг і разом з ним і IP-адреси. А користувач, забувши про те, що він створив півроку тому для прискорення інтернету, марно намагається зрозуміти, чому його улюблені ресурси йому не доступні.

    Як використовувати Хостс при перенесенні сайту на новий хостинг?

    Ну, і наостанок я хотів би розповісти про те, як за допомогою внесення змін в файл Хостс можна працювати з сайтом, переїхали на новий хостинг ще до того моменту, як на всіх DNS серверах пропишеться нова запис (ставить у відповідність вашого домену новий Ip адресу). Спосіб дуже простий, але ефективний.

    Отже, ви міняєте хостера. Природно, що змінюється і IP адреса вашого сайту. Як дізнаються про це в інтернеті? Все правильно, за допомогою мережі Днс серверів. До речі, перший і найважливіший крок зробите ви самі, зайшовши в панель управління реєстратора і прописавши там адреси NS серверів вашого нового хостера.

    Саме з них нова DNS пошириться по всьому інтернету. Але процес цей тривалий і при найгіршому сценарії розвитку подій може зайняти кілька діб. На цей час сайт повинен бути доступний і на новому і на старому хостингу, щоб користувачі з усього світу не були б позбавлені можливості його побачити.

    Однак, вам самим адже буде цікаво дізнатися, а як, власне, ваш ресурс відчуває себе у нового хостера? Перевірити роботу всіх плагінів і інших речей. Невже доведеться чекати від кількох годин до двох діб? Адже це не виноситься.

    По-перше, можна буде спробувати скинути DNS-кеш на вашому власне комп’ютері, бо він може заважати вам побачити свій ресурс на новому хостингу, якщо зовнішні ДНС сервера вже отримали нову запис. Як це зробити? Знову ж таки, все дуже просто. Натискаєте на клавіатурі клавіші Win+R (або вибираєте з меню кнопки «Пуск» пункт «Виконати»), після чого вводьте у вікні:

    cmd

    Відкриється дуже страшне вікно під назву командний рядок, куди вам потрібно буде вставити цю команду:

    ipconfig /flushdns

    Звичайні кнопки вставки у вікні командного рядка не працюють, тому просто клацніть правою кнопкою миші і виберіть пункт «Вставити».

    Вибираємо хостинг і доменВибираємо хостинг і домен

    Після цього тисніть на «Ентер», DNS-кеш очиститься на вашому компі і можна пробувати відкрити ваш сайт знову. До речі, кеш ДНС може мати місце бути і в самому браузері, так що очистіть його, або оновіть сторінку, утримуючи затиснутою кнопку «Шифт» на клавіатурі.

    До речі, якщо цікаво, то можна подивитися вміст DNS-кеша, ввівши в командний рядок наступну команду:

    ipconfig /displaydns

    Раніше відкривається сайт на старому хостингу? Не біда. Знаходимо описаних трохи вище способом файл Hosts і додає в нього всього лише один рядок:

    109.120.169.66

    Де 109.120.169.66 — це буде IP адреса вашого нового хостингу, а далі буде слідувати доменне ім’я вашого сайту. Всі. Поки весь світ милується вашим ресурсом на старому хостингу, ви маєте можливість виправити можливі косяки на вже перенесений на новий хостинг движку. Штука чудова і я їй завжди користуюся.

    Удачі вам! До зустрічей на сторінках блогу