Cloudflare — домен DNS'ини бепул бошқариш, саҳифаларни кешлаш ва ҳужумлардан ҳимояланиш имконини берадиган хизмат. Кўп сайт эгалари унга «сайт тезлашади ва ҳимояланади» деган мақсад билан ўтади ва кўпинча ҳақиқатан ҳам фойда кўради. Аммо доменни Cloudflare'га улаш шунчаки битта тугмани босиш эмас: сиз доменингизнинг бутун DNS бошқарувини бошқа жойга кўчирасиз. Агар бу жараён шошилиб бажарилса, почта тўхташи, сайт чексиз йўналтириш хатосига тушиши ёки умуман очилмай қолиши мумкин. Қуйида уланиш қандай ишлашини, нималар ютилишини ва қайси хавфларга олдиндан тайёрланиш кераклигини батафсил кўриб чиқамиз.
Уланиш аслида нимани ўзгартиради
Доменни Cloudflare'га улаганда сиз регистраторда доменнинг ном серверларини Cloudflare берган иккита серверга алмаштирасиз. Шу дақиқадан бошлаб доменингиз ҳақидаги барча DNS саволларига Cloudflare жавоб беради. Эски DNS панелидаги ёзувлар энди ҳеч қандай таъсирга эга бўлмайди, ҳатто улар у ерда турган бўлса ҳам. Бу энг муҳим тушунча: уланишдан кейин A, MX, TXT ва бошқа барча ёзувларни фақат Cloudflare панелида таҳрир қилиш керак бўлади.
Сайтни қўшганда Cloudflare мавжуд ёзувларингизни автоматик сканерлаб, уларни янги зонага кўчиришни таклиф қилади. Бу қулай, лекин сканер фақат тахмин қила оладиган номларни топади. Одатий www, mail ва асосий домен ёзувлари кўпинча топилади, аммо DKIM калитлари каби махсус номдаги TXT ёзувлар ёки кам учрайдиган субдоменлар тушиб қолиши мумкин.
Нималар ютилади
Энг катта афзаллик — тез ва ишончли DNS. Cloudflare ном серверлари дунёнинг кўп нуқталарида жойлашган ва ёзув ўзгаришлари бир неча сонияда қўлланилади. Иккинчи афзаллик — прокси режими: сариқ булут ёқилган ёзувлар учун ташриф буюрувчилар тўғридан-тўғри серверингизга эмас, Cloudflare'га уланади. Бу статик файлларни кешлаш, DDoS ҳужумларини юмшатиш ва сервер IP манзилини қисман яшириш имконини беради.
Учинчи афзаллик — қўшимча воситалар: хавфсизлик қоидалари, ботларни фильтрлаш, йўналтириш қоидалари ва трафик статистикаси. Уларнинг кўпчилиги бепул тарифда ҳам мавжуд, лекин аниқ имкониятлар ва чекловлар вақт ўтиши билан ўзгаради, шунинг учун уларни Cloudflare'нинг расмий ҳужжатларида текшириб туриш керак.
1-хавф: ёзувларнинг бир қисми кўчмай қолади
Энг кўп учрайдиган муаммо — автоматик сканерда тушиб қолган ёзувлар. Ном серверлари алмаштирилган заҳоти эски зона ишлашдан тўхтайди ва унда бўлган, аммо Cloudflare'га кўчмаган ҳар бир ёзув йўқолади. Кўпинча булар SPF, DKIM ва DMARC каби почта ёзувлари бўлади, натижада хатлар спамга туша бошлайди ёки рад этилади. Шунинг учун NS'ни алмаштиришдан олдин эски зонадаги ҳар бир ёзувни Cloudflare панелидаги рўйхат билан битталаб солиштириб чиқинг.
# eski DNS serveridan muhim yozuvlarni so'rash
dig @ns1.eski-dns.uz misol-markaz.uz MX +short
dig @ns1.eski-dns.uz misol-markaz.uz TXT +short
dig @ns1.eski-dns.uz default._domainkey.misol-markaz.uz TXT +short
dig @ns1.eski-dns.uz _dmarc.misol-markaz.uz TXT +short
2-хавф: DNSSEC ўчирилмаган бўлса сайт йўқолади
Агар доменингизда DNSSEC ёқилган бўлса, юқори зонада эски серверларнинг калитига мос DS ёзуви туради. Cloudflare ном серверлари бошқа калит билан имзолайди, шунинг учун NS алмаштирилгач, валидация қилувчи резолверлар жавобни рад этиб, SERVFAIL қайтаради. Тўғри тартиб қуйидагича: аввал регистраторда DS ёзувини олиб ташланг, унинг кеш муддати ўтишини кутинг, кейин NS'ни алмаштиринг. DNSSEC керак бўлса, уланиш тугагач уни Cloudflare панелида ёқиб, берилган янги DS ёзувини регистраторга киритасиз.
3-хавф: SSL режими нотўғри танланса, чексиз йўналтириш
Прокси ёқилганда икки хил уланиш пайдо бўлади: ташриф буюрувчи билан Cloudflare ўртасида ва Cloudflare билан серверингиз ўртасида. «Flexible» режимида иккинчи уланиш шифрланмаган HTTP орқали кетади. Агар серверингиз ҳар бир HTTP сўровни HTTPS'га йўналтирса, Cloudflare яна HTTP билан мурожаат қилади ва браузер «ERR_TOO_MANY_REDIRECTS» хатосини кўрсатади. Серверда ҳақиқий сертификат бор бўлса, масалан, Let's Encrypt, «Full (strict)» режимини танлаш ҳам хавфсиз, ҳам тўғри ечим.
4-хавф: сервер IP манзили барибир очиқ қолади
Прокси сервер IP манзилини фақат проксиланган ёзувлар учун яширади. Агар mail ёки ftp субдомени ўша сервернинг ўзига тўғридан-тўғри кўрсатилган бўлса, исталган одам уни dig билан кўриб, Cloudflare'ни четлаб ўтиши мумкин. Почта ёзувларини проксилаб бўлмайди, чунки Cloudflare проксиси почта протоколларини ўтказмайди. Агар ҳимоя асосий мақсад бўлса, сервер созламаларида фақат Cloudflare IP диапазонларидан келадиган веб-трафикни қабул қилиш ҳақида ўйлаб кўринг.
5-хавф: логларда ҳақиқий IP ўрнига Cloudflare манзиллари
Прокси ёқилгач, сервер логларида, статистика плагинларида ва хавфсизлик воситаларида барча ташриф буюрувчилар Cloudflare IP манзилларидан келгандек кўринади. Бу fail2ban каби блоклаш воситаларини чалғитади ва нотўғри одамни блоклашга олиб келиши мумкин. Ҳақиқий IP манзил CF-Connecting-IP сарлавҳасида келади ва уни веб-серверда тиклаш керак. Nginx учун созлама тахминан қуйидагича бўлади, диапазонлар рўйхатини эса Cloudflare'нинг расмий саҳифасидан тўлиқ олиш керак.
# /etc/nginx/conf.d/cloudflare-realip.conf
set_real_ip_from 173.245.48.0/20;
set_real_ip_from 103.21.244.0/22;
# ... Cloudflare ro'yxatidagi qolgan barcha IPv4 va IPv6 diapazonlar
real_ip_header CF-Connecting-IP;
Маҳаллий аудитория учун тезлик масаласи
Ўзбекистондаги хостингда жойлашган сайт маҳаллий фойдаланувчиларга Tas-IX тармоғи орқали жуда тез етиб боради. Прокси ёқилганда трафик Cloudflare тармоғи орқали ўтади ва фойдаланувчи қайси Cloudflare нуқтасига уланиши унинг провайдерига боғлиқ бўлади. Баъзи ҳолатларда бу сайт маҳаллий аудитория учун секинлашишига олиб келиши мумкин. Шунинг учун проксини ёқишдан олдин ва кейин сайтни бир нечта маҳаллий провайдердан очиб, жавоб вақтини солиштириб кўринг. Агар сизга фақат DNS бошқаруви керак бўлса, ёзувларни кулранг булут, яъни «DNS only» режимида қолдириш мумкин.
Мисол: ўқув маркази хавфсиз кўчиши
Тошкентдаги ўқув маркази сайтини ботлар ҳужумидан ҳимоялаш учун Cloudflare'га улашга қарор қилди. Администратор аввал эски зонадаги барча ёзувларни жадвалга ёзиб олди: асосий домен, www, lms субдомени, MX, SPF, DKIM ва DMARC. Cloudflare сканери DKIM ёзувини топмаган эди, у қўлда қўшилди. Доменда DNSSEC йўқлиги текширилди, SSL режими «Full (strict)» қилиб белгиланди, фақат шундан кейин регистратор кабинетида ном серверлари алмаштирилди. Эртаси куни почта, сайт ва ўқув платформаси ҳеч қандай узилишсиз ишлашда давом этди.
Улашдан олдинги қисқа текширув рўйхати
- Эски зонадаги барча ёзувларни, айниқса TXT ва DKIM'ни, рўйхатга олиб, Cloudflare'даги рўйхат билан солиштиринг.
- DNSSEC ёқилган бўлса, DS ёзувини аввал олиб ташланг.
- Серверда ҳақиқий SSL сертификат борлигига ишонч ҳосил қилиб, «Full (strict)» режимини танланг.
- Почта ва бошқа хизмат ёзувларини «DNS only» режимида қолдиринг.
- Cloudflare ҳисобида икки босқичли аутентификацияни ёқинг, чунки энди бутун домен шу ҳисобга боғлиқ.
Ном серверларини алмаштириш регистратор томонида бажарилади. Доменингиз sayt.uz'да бўлса, бу кабинетдаги домен созламаларида қилинади. Cloudflare'дан воз кечмоқчи бўлсангиз ҳам худди шу тартиб тескари йўналишда ишлайди: аввал ёзувларни янги жойга кўчиринг, кейин NS'ни қайтаринг.