{"id":54,"date":"2023-12-26T21:40:55","date_gmt":"2023-12-26T21:40:55","guid":{"rendered":"https:\/\/mikulalajos.hu\/?p=54"},"modified":"2023-12-27T07:23:07","modified_gmt":"2023-12-27T07:23:07","slug":"csak-fejtagitas-miert-es-hogyan-hasznaljunk-cloudflare-t","status":"publish","type":"post","link":"https:\/\/mikulalajos.hu\/index.php\/2023\/12\/26\/csak-fejtagitas-miert-es-hogyan-hasznaljunk-cloudflare-t\/","title":{"rendered":"(csak fejt\u00e1g\u00edt\u00e1s) Mi\u00e9rt \u00e9s hogyan haszn\u00e1ljunk Cloudflare-t?"},"content":{"rendered":"<p style=\"text-align: left;\">Ha valaki weboldalak \u00fczemeltet\u00e9s\u00e9vel \u00e9s v\u00e9delm\u00e9vel foglalkozik, az val\u00f3sz\u00edn\u0171leg tal\u00e1lkozott m\u00e1r az amerikai Cloudflare Inc. szolg\u00e1ltat\u00e1saival. A legt\u00f6bben csak Cloudflare DNS-k\u00e9nt hivatkoznak a term\u00e9kre, de a val\u00f3s\u00e1gban ez sokkal komplexebb enn\u00e9l.<\/p>\n<p><!--more--><\/p>\n<h2>DNS, de m\u00e9gsem&#8230;<\/h2>\n<p>A DNS (vagy Domain Name System) a weboldalak c\u00edm\u00e9t sz\u00e1m\u00edt\u00f3g\u00e9pek \u00e1ltal egyszer\u0171bben leford\u00edthat\u00f3 IP-c\u00edmekk\u00e9 alak\u00edtja, ezzel megk\u00f6nny\u00edtve a felhaszn\u00e1l\u00f3k dolg\u00e1t (nem kell mindig megjegyezni a kedvenc oldalaink IP-c\u00edm\u00e9t).<\/p>\n<p>A Cloudflare b\u00e1r biztos\u00edt csak ilyen szolg\u00e1ltat\u00e1st is (ez a grey-cloud megjel\u00f6l\u00e9s\u0171 be\u00e1ll\u00edt\u00e1s), de a legt\u00f6bben a proxy szolg\u00e1ltat\u00e1ssal egybek\u00f6t\u00f6tt DNS-t haszn\u00e1lj\u00e1k (orange-cloud). Ilyenkor az \u00f6sszes h\u00e1l\u00f3zati forgalom a Cloudflare proxy rendszer\u00e9n kereszt\u00fcl \u00e9ri az oldalunkat, ez\u00e1ltal biztos\u00edtott a v\u00e9delem (pl. t\u00falterhel\u00e9ses t\u00e1mad\u00e1sok, botok, SQL-Injection ellen).<\/p>\n<h2>\u00c1ll\u00edtsuk be!<\/h2>\n<p>A be\u00e1ll\u00edt\u00e1s nem olyan bonyolult, de egy kicsit az\u00e9rt \u00e9rdemes ismerni a DNS m\u0171k\u00f6d\u00e9s\u00e9t, miel\u0151tt nekil\u00e1tunk, k\u00fcl\u00f6nben hossz\u00fa le\u00e1ll\u00e1sokra sz\u00e1m\u00edthatunk. Ez az oldal is v\u00e9dve van, \u00edgy ezen a p\u00e9ld\u00e1n kereszt\u00fcl mutatom be a folyamatot.<\/p>\n<p>El\u0151sz\u00f6r is kell egy webc\u00edm, illetve hozz\u00e1f\u00e9r\u00e9s a DNS-rekordokhoz (a rekord egy valamilyen, webc\u00edmre vonatkoz\u00f3 inform\u00e1ci\u00f3t tartalmaz\u00f3 bejegyz\u00e9s, pl. IP, levelez\u0151szerver c\u00edme, aldomain alternat\u00edv neve; CNAME, stb.).<\/p>\n<p>Ezut\u00e1n meg kell v\u00e1ltoztatni a domainhez tartoz\u00f3 NS-rekordokat. Ezek a felold\u00e1st v\u00e9gz\u0151 n\u00e9vszervereket adj\u00e1k meg (itt tal\u00e1lhat\u00f3 a domainhez tartoz\u00f3 inform\u00e1ci\u00f3). A Cloudflare minden fi\u00f3khoz k\u00e9t n\u00e9vszervert t\u00e1rs\u00edt, ehhez az oldalhoz is:<\/p>\n<table class=\"c_kj c_aiu c_k c_c c_kf c_ac c_tu\" style=\"height: 82px;\" role=\"table\" width=\"624\">\n<tbody class=\"\">\n<tr class=\"c_aby c_l c_aca c_acb\">\n<td class=\"c_jq c_ph c_nc c_acc c_acd c_ace c_acf c_acg c_ach c_zg c_md c_me c_br c_bn c_bq c_qw c_aci c_wo c_ajq\">NS<\/td>\n<td class=\"c_jq c_ph c_nc c_acc c_acd c_ace c_acf c_acg c_ach c_md c_me c_br c_bn c_bq c_qw c_aci\">mitch.ns.cloudflare.com<\/td>\n<\/tr>\n<tr class=\"c_aby c_l c_aca c_acb\">\n<td class=\"c_jq c_ph c_nc c_acc c_acd c_ace c_acf c_acg c_ach c_zg c_md c_me c_br c_bn c_bq c_qw c_aci c_wo c_ajq\">NS<\/td>\n<td class=\"c_jq c_ph c_nc c_acc c_acd c_ace c_acf c_acg c_ach c_md c_me c_br c_bn c_bq c_qw c_aci\">zelda.ns.cloudflare.com<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Ha ez megvan, egy e-mail \u00e9rtes\u00edt minket amint a domain el\u00e9rhet\u0151 a Cloudflare rendszer\u00e9ben. Ha siet\u0151s a dolgunk, \u00e9rdemes k\u00f6vetni a DNS propag\u00e1ci\u00f3j\u00e1t is (els\u0151re sz\u00f3rakoztat\u00f3 is lehet ak\u00e1r), ezt p\u00e9ld\u00e1ul <a href=\"https:\/\/www.whatsmydns.net\/#NS\/mikulalajos.hu\">itt<\/a> tehetj\u00fck meg.<\/p>\n<h2>Gy\u00fclekeznek a felh\u0151k&#8230;<\/h2>\n<p>Ha ez megvan, akkor a Cloudflare \u00e1ltal\u00e1ban \u00e1tveszi az \u00f6sszes DNS-rekordot a r\u00e9gi n\u00e9vszerverekt\u0151l, ez hasznos lehet, \u00e1m komplexebb konfigur\u00e1ci\u00f3k eset\u00e9n ak\u00e1r probl\u00e9m\u00e1s is, mivel bizonyos dolgokr\u00f3l le kell mondanunk, ha Cloudflare haszn\u00e1lunk (pl. t\u00f6bbsz\u00f6r\u00f6s aldom\u00e9nek, pl. <em>aldo.main.site.hu<\/em>).<\/p>\n<p>\u00c9rdemes el\u0151sz\u00f6r csak DNS felold\u00e1sra \u00e1ll\u00edtani a rekordokat, mivel ilyenkor a felhaszn\u00e1l\u00f3k nem fogj\u00e1k \u00e9rz\u00e9kelni a v\u00e1ltoz\u00e1st (minden menni fog ugyan\u00fagy). Ha k\u00e9szen vagyunk a v\u00e1lt\u00e1sra, akkor mehet a narancs felh\u0151 is.<\/p>\n<h2>Narancs felh\u0151 bevezet\u00e9se<\/h2>\n<p>A narancs felh\u0151n\u00e9l sok dolognak kell egy\u00fctt \u00e1llnia, hogy megb\u00edzhat\u00f3an m\u0171k\u00f6dj\u00f6n az oldal:<\/p>\n<ol>\n<li>El kell d\u00f6nteni, hogy egy\u00e1ltal\u00e1n lehets\u00e9ges-e az \u00e1t\u00e1ll\u00e1s (bizonyos szolg\u00e1ltat\u00e1sok nem proxyzhat\u00f3ak olyan egyszer\u0171en, pl. Websocket vagy b\u00e1rmilyen streaming, SIP)<\/li>\n<li>Be kell \u00e1ll\u00edtani az SSL be\u00e1ll\u00edt\u00e1st (<em>ki, rugalmas, full vagy full k\u00e9nyszer\u00edt\u00e9ssel<\/em>), ha nem akarunk sz\u00f3rakozni az \u00e1ll\u00edtgat\u00e1ssal, akkor \u00e9rdemes a &#8220;<strong>Full (strict)<\/strong>&#8221; avagy full k\u00e9nyszer\u00edt\u00e9ssel be\u00e1ll\u00edt\u00e1st v\u00e1lasztani (\u00edgy egyszer\u0171bb lesz k\u00e9s\u0151bb a munka, mert minden forgalom titkos\u00edtva lesz).<\/li>\n<li>Kell egy Origin Certificate (Cloudflare \u00e1ltal kibocs\u00e1tott, csak sz\u00e1mukra \u00e9rv\u00e9nyes tanus\u00edtv\u00e1ny) vagy Self Signed Certificate (\u00f6nal\u00e1\u00edrt tanus\u00edtv\u00e1ny) (Ha full vagy full strict be\u00e1ll\u00edt\u00e1st haszn\u00e1lunk).<\/li>\n<\/ol>\n<figure id=\"attachment_55\" aria-describedby=\"caption-attachment-55\" style=\"width: 300px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-55\" src=\"https:\/\/mikulalajos.hu\/wp-content\/uploads\/2023\/12\/cf-300x93.png\" alt=\"\" width=\"300\" height=\"93\" srcset=\"https:\/\/mikulalajos.hu\/wp-content\/uploads\/2023\/12\/cf-300x93.png 300w, https:\/\/mikulalajos.hu\/wp-content\/uploads\/2023\/12\/cf-1024x316.png 1024w, https:\/\/mikulalajos.hu\/wp-content\/uploads\/2023\/12\/cf-768x237.png 768w, https:\/\/mikulalajos.hu\/wp-content\/uploads\/2023\/12\/cf-960x296.png 960w, https:\/\/mikulalajos.hu\/wp-content\/uploads\/2023\/12\/cf.png 1284w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><figcaption id=\"caption-attachment-55\" class=\"wp-caption-text\">DNS rekordok ehhez az oldalhoz (IP-c\u00edmek kis\u00f6t\u00e9t\u00edtve, b\u00e1r DDNS-t haszn\u00e1lok ehhez az oldalhoz, de a szolg\u00e1ltat\u00f3t meg lehet \u00e1llap\u00edtani bel\u0151le)<\/figcaption><\/figure>\n<h2>Megint tan\u00fa(s\u00edtv\u00e1ny)<\/h2>\n<p>Ha ez mind megvan, m\u00e1r csak p\u00e1r l\u00e9p\u00e9s kell a teljes biztons\u00e1g el\u00e9r\u00e9s\u00e9hez. El\u0151sz\u00f6r is be kell szerezni egy Origin Certificate-t (tov\u00e1bbiakban csak &#8220;cert&#8221;). Ezt az <strong>SSL\/TLS &gt; Origin Server<\/strong> men\u00fcb\u0151l tudjuk el\u00e9rni.<\/p>\n<figure id=\"attachment_56\" aria-describedby=\"caption-attachment-56\" style=\"width: 300px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-56\" src=\"https:\/\/mikulalajos.hu\/wp-content\/uploads\/2023\/12\/cf2-300x90.png\" alt=\"\" width=\"300\" height=\"90\" srcset=\"https:\/\/mikulalajos.hu\/wp-content\/uploads\/2023\/12\/cf2-300x90.png 300w, https:\/\/mikulalajos.hu\/wp-content\/uploads\/2023\/12\/cf2-1024x307.png 1024w, https:\/\/mikulalajos.hu\/wp-content\/uploads\/2023\/12\/cf2-768x230.png 768w, https:\/\/mikulalajos.hu\/wp-content\/uploads\/2023\/12\/cf2-960x288.png 960w, https:\/\/mikulalajos.hu\/wp-content\/uploads\/2023\/12\/cf2.png 1040w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><figcaption id=\"caption-attachment-56\" class=\"wp-caption-text\">A tan\u00fas\u00edtv\u00e1ny 15 \u00e9vre (az sok) sz\u00f3l&#8230; (ekkor m\u00e1r nem is 32 bites UNIX id\u0151b\u00e9lyeget fogunk haszn\u00e1lni)<\/figcaption><\/figure>\n<p>&nbsp;<\/p>\n<p>Ha ez megvan, akkor telep\u00edts\u00fck a tan\u00fas\u00edtv\u00e1nyt a webszerver\u00fcnkre. Ebben a cikkben az Apache2 webszerver eset\u00e9t fogom bemutatni. A telep\u00edt\u00e9s el\u0151tt t\u00f6lts\u00fck be a <em>mod_ssl<\/em> modult (ha m\u00e9g nincsen) \u00e9s nyissunk egy \u00faj f\u00e1jlt, ha nem vagyunk biztosak a dolgunkban.<\/p>\n<p>A konfigur\u00e1ci\u00f3s f\u00e1jl valahogy \u00edgy n\u00e9z ki a WordPress eset\u00e9n:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"apache\" data-enlighter-theme=\"monokai\">&lt;IfModule mod_ssl.c&gt;\r\n&lt;VirtualHost *:443&gt;\r\nServerName mikulalajos.hu\r\nDocumentRoot \"\/var\/www\/wordpress\"\r\n    SSLEngine on\r\n    SSLCertificateFile     \/etc\/cloudflare\/mikulalajos.pem\r\n    SSLCertificateKeyFile \/etc\/cloudflare\/mikulalajos.pem.key\r\n&lt;Directory \/var\/www\/wordpress&gt;\r\n    Options FollowSymLinks\r\n    AllowOverride Limit Options FileInfo\r\n    DirectoryIndex index.php\r\n    Order allow,deny\r\n    Allow from all\r\n&lt;\/Directory&gt;\r\n&lt;Directory \/var\/www\/wordpress\/wp-content&gt;\r\n    Options FollowSymLinks\r\n    Order allow,deny\r\n    Allow from all\r\n&lt;\/Directory&gt;\r\n&lt;\/VirtualHost&gt;\r\n&lt;\/IfModule&gt;<\/pre>\n<p>Itt a k\u00f6vetkez\u0151 sorok v\u00e1gnak a cikk t\u00e9m\u00e1j\u00e1ba:<\/p>\n<ul>\n<li>2-3 (a HTTPS \u00e1ltal haszn\u00e1lt porton hallgat\u00f3zik a VirtualHost), megmondom a szerver c\u00edm\u00e9t<\/li>\n<li>5-7 (itt t\u00f6rt\u00e9nik a csoda, itt adom az am\u00fagy mindenkinek \u00e9rv\u00e9nytelen origin certet, de a proxy \u00edgy tud HTTPS-t haszn\u00e1lni)<\/li>\n<\/ul>\n<p>Ha ez megvan, akkor t\u00f6lts\u00fck \u00fajra a konfigur\u00e1ci\u00f3nkat, d\u0151lj\u00fcnk h\u00e1tra \u00e9s sz\u00fcrcs\u00f6lj\u00fcnk egy kis z\u00f6ldte\u00e1t!<\/p>\n<h2>Az\u00e9rt m\u00e9g nem&#8230;<\/h2>\n<p>B\u00e1r ez \u00edgy m\u00e1r j\u00f3 lenne, \u00e9rdemes m\u00e9g be\u00e1ll\u00edtani egy p\u00e1r dolgot, hogy maxim\u00e1lis legyen a v\u00e9delem:<\/p>\n<ol>\n<li>Kapcsoljuk be az automatikus HTTPS-\u00e1tir\u00e1ny\u00edt\u00e1st (ha valaki m\u00e9gis HTTP-t pr\u00f3b\u00e1lna haszn\u00e1lni)<\/li>\n<li>Kapcsoljuk be a cachinget (bloghoz ide\u00e1lis)<\/li>\n<li>\u00c1ll\u00edtsuk be a TLS 1.3 kik\u00e9nyszer\u00edt\u00e9s\u00e9t<\/li>\n<li>Adjunk hozz\u00e1 tov\u00e1bbi v\u00e9delmi szab\u00e1lyokat a WAF men\u00fcpontban (pl. f\u00f6ldrajzi helyre korl\u00e1tozzuk az aloldalak el\u00e9r\u00e9s\u00e9t, itt pl. a wordpress login)<\/li>\n<li>\u00c1ll\u00edtsunk be DDoS \u00e9rtes\u00edt\u00e9st<br \/>\n<em>stb.<\/em><\/li>\n<\/ol>\n<p>\u00cdgy m\u00e1r v\u00e9dve vagyunk egy csom\u00f3 t\u00e1mad\u00e1s ellen \u00e9s \u00e9lvezhetj\u00fck az analitikai adatokat is, amiket a Cloudflare biztos\u00edt nek\u00fcnk (l\u00e1togat\u00f3k, f\u00f6ldrajzi helyzet\u00fck).<\/p>\n<h1>K\u00f6sz\u00f6n\u00f6m a figyelmet!<\/h1>\n","protected":false},"excerpt":{"rendered":"<p>Ha valaki weboldalak \u00fczemeltet\u00e9s\u00e9vel \u00e9s v\u00e9delm\u00e9vel foglalkozik, az val\u00f3sz\u00edn\u0171leg tal\u00e1lkozott m\u00e1r az amerikai Cloudflare Inc. szolg\u00e1ltat\u00e1saival. A legt\u00f6bben csak Cloudflare DNS-k\u00e9nt hivatkoznak a term\u00e9kre, de a val\u00f3s\u00e1gban ez sokkal komplexebb enn\u00e9l.<\/p>\n","protected":false},"author":1,"featured_media":60,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[],"class_list":["post-54","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-fejtagitas"],"_links":{"self":[{"href":"https:\/\/mikulalajos.hu\/index.php\/wp-json\/wp\/v2\/posts\/54","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mikulalajos.hu\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mikulalajos.hu\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mikulalajos.hu\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mikulalajos.hu\/index.php\/wp-json\/wp\/v2\/comments?post=54"}],"version-history":[{"count":9,"href":"https:\/\/mikulalajos.hu\/index.php\/wp-json\/wp\/v2\/posts\/54\/revisions"}],"predecessor-version":[{"id":67,"href":"https:\/\/mikulalajos.hu\/index.php\/wp-json\/wp\/v2\/posts\/54\/revisions\/67"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/mikulalajos.hu\/index.php\/wp-json\/wp\/v2\/media\/60"}],"wp:attachment":[{"href":"https:\/\/mikulalajos.hu\/index.php\/wp-json\/wp\/v2\/media?parent=54"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mikulalajos.hu\/index.php\/wp-json\/wp\/v2\/categories?post=54"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mikulalajos.hu\/index.php\/wp-json\/wp\/v2\/tags?post=54"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}