Модул 4 · 4.2
TXT записи и верификация на домейн
Модул 4: Записи за имейл · Време за четене: 7 минути
Цел на урока: След този урок ще можете да създадете TXT запис, за да верифицирате домейна си пред дадена услуга, и ще знаете кога няколко TXT записа могат да съществуват едновременно и кога не.
Основни понятия: TXT запис, код за верификация, име с долна черта (underscore), кавички, текстови части от 255 символа, SPF/DMARC като специални TXT записи
Бележка във Вашия DNS
TXT записът е най-простият запис, който съществува: парче текст, свързано с дадено име. Самият DNS не прави нищо с него. Той е предназначен за други програми, които идват да прочетат този текст.
Затова TXT е любимият запис на услугите, които искат да проверят дали даден домейн наистина е Ваш. Google Search Console, Microsoft 365, Google Workspace, Facebook, Apple, GitHub, услуги за бюлетини и платформи за онлайн магазини работят по един и същи начин:
- Услугата Ви дава код, например
google-site-verification=Ab12Cd34...илиMS=ms12345678. - Вие поставяте този код като TXT запис в DNS на Вашия домейн.
- Услугата изпраща заявка за TXT записа на Вашия домейн. Ако кодът е там, тя знае: който е могъл да постави този код, управлява този домейн.
Само този, който може да променя DNS на даден домейн, може да постави такъв запис. Затова това е надеждна проверка.
Как изглежда един TXT запис?
example.com. 3600 IN TXT "google-site-verification=Ab12Cd34Ef56"
example.com. 3600 IN TXT "MS=ms12345678"
example.com. 3600 IN TXT "v=spf1 mx include:spf.service.example ~all"Няколко неща, които трябва да знаете:
- Кавички. В зоновия файл текстът стои между кавички. В повечето панели не е нужно да ги въвеждате сами: панелът ги добавя автоматично. Ако все пак ги въведете, проверете след запазването дали няма двойни кавички.
- Части от по 255 символа. Една текстова част в TXT запис може да бъде най-много 255 символа дълга (RFC 1035). По-дълги текстове, като DKIM ключ, се разделят на няколко части в рамките на един и същ запис:
"първа част" "втора част". Програмите, които четат TXT, отново слепват тези части. Добрите панели режат автоматично; при някои трябва да го направите сами. - Главните букви и интервалите имат значение. Копирайте кода точно, за предпочитане с копиране и поставяне. Един интервал в края или липсващ знак е достатъчен, за да се провали верификацията.
На кое име?
Услугата винаги посочва на кое име трябва да стои записът:
- На самия домейн. Услугата казва тогава "@", "root", "host празен" или посочва само
example.com. В повечето панели тогава въвеждате@или оставяте полето празно. - На собствено име. Някои услуги искат отделно име, което започва с долна черта (underscore), като
_github-challenge-voorbeeldbedrijfили_acme-challenge. Долната черта показва, че не е обикновено име на хост (не можете да отворите уебсайт на него). Въведете в панела си само тази първа част; Вашето домейн име вече е добавено след нея.
Често срещана грешка: въвеждане на пълното име в панел, който сам добавя домейн името след него. Така се получава _github-challenge-voorbeeldbedrijf.example.com.example.com, и услугата не намира нищо. Проверете след запазването какво пълно име показва панелът.
Няколко TXT записа: позволено ли е?
Да. На едно име могат да стоят колкото искате TXT записа. Верификация за Google и такава за Microsoft не си пречат взаимно. Всяка услуга търси сред всички TXT записи своя собствен код.
Има две изключения и те са важни:
- SPF (започва с
v=spf1): максимум един на име. Два SPF записа правят Вашия SPF невалиден (урок 4.3). - DMARC (на
_dmarc, започва сv=DMARC1): максимум един. При два записа получателят се държи все едно нямате DMARC (урок 4.5).
Ако дадена услуга Ви помоли "добавете този SPF запис", не създавайте втори SPF запис, а допълнете съществуващия.
Може ли верификацията да се премахне отново?
Това зависи от услугата. Много услуги (като Google Search Console и Microsoft 365) проверяват отново по-късно. Ако премахнете записа, домейнът Ви може след известно време отново да се счита за "невериф��циран". Затова го оставете, освен ако услугата каже, че може да бъде премахнат. Стар верификационен запис на услуга, която вече не използвате, може спокойно да бъде изчистен.
Не работи веднага
Току-що създадохте записа и услугата казва "не е намерен"? Това обикновено се дължи на кеша (модул 6). Ако услугата вече е запитвала Вашия домейн преди записът да съществува, тя помни известно време, че там не е имало нищо. Изчакайте четвърт час и опитайте отново. Междувременно проверете сами с онлайн инструмент за DNS заявки дали записът е наистина там (урок 8.2 и 8.3).
На практика: ето как изглежда в панел
В този пример използваме Моят WebOké. Отидете на домейна, раздел DNS, и натиснете Добавете запис. Изберете тип TXT, въведете в поле Naam @ (или името, което услугата посочва) и поставете кода в полето за стойност. Не е нужно да въвеждате кавички. В DirectAdmin това работи по същия начин в DNS Beheer; там оставяте TXT Record Type на Gewoon.
В други панели полетата понякога се казват Host, Hostnaam или Name и Value, Content или Data, но принципът е същият.
Обобщение
- TXT запис е текст, свързан с дадено име. Услугите го използват, за да проверят дали даден домейн е Ваш.
- Копирайте кода точно и го поставете на името, посочено от услугата (често
@, понякога име с долна черта). - Няколко TXT записа на едно име са позволени, с изключение на SPF и DMARC: от тях максимум по един.
- Ако верификацията не успее веднага, изчакайте малко: отговорът може все още да е в кеш.
Тест
Задача
Задача Z4.2: Намиране на верификационен код. Потърсете TXT записите на wikipedia.org. Там между другото ще откриете верификационен код на Google. Поставете пълния верификационен текст, който започва с google-site-verification=.
Задача O4.2: Самостоятелно настройване във Вашата тренировъчна зона. В тренировъчната зона използвате фалшива услуга; при истинския си домейн разбира се ще използвате истинския код, който услугата Ви дава. Към задачата получавате персонален код (той изглежда така: <Вашият код>oefen-<код>-<букви>). Създайте в тренировъчната си зона два TXT записа:<code>.dnspractice.eu
- на името на самата зона (
@):dnscursus-verificatie=<Вашият код> - на името
_cursus-challenge: само<Вашият код>
Задача O4.2
Тази задача изпълнявате във Вашата собствена тренировъчна зона: истинска DNS зона на DNS сървърите на WebOké, само за Вас. Впишете се с Вашия имейл адрес. Ще получите линк за вход по имейл и след това ще се върнете на този урок. Използваме Вашия адрес само за курса.
Допълнително четене
Стъпките в тези статии важат за панелите на WebOké; в други панели принципът е подобен.
- Ръководство за DirectAdmin 5.6: TXT записи за верификация (Google, Microsoft и други)
- Управление на DNS записи в Моят WebOké (с примери за CNAME, TXT и външни услуги)
- Ръководство на WebOké 5.4: Управление на DNS: добавяне, промяна и изтриване на записи
- RFC 1035, параграф 3.3.14 (TXT), RFC 7208, параграф 3.3 (дълги SPF текстове в няколко части)
