{"id":1559,"date":"2019-03-08T21:33:05","date_gmt":"2019-03-08T21:33:05","guid":{"rendered":"https:\/\/codewk.com\/?p=1559"},"modified":"2019-03-15T11:33:43","modified_gmt":"2019-03-15T11:33:43","slug":"linux-sunucularda-php-ini-duzenleme-ve-guvenlik","status":"publish","type":"post","link":"https:\/\/codewk.com\/linux-sunucularda-php-ini-duzenleme-ve-guvenlik\/","title":{"rendered":"Linux Sunucularda PHP.ini D\u00fczenleme Ve G\u00fcvenlik"},"content":{"rendered":"\n

PHP Nedir ?<\/h2>\n\n\n\n

Bir Sunucuda PHP uzant\u0131l\u0131 dosyalar\u0131n \u00e7al\u0131\u015ft\u0131r\u0131labilmesi i\u00e7in gerekli olan yaz\u0131l\u0131mlar\/paketler y\u00fcklendikten sonra projenize ba\u011fl\u0131 olarak baz\u0131 de\u011fi\u015fiklikler yapman\u0131z gerekebilir. \u00d6rne\u011fin web sitenizde bir dosya y\u00fckleme alan\u0131 varsa buradan y\u00fcklenecek dosya boyutunu izinler dosyas\u0131ndan de\u011fi\u015ftirmeniz gerekebilir.<\/p>\n\n\n\n

\u0130\u015fte bu ve bunun gibi \u00f6nemli PHP ayarlar\u0131n bar\u0131nd\u0131r\u0131ld\u0131\u011f\u0131 \u00f6zel ayar dosyas\u0131 php.ini dosyas\u0131d\u0131r.<\/p>\n\n\n\n

PHP.ini Dosyas\u0131 nas\u0131l d\u00fczenlenir ?<\/h3>\n\n\n\n

Bu makalede yer alan php.ini d\u00fczenlemesini t\u00fcm Linux VPS sunucularda ger\u00e7ekle\u015ftirebilirsiniz.<\/strong><\/p>\n\n\n\n

cPanel, Directadmin, Plesk sunucular i\u00e7in php.ini yolu \u015fu \u015fekildedir ;<\/p>\n\n\n\n

 \/usr\/local\/lib\/php.ini <\/code><\/pre>\n\n\n\n

E\u011fer php.ini yolunuzu \u00f6\u011frenmek isterseniz \u015fu komutu ssh \u00fczerinden \u00e7a\u0131l\u015ft\u0131rman\u0131z gerekiyor ; <\/p>\n\n\n\n

$ php -i | grep php.ini<\/code><\/pre>\n\n\n\n
\"\"<\/figure>\n\n\n\n

Yukar\u0131da G\u00f6rd\u00fc\u011f\u00fcn\u00fcz gibi yol ekrana gelecektir. <\/p>\n\n\n\n

\nphp.ini dosyam\u0131z\u0131 nano edit\u00f6r ile a\u00e7al\u0131m ;\n\n<\/p>\n\n\n\n

nano -w \/usr\/local\/lib\/php.ini<\/code><\/pre>\n\n\n\n

PHP.ini i\u00e7erisinde istedi\u011finiz de\u011ferleri bularak sunucu kaynaklar\u0131m\u0131za veya scriptinizin ihtiyac\u0131 oran\u0131nda y\u00fckseltelim ve kaydedelim.<\/p>\n\n\n\n

Ard\u0131ndan apache veya nginx kullan\u0131yorsan\u0131z nginx servisini ayarlar\u0131m\u0131z\u0131n yap\u0131land\u0131r\u0131lmas\u0131 i\u00e7in son olarak ba\u015ftan ba\u015flat\u0131yoruz ; <\/p>\n\n\n\n

service httpd restart & service httpd restart<\/code><\/pre>\n\n\n\n

Tebrikler Art\u0131k Linux Sunucularda PHP.ini d\u00fczenleyebiliyorsunuz. \ud83d\ude42<\/p>\n\n\n\n

Linux Sunucularda G\u00fcvenlik<\/h2>\n\n\n\n

1. Kernel<\/h3>\n\n\n\n

\u0130lk olarak Kernel S\u00fcr\u00fcm\u00fcn\u00fcz\u00fc G\u00fcncel Tutman\u0131z sizi bir \u00e7ok sistem a\u00e7\u0131\u011f\u0131ndan koruyacakt\u0131r. <\/p>\n\n\n\n

Peki Kernel Nas\u0131l G\u00fcncellenir ?<\/h4>\n\n\n\n

\nBu site<\/strong><\/a> \u00fczerinden en g\u00fcncel kernel<\/em> s\u00fcr\u00fcm\u00fcn\u00fc indirin.\n\n<\/p>\n\n\n\n

Ar\u015fivden \u00e7\u0131karma i\u015flemi<\/h4>\n\n\n\n

$ unzx -v linux-4.19.tar.xz<\/code>
ya da
$ xz -d -v linux-4.19.tar.xz<\/code><\/p>\n\n\n\n

Yap\u0131land\u0131rma ayarlarlar\u0131<\/h4>\n\n\n\n

$ cd linux-4.19
 $ cp -v \/boot\/config-$(uname -r) .config<\/code><\/p>\n\n\n\n

\u00d6rnek \u00e7\u0131kt\u0131:<\/p>\n\n\n\n

'\/boot\/config-4.15.0-30-generic' -> '.config'<\/pre>\n\n\n\n

Gerekli geli\u015ftirici ara\u00e7lar\u0131 y\u00fckleme<\/h4>\n\n\n\n

$ sudo apt-get install build-essential libncurses-dev bison flex libssl-dev libelf-dev<\/code><\/p>\n\n\n\n

Kernel\u2019i Yap\u0131land\u0131rma<\/h4>\n\n\n\n

Kaynak kodlar\u0131n oldu\u011fu yerde a\u015fa\u011f\u0131daki komuntlardan gerekli olan\u0131 yaz\u0131yoruz:<\/p>\n\n\n\n

  • $ make menuconfig<\/strong>\u200a\u2014\u200aGrafiksel aray\u00fcz ile yap\u0131land\u0131rma<\/li>
  • $ make xconfig<\/strong>\u200a\u2014\u200aKDE Masa\u00fcst\u00fc ortamlar\u0131 i\u00e7in ideal yap\u0131land\u0131rma<\/li>
  • $ make gconfig<\/strong>\u200a\u2014\u200aGnome Masa\u00fcst\u00fc ortamlar\u0131 i\u00e7in ideal yap\u0131land\u0131rma<\/li><\/ul>\n\n\n\n

    \u00d6rnek komut kullan\u0131m \u015fekli:
    $ make menuconfig<\/code><\/p>\n\n\n\n

    \nE\u011fer make komutu bulunamad\u0131 hatas\u0131 gelirse \u201csudo apt-get install make<\/strong>\u201d ile indirmeniz gerekmekte !\n\n<\/p>\n\n\n\n

    Kernel\u2019i Derleme<\/h4>\n\n\n\n

    S\u0131k\u0131\u015ft\u0131r\u0131lm\u0131\u015f kernel imaj\u0131n\u0131 derlemek i\u00e7in alttaki komutu yaz\u0131n:
    $ make<\/code><\/p>\n\n\n\n

    Derleme h\u0131z\u0131n\u0131 artt\u0131rmak i\u00e7in -j ile birden fazla \u00e7ekirdek kullanabiliriz:
    ## use 4 core\/thread ##
    $ make -j 4
    ## get thread or cpu core count using nproc command ##
    $ make -j $(nproc)<\/code><\/p>\n\n\n\n

    Kernel Mod\u00fcllerini Y\u00fckleme<\/h4>\n\n\n\n

    Alttaki komutla kernel mod\u00fcllerini y\u00fckl\u00fcyoruz:<\/p>\n\n\n\n

    $ sudo make modules_install<\/code><\/p>\n\n\n\n

    Kernel\u2019i Y\u00fckleme<\/h4>\n\n\n\n

    Kernel derleme i\u015flemi de bitti\u011fine g\u00f6re art\u0131k kernel y\u00fcklene bilir:
    $ sudo make install<\/code><\/p>\n\n\n\n

    Bu y\u00fckleme i\u015flemi alttakileri \/boot <\/em>dizinine y\u00fckleyecektir:<\/p>\n\n\n\n

    • initramfs-4.19.img<\/li>
    • System.map-4.19<\/li>
    • vmlinuz-4.19<\/li><\/ul>\n\n\n\n

      Grub Yap\u0131land\u0131rmas\u0131n\u0131 G\u00fcncelleme<\/h3>\n\n\n\n

      Grub2 y\u00fckleyicisinin yap\u0131land\u0131rma ayarlar\u0131n\u0131 yapmam\u0131z gerekmekte.<\/p>\n\n\n\n

      Bu komutlar iste\u011fe ba\u011fl\u0131d\u0131r. make install<\/em> i\u015flemi bu i\u015flemleri zaten yapm\u0131\u015f olacakt\u0131r. Yine de vermekte fayda var:
      $ sudo update-initramfs -c -k 4.19
      $ sudo update-grub<\/code><\/p>\n\n\n\n

      \u0130\u015flemi Sonland\u0131rma<\/h3>\n\n\n\n

      Sistemi yeniden ba\u015flatma komutunu giriyoruz:
      # reboot<\/code>
      Yeniden ba\u015flat\u0131ld\u0131ktan sonra, Linux Kernel Versiyon<\/em>\u2019unu kontrol ediyoruz:
      $ uname -mrs<\/code><\/p>\n\n\n\n

      \u00d6rnek \u00e7\u0131kt\u0131m\u0131z:<\/p>\n\n\n\n

      Linux 4.19 x86_64<\/pre>\n\n\n\n

      2. PHP “Disable Functions”<\/h3>\n\n\n\n

      PHP.ini D\u00fczenlemeyi g\u00f6stermi\u015ftik en ba\u015fta hat\u0131rlars\u0131n\u0131z. \u015eimdi ise PHP.ini i\u00e7erisindeki Disable Function yani “Kapal\u0131 Fonksiyonlar” i\u00e7in baz\u0131 de\u011ferler girece\u011fiz. Bunun sebebi ise Sistemdeki User’lerin eri\u015fimini k\u0131s\u0131tlayarak sald\u0131r\u0131lar\u0131 minimum’a indirmek.<\/p>\n\n\n\n

      \u00d6rnek Kod ;<\/p>\n\n\n\n

      disable_functions=exec,passthru,shell_exec,system,proc_open,popen,curl_exec,curl_multi_exec,parse_ini_file,show_source<\/code><\/pre>\n\n\n\n

      3. SSH Port’unu De\u011fi\u015ftirmek<\/h2>\n\n\n\n

      SSH portunu de\u011fi\u015ftirmek sunucu g\u00fcvenli\u011fi i\u00e7in gerekli bir i\u015flemdir.Kurulum sonras\u0131 varsay\u0131lan olarak gelen 22 portu veya s\u0131k kullan\u0131lan SSH portlar\u0131 s\u00fcrekli bot\u2019lar taraf\u0131ndan taranmaktad\u0131r.Sunucunuzun hacklenmemesi i\u00e7in bilindik ya da varsay\u0131lan portlar\u0131 kullanmaman\u0131z\u0131 tavsiye ederim.<\/p>\n\n\n\n

      nano \/etc\/ssh\/sshd_config<\/code><\/pre>\n\n\n\n

      komutu ile SSH ayarlar\u0131n\u0131n bulundu\u011fu dosyay\u0131 a\u00e7\u0131yoruz. Bu dosya i\u00e7erisinde a\u015fa\u011f\u0131daki \u015fekilde portu belirten bir bilgi olacakt\u0131r.<\/p>\n\n\n\n

      \"sshport\"\/<\/figure>\n\n\n\n

      Buradaki #Port 22<\/strong>\n olan b\u00f6l\u00fcm\u00fc unutmayaca\u011f\u0131n\u0131z bir port ile de\u011fi\u015ftirebilirsiniz.Yeni \ngirece\u011finiz portun s\u00fcrekli kullan\u0131lan ya da bilindik bir port olmamas\u0131na\n dikkat ediniz. De\u011fi\u015fikli\u011fi yapt\u0131ktan sonra CTRL+X ve sonras\u0131nda Y tu\u015f \nkombinasyonu ile dosyay\u0131 kaydedip \u00e7\u0131k\u0131\u015f yapabilirsiniz.Yapm\u0131\u015f oldu\u011funuz \nport ayar\u0131n\u0131n aktif olabilmesi i\u00e7in son olarak sshd servisine restart \natman\u0131z gerekiyor.<\/p>\n\n\n\n

      \/etc\/init.d\/sshd restart<\/code><\/pre>\n\n\n\n

      4.Python ve Perl G\u00fcvenli\u011fi<\/h3>\n\n\n\n

      Son zamanlarda cgi-telnet scriptleri ile sunuculara s\u0131zmaya \u00e7al\u0131\u015fan ve ln ile hedef sitenin i\u00e7erisine m\u00fcdahale eden mudavimlerle dolu sanal ortam maalesefki . bu konuda a\u015fa\u011f\u0131daki i\u015flemleri uygulayarak kal\u0131c\u0131 \u00e7\u00f6z\u00fcm olu\u015fturabilirsiniz. <\/p>\n\n\n\n

      nano \/etc\/httpd\/conf\/httpd.conf<\/code><\/pre>\n\n\n\n

      Komutu ile apache konfigurasyon dosyas\u0131na erisim sa\u011flayarak akabinde a\u015fa\u011f\u0131daki sat\u0131r\u0131 bulun ( kismi olarak bulunabilir addhandler diye aratabilirsiniz ) <\/p>\n\n\n\n

      AddHandler cgi-script .cgi .pl .plx .ppl .perl<\/code><\/pre>\n\n\n\n

      Daha sonra bu komutun ba\u015f\u0131na bir sharp i\u015fareti ekleyerek etkisiz hale getiriniz. <\/p>\n\n\n\n

      \u00d6rn : # AddHandler cgi-script .cgi .pl .plx .ppl .perl<\/code><\/pre>\n\n\n\n

      Daha sonra Perl K\u00fct\u00fcphanesine eri\u015fimi engellemek i\u00e7in ; <\/p>\n\n\n\n

      chmod 710 \/usr\/bin\/perl <\/code><\/pre>\n\n\n\n

      komutunu ssh \u00fczerinde \u00e7al\u0131\u015ft\u0131r\u0131n\u0131z . en son olarak apache ‘yi restart ediyoruz. <\/p>\n\n\n\n

       \/etc\/init.d\/httpd restart<\/code><\/pre>\n\n\n\n

      Ayn\u0131 i\u015flemi Plesk i\u00e7in a\u015fa\u011f\u0131daki komutlar ile ger\u00e7ekle\u015ftirebilirsiniz. <\/p>\n\n\n\n

      chmod 700 \/usr\/bin\/perl\n \/etc\/init.d\/httpd restart & service apache restart<\/code><\/pre>\n\n\n\n

      Art\u0131k Cgi-Telnet eri\u015fimi kapanm\u0131\u015ft\u0131r. Baz\u0131 Cgi-Telnet ba\u011flant\u0131lar\u0131 python ile \u00e7al\u0131\u015fmaktad\u0131r ayn\u0131 i\u015flemleri python k\u00fct\u00fcphanesi i\u00e7in yapabilirsiniz. <\/p>\n\n\n\n

      5. Veri Ak\u0131\u015f\u0131n\u0131 kesmek
      <\/h3>\n\n\n\n

      K\u00f6t\u00fc ama\u00e7l\u0131 kullan\u0131mlar i\u00e7in, \u00f6rne\u011fin basit icmp sald\u0131r\u0131lar i\u00e7in en \ng\u00fcvenli yol sunucuyu d\u0131\u015far\u0131dan ping\u2019e kapatmakt\u0131r. Pingi kapatmak ddos \nsald\u0131r\u0131lar\u0131ndan bizi korumaz, yaln\u0131zca isteklere kapat\u0131r. Bunun \nsunucumuza veya site eri\u015fimlerine bir zarar\u0131 yoktur hatta faydas\u0131 \nvard\u0131r.<\/p>\n\n\n\n

      Ping i kapatmak i\u00e7in ssh ile login olduktan sonra nano komutu ile a\u015fa\u011f\u0131daki k\u0131s\u0131ma eri\u015fiyoruz;<\/p>\n\n\n\n

      nano \/etc\/sysctl.conf<\/code><\/p>\n\n\n\n

      Daha sonra a\u015fa\u011f\u0131daki komutu en alt sat\u0131ra ekliyoruz, kaydedip \u00e7\u0131k\u0131yoruz;<\/p>\n\n\n\n

      net.ipv4.icmp_echo_ignore_all=1<\/code><\/p>\n\n\n\n

      De\u011fi\u015fiklikleri uygulamak i\u00e7in a\u015fa\u011f\u0131daki komutu \u00e7al\u0131\u015ft\u0131r\u0131yoruz;<\/p>\n\n\n\n

      sysctl -p<\/code><\/p>\n\n\n\n

      Farkl\u0131 bir bilgisayardan alan ad\u0131m\u0131z\u0131 veya ip adresimizi pingledi\u011fimizde zaman a\u015f\u0131m\u0131na u\u011frayacakt\u0131r.<\/p>\n\n\n\n

      Yeniden ping eri\u015fimine a\u00e7mak istersek a\u015fa\u011f\u0131daki komutu \u00e7al\u0131\u015ft\u0131r\u0131yoruz;<\/p>\n\n\n\n

      nano \/etc\/sysctl.conf<\/code><\/p>\n\n\n\n

      En a\u015fa\u011f\u0131da ekledi\u011fimiz sat\u0131r\u0131 siliyoruz ve kaydedip \u00e7\u0131k\u0131yoruz.<\/p>\n\n\n\n

      De\u011fi\u015fikli\u011fi uygulamak i\u00e7in a\u015fa\u011f\u0131daki komutu \u00e7al\u0131\u015ft\u0131r\u0131yoruz.<\/p>\n\n\n\n

      sysctl -p<\/code><\/p>\n\n\n\n

      \u0130\u015flemimiz bu kadar.<\/p>\n\n\n\n

      6. Fail2Ban <\/h3>\n\n\n\n

      Fail2ban belirli servislere ait log dosyalar\u0131n\u0131 takip ederek ba\u015far\u0131s\u0131z login giri\u015fimlerini tespit eder ve bu denemeler belirli bir say\u0131ya ula\u015ft\u0131\u011f\u0131 zaman ilgili aktivitenin kaynak IP\u2019si i\u00e7in Iptables\u2019a bir drop kural\u0131 ekler. Sisteminizde iptables yoksa ya da iptables kullanmak istemiyorsan\u0131z ayn\u0131 \u015feyi tcpwrapper ile de yapabilir ve ilgili IP adresini hosts.deny dosyas\u0131na ekler. Ancak bu durum sadece tcpwrapper kullanan (\u00f6rn: sshd) servisler i\u00e7in ge\u00e7erlidir. Mesela apache tcpwrapper kullanmaz bu nedenle apache i\u00e7in iptables kullanman\u0131z gerekir. <\/p>\n\n\n\n

      Fail2ban ile reject edilen IP adresleri i\u00e7in \u00f6ntan\u0131ml\u0131 olarak 5 \ndakikal\u0131k bir ban s\u00fcresi bulunmaktad\u0131r. Ban s\u00fcresi dolan IP adresleri \ni\u00e7in girilen drop kurallar\u0131 (ya da hosts.deny girdileri) sistemden \nkald\u0131r\u0131l\u0131r. Sonu\u00e7 olarak ban durumu kal\u0131c\u0131 de\u011fildir ve s\u00fcre sonunda \nilgili IP adresleri tekrardan eri\u015fim sa\u011flayabilirler.<\/p>\n\n\n\n

      Bunun yan\u0131 s\u0131ra, Fail2ban, banlanan ipleri mail yolu ile \nraporlayabilir; b\u00f6ylece sunucudaki aktivite ile ilgili bilgi \nedinebilirsiniz.<\/p>\n\n\n\n

      Bu k\u0131sa bilgilendirmeden sonra kurulum ve yap\u0131land\u0131rma k\u0131sm\u0131na ge\u00e7ebiliriz.<\/p>\n\n\n\n

      Kurulumu kaynak koddan yap\u0131yorum. Bu nedenle \u015fimdi “\/usr\/local\/src\/” dizinine ge\u00e7erek son “http:\/\/sourceforge.net\/projects\/fail2ban\/files\/” adresinden fail2ban\u2019\u0131n son s\u00fcr\u00fcm\u00fcn\u00fc download edelim.<\/p>\n\n\n\n

      (\u015eu an son s\u00fcr\u00fcm 0.8.4\u2019t\u00fcr. Siz download etmeden \u00f6nce kontrol edin.)<\/p>\n\n\n\n

      # cd \/usr\/local\/src # http:\/\/downloads.sourceforge.net\/project\/fail2ban\/fail2ban-stable\/fail2ban-0.8.4\/fail2ban-0.8.4.tar.bz2?use_mirror=ignum <\/code><\/pre>\n\n\n\n

      \u015eimdi tar.bz2 dosyas\u0131n\u0131 a\u00e7\u0131p kurulumu yapmak i\u00e7in fail2ban dizinine ge\u00e7iyoruz.<\/p>\n\n\n\n

      # tar xjvf fail2ban-0.8.4.tar.bz2 # cd fail2ban-0.8.4 <\/code><\/pre>\n\n\n\n

      Kurulum a\u015fa\u011f\u0131daki gibi setup.py scripti \u00fczerinden yap\u0131lmaktad\u0131r.<\/p>\n\n\n\n

      # python setup.py install <\/code><\/pre>\n\n\n\n

      Y\u00fckleme i\u015flemi bittikten sonra fail2ban binary dosyalar\u0131 \/usr\/bin \ndizinine, yap\u0131land\u0131rma dosyalar\u0131 ise \/etc\/fail2ban dizinine konulur.
      \nAncak yap\u0131land\u0131rmaya ba\u015flamadan \u00f6nce fail2ban\u2019\u0131 sisteme servis olarak ekleyelim.<\/p>\n\n\n\n

      # cp \/usr\/local\/src\/fail2ban-0.8.4\/files\/redhat-initd \/etc\/init.d\/fail2ban # chmod 755 \/etc\/init.d\/fail2ban # chkconfig --add fail2ban # chkconfig fail2ban on <\/code><\/pre>\n\n\n\n

      \u015eimdi fail2ban\u2019\u0131 start edelim. (\u00d6n tan\u0131ml\u0131 ayarlarda herhangi bir servis i\u00e7in ban \u00f6zelli\u011fi aktif de\u011fildir.)<\/p>\n\n\n\n

      service fail2ban start <\/code><\/pre>\n\n\n\n

      B\u00f6ylelikle Fail2Ban Kurulumumuzu tamamlam\u0131\u015f oluyoruz.<\/p>\n\n\n\n

      7. Bash G\u00fcvenlik A\u00e7\u0131\u011f\u0131<\/h2>\n\n\n\n

      Linux sistemleri etkileyen , heartbleed ten daha tehlikeli g\u00f6z\u00fcken yeni bir a\u00e7\u0131k bulundu , en k\u0131sa s\u00fcrede bash’i g\u00fcncellemelisiniz ,a\u00e7\u0131ktan etkilenip etkilenmedi\u011finizi anlamak i\u00e7in terminal de a\u015fa\u011f\u0131daki komutu \u00e7al\u0131\u015ft\u0131r\u0131n\u0131z. <\/p>\n\n\n\n

      # env x='() { :;}; echo vulnerable\u2019 bash -c \u201cecho this is a test\u201d<\/code><\/pre>\n\n\n\n

      E\u011fer \u00e7\u0131kt\u0131s\u0131 a\u015fa\u011f\u0131daki gibi ise acilen yama yapmal\u0131s\u0131n\u0131z. <\/p>\n\n\n\n

      vulnerable\nthis is a test<\/code><\/pre>\n\n\n\n

      \nE\u011fer komutu \u00e7al\u0131\u015ft\u0131rd\u0131\u011f\u0131n\u0131zda a\u015fa\u011f\u0131daki sonucu g\u00f6r\u00fcyor iseniz Sizin korkacak bir \u015feyinizi yok demektir.\n\n<\/p>\n\n\n\n

      bash: warning: x: ignoring function definition attempt\nbash: error importing function definition for `x\u2019\nthis is a test<\/code><\/pre>\n\n\n\n

      8. Cloudflare<\/h2>\n\n\n\n

      Cloudflare<\/strong> web performans\u0131n\u0131 artt\u0131ran ve web sitenizin g\u00fcvenli\u011fini artt\u0131rmaya yarayan bir hizmettir. Cloudflare free plan\u0131 sayesinde CloudFlare CDN<\/strong><\/em>, SSL<\/strong><\/em>, DDoS korumas\u0131<\/strong><\/em> gibi bir\u00e7ok \u00f6zelli\u011fi \u00fccretsiz<\/strong> olarak kullanabiliyorsunuz. Cloudflare\u2019in genel \u00f6zelliklerinden bahsettikten sonra gelelim bu \u00f6zelliklerin ne i\u015fe yarad\u0131\u011f\u0131na:<\/p>\n\n\n\n

      1. CDN Nedir?<\/h4>\n\n\n\n
      \"cloudflare-cdn-haritasi\"<\/figure><\/div>\n\n\n\n

      CDN\u2019nin a\u00e7\u0131l\u0131m\u0131 Content Delivery Network olup T\u00fcrk\u00e7e anlam\u0131 \u0130\u00e7erik \nDa\u011f\u0131t\u0131m A\u011f\u0131\u2019d\u0131r. CDN\u2019nin amac\u0131 kullan\u0131c\u0131lara sitenin en h\u0131zl\u0131 \u015fekilde \nula\u015ft\u0131r\u0131lmas\u0131d\u0131r.
      \nPeki CDN nas\u0131l \u00e7al\u0131\u015f\u0131yor?
      \nCDN d\u00fcnyan\u0131n bir\u00e7ok yerine da\u011f\u0131t\u0131lm\u0131\u015f sunucular\u0131n bir alt yap\u0131s\u0131d\u0131r. Bu \nyap\u0131da kullan\u0131c\u0131 hangi \u00fclkedeyse o \u00fclkeye en yak\u0131n sunucuya ula\u015f\u0131yor. Bu\n sayede kullan\u0131c\u0131 uzaktaki sunucuya ba\u011flan\u0131p zaman kaybetmiyor. Bu \ny\u00fczden h\u0131zland\u0131rma a\u00e7\u0131s\u0131ndan \u00f6nemli bir \u00f6zellik.
      \nAyr\u0131ca sitenizin h\u0131zl\u0131 a\u00e7\u0131lmas\u0131 SEO a\u00e7\u0131s\u0131ndan da \u00e7ok faydal\u0131d\u0131r.
      \n<\/p>\n\n\n\n

      2. DDoS Korumas\u0131 Nedir?<\/h4>\n\n\n\n
      \"ddos-saldirisi\"<\/figure><\/div>\n\n\n\n

      DDoS sald\u0131rganlar sizin sunucunuza \u00e7ok say\u0131da PC \u00fczerinden istekler \ng\u00f6nderir ve sunucuyu me\u015fgul ederler. Bu \u015fekilde sunucu yo\u011funluktan yan\u0131t\n veremez olur ve sunucunuz \u00e7\u00f6ker. \u0130\u015fte Cloudflare sitenize yap\u0131lan DDoS \nsald\u0131r\u0131lar\u0131n\u0131 bir noktaya kadar \u00f6nleyebiliyor.
      \nCloudflare DDoS\u2019u nas\u0131l engelliyor?
      \nSitenize gelen trafik \u00f6nce Clodflare sunucusuna eri\u015fiyor ve sistem \nburada sald\u0131rgan davran\u0131\u015flar\u0131n\u0131 tespit ederek sitenize ula\u015fmas\u0131n\u0131 \nengelliyor.
      \n<\/p>\n\n\n\n

      3. SSL Sertifikas\u0131 nedir?, Ne i\u015fe yarar?<\/h4>\n\n\n\n

      SSL internet \u00fczerinde bilgi aktar\u0131m\u0131 s\u0131ras\u0131nda bilgininin gizlilik ve\n g\u00fcvenli\u011fini saplamak i\u00e7in yap\u0131lm\u0131\u015f bir g\u00fcvenlik protokol\u00fcd\u00fcr. Bu SSL \nsertifikas\u0131n\u0131 sitenin https ile ba\u015flamas\u0131 ve ye\u015fil kilit bulundurmas\u0131yla\n anlayabiliriz. Siz de Cloudflare ile sitenize SSL sertifikas\u0131 \nekleyebilirsiniz.<\/p>\n\n\n\n

      4. Trafik analizi<\/h4>\n\n\n\n

      Sitenizin analizi i\u00e7in genelde Google Analytics gibi ara\u00e7lar \nkullan\u0131l\u0131yor. Ancak Javascript ve pixel tracking y\u00f6ntemleriyle elde \nedilemeyen kullan\u0131c\u0131lar\u0131 Cloudflare ile g\u00f6rebilirsiniz.<\/p>\n\n\n\n

      5. \u00d6nbellekleme<\/h4>\n\n\n\n

      Sunucunuz taraf\u0131ndan dinamik \u015fekilde olu\u015fturulmayan sayfalar\u0131 \notomatik olarak tan\u0131r, bu sayfalar\u0131 kendi sunucular\u0131nda \u00f6nbellekleyerek \nhem sunucunuzdaki trafi\u011finizi azalt\u0131r hem de sayfa y\u00fckleme s\u00fcrelerinizi \nazalt\u0131r.<\/p>\n\n\n\n

      6. Spam Yorum Koruma<\/h4>\n\n\n\n

      CloudFlare sitenize gelen spam yorum say\u0131s\u0131n\u0131 en aza indirgemek i\u00e7in \u00fc\u00e7\u00fcnc\u00fc parti bir\u00e7ok uygulamadan yararlan\u0131r.<\/p>\n\n\n\n

      7. Dosya Optimizasyonu<\/h4>\n\n\n\n

      Cloudflare Javascipt, CSS gibi dosyalar\u0131n\u0131z\u0131 s\u0131k\u0131\u015ft\u0131rarak sitenizi daha h\u0131zl\u0131 a\u00e7\u0131lmas\u0131n\u0131 sa\u011fl\u0131yor.<\/p>\n\n\n\n

      8. Her Zaman Online<\/h4>\n\n\n\n

      E\u011fer sunucunuz \u00e7\u00f6kerse CloudFlare sitenizin \u00f6nbelle\u011fe al\u0131nm\u0131\u015f halini \nservis ediyor. Bu sayede sitenize giren kullan\u0131c\u0131lar hata sayfas\u0131 \nalmayacak sitenizi g\u00f6r\u00fcnt\u00fcleyebilecek.<\/p>\n\n\n\n

      Evet arkada\u015flar umar\u0131m haz\u0131rlad\u0131g\u0131m makaleyi be\u011fenmi\u015fsinizdir.Ba\u015fka makalelerde g\u00f6r\u00fc\u015fmek \u00fczere..<\/p>\n","protected":false},"excerpt":{"rendered":"

      PHP Nedir ? Bir Sunucuda PHP uzant\u0131l\u0131 dosyalar\u0131n \u00e7al\u0131\u015ft\u0131r\u0131labilmesi i\u00e7in gerekli olan yaz\u0131l\u0131mlar\/paketler y\u00fcklendikten sonra projenize ba\u011fl\u0131 olarak baz\u0131 de\u011fi\u015fiklikler yapman\u0131z gerekebilir. \u00d6rne\u011fin web sitenizde bir dosya y\u00fckleme alan\u0131 varsa buradan y\u00fcklenecek dosya boyutunu izinler dosyas\u0131ndan de\u011fi\u015ftirmeniz gerekebilir. \u0130\u015fte bu ve bunun gibi \u00f6nemli PHP ayarlar\u0131n bar\u0131nd\u0131r\u0131ld\u0131\u011f\u0131 \u00f6zel ayar dosyas\u0131 php.ini dosyas\u0131d\u0131r. PHP.ini Dosyas\u0131 nas\u0131l …<\/p>\n","protected":false},"author":7,"featured_media":1565,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[25],"tags":[122,120,117,123,116,124,115,119,33,118],"_links":{"self":[{"href":"https:\/\/codewk.com\/wp-json\/wp\/v2\/posts\/1559"}],"collection":[{"href":"https:\/\/codewk.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/codewk.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/codewk.com\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/codewk.com\/wp-json\/wp\/v2\/comments?post=1559"}],"version-history":[{"count":5,"href":"https:\/\/codewk.com\/wp-json\/wp\/v2\/posts\/1559\/revisions"}],"predecessor-version":[{"id":1629,"href":"https:\/\/codewk.com\/wp-json\/wp\/v2\/posts\/1559\/revisions\/1629"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/codewk.com\/wp-json\/wp\/v2\/media\/1565"}],"wp:attachment":[{"href":"https:\/\/codewk.com\/wp-json\/wp\/v2\/media?parent=1559"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/codewk.com\/wp-json\/wp\/v2\/categories?post=1559"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/codewk.com\/wp-json\/wp\/v2\/tags?post=1559"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}