Şunun için etiket arşivi: php

Php 5.6 phpmailer mail gönderme problemi

Php 5.6 versiyonunda phpmailer tabanlı scriptleri çalışmaz hale geldi.Problem yaşayanlar için  alttaki metin faydalı olabilir.

php 5.6 versiyonunda phpmailer scriptiniz çalışmaz çünkü;

  1. php 5.6 versiyonundan itibaren ,bağlantı kurulan servisteki ssl sertifkasının geçrli olup olmadığını kontrol etmesi
  2. phpmailer bağlantı kurduğu eposta sunucusunda tls encryption olduğunu farkettiği anda otomatikman tls doğrulamayı aktif ediyor.bu esnada karşıda geçersiz veya self signed bir sertifika varsa anlaşma sağlanamıyor.

phpmailer bu durum için 5.2.10 sürümünde bunun için bir istisna hazırlamış.alttaki linkte sertifika doğrulaması ile ilgili parametleri alt betikte iptal edebiliyorsunuz.

https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting#php-56-certificate-verification-failure

bu arada phpmailer sürümü eski olanlarda bu özellik olmayabilir ama zaten şu genel güvenkik açığı sebebiyle phpmailerinizi son sürüme güncellesiniz bence iyi olur.

Ayrıca durumunuza göre aşağıdaki smtpautotls ayarını da değiştirmeniz meseleyi çözüme kavuşturabilir.
https://phpmailer.github.io/PHPMailer/classes/PHPMailer.html#property_SMTPAutoTLS

Centos 7 de php ye mcrypt eklentisi kurmak

Centos’u hazırlayanların bu php mcrypt eklentisine bir gıcığı var ama neden bir türlü anlamış değilim.

Epel deposundan php 5.4 için mcrypt eklentisi kurmak için öncelikle paket deposunu işletim sisteminizde aktif etmelisiniz.

sudo yum install epel-release ( zaten root iseniz sudoya gerek yoktur.)

yazarak kurulacak paketi kabul edin.Epel sisteminize kurulacaktır.

Ardından php-mcrypt paketini sisteminize kurun..

yum install –enablerepo=”epel” php-mcrypt

Aşağıdaki ekrandaki gibi size gpg key’i onaylayıp onaylamadığınızı soracaktır.Bir tür güven ilişkisi oluyor bir süre sonra,hiç düşünmeden yesss diyorsunuz.Ama işin doğrusu bunları kontrol edip doğrulamak lazım.Ben doğrusunu söyleyeyim de siz nasıl bilirseniz öyle yapın.

Selection_031

Akabinde apache servisini “service httpd restart” diyerek resetlersiz işlem tamamlanmış olacaktır.İnanmıyorsanız  phpinfo ile bakın.

Centossuz günler dilerim.

Apache fastcgi can’t apply process slot for error hatası

fb0b45015a

mod_fcgid Apache 2 webserverlarda yaygın olarak kullanılan bir modüldür.Php scriptlerini belli bir kullanıcının çalıştırmasına olanak tanır.

öntanımlı olarak belli bir limiti olan bu modülün limitleri sınıra dayandığında websiteler oldukça yavaş çalışmaya başlar,zaman zaman “500 Internal Server error” hatası alırsınız.

yapılması gereken;

Redhat ve türevlerinde;

/etc/httpd/conf.d/fcgid.conf

Debian,Ubuntu türevlerinde

/etc/apache2/mods-enabled/fcgid.conf

dosyasını açıp

FcgidMaxProcesses değerini arttırmaktır.

Daha sonra Apache web servisini yeniden başlatmalısınız.

debian ve ubuntu için : service apache2 restart

redhat ve centos 6.x için /etc/init.d/httpd restart veya service httpd restart

7.x versiyonları için systemctl httpd restart (geriye dönük uyumluluk için  service httpd restart komutu da 7.x versiyonlarda çalışmaktadır.)

Linux Eğitimi

Linux eğitimleri ile ilgili tüm çalışmalar Eğitim Atolyesi websitesine taşındı.

Yeni dersler,eğitim programları ve daha pek çok ayrıntıyı alltaki logoya tıklayarak erişebilirsiniz.

 

 

linuxegitimi2

48K BİLİŞİM VE INTERNET TEKNOLOJİLERİ

LINUX SİSTEM YÖNETİCİSİ EĞİTİMİ

LINUX WEB HOSTING VE SİSTEM YÖNETİMİ EĞİTİMİ

 

Eğitimin Amacı;

Bu eğitim Linux tabanlı işletim sistemleri ve kullanımı hakkında temel bilgileri ,ayrıca yine Linux tabanlı web sunucularının kurulumu,yönetimi,bakımı ve güncellenmesi konularında uzmanlık bilgilerini vermeyi amaçlamaktadır.

Detaylı bilgi için :48k Bilişim ve Internet Teknolojileri İzmir / Telefon: 0 850 333 13 64

Katılımcıda aranan gereksinimler;

  • İşletim sistemini (Microsoft Windows,Linux,Apple MacOS gibi) kullanabilen,

  • Temel olarak network bilgisine sahip olan.Örneğin bir bilgisayara ip adresi atayabilmek veya bir modem ile PCyi internete bağlayabilmek vb.

  • Linux tabanlı işletim sistemlerine karşı meraklı olmak veya temel bilgiye sahip fakat kendini geliştirmek isteyen

  • Internet ve network,network servisleri,hosting,sistem yönetimi,ağ yönetimi konularında kendini geliştirmek isteyen herkes eğitimimize katılabilir.

Eğitim sonunda katılımcı;

Çalıştığı kurumda veya işletmede mevcut Linux sunucu sistemlerini yönetebilir hale gelecektir.IT planlarına Linux tabanlı sunucu işletim sistemlerini de dahil ederek kurumundaki ağ sistemleri üzerinde kontrolünü arttıracaktır.Linux ile bilişim altyapı çözümleri oluştururken BT maliyetlerini de düşürebilecektir.

Bunun yanısıra katılımcının görev yapmakta olduğu kurumun verimerkezlerinde bulunan web,eposta,dns,veritabanı gibi servisleri sağlayan kiralık sunucuların yönetimini yapabilecektir.

Herhangi bir kurumda çalışmayan,BT dünyasına yeni adım atan kursiyerlerimizin iş başvuru alanı genişleyecektir.

Kursiyerler eğitim sonunda dünyanın heryerinde geçerliliği olan bazı sertifikasyon (örnek: LPI) eğitimlerinde verilen bilginin büyük kısmını bu eğitimde almış olacaklardır.

Kimler katılabilir?

Bilişim dünyasına bir adım atmak isteyen,kendini geliştirmek isteyen kişiler veya IT personeli olarak çalışmakta olduğu işyerindeki sistemlere hakimiyet sağlamak isteyenler bu eğitime katılabilir.

 

E-Mail : egitim@linux-destek.com , egitim@48k.com.tr

Telefon : 0 850 333 13 64

Başlangıç Eğitim Programı

Başlangıç eğitim programı ile uzman eğitim programı genel olarak aynı içeriği kapsar.Uzman eğitim programı uygulama ağırlıklıdır.Aşağıda ve linkteki eğitim notlarında belirtilen uygulamalar esastır.

Bunun yanısıra öğrencilerin de içeriğe katkıda bulunabileceği  veya karar vereceği gerçek dünya senaryolarına yer verilecektir.Sonuç olarak Uzman eğitimi ağırlıklı bir serbest atolye programıdır.

Başlangıç eğitimi 20 saat, Uzman eğitim programı 120 saat olarak tasarlanmıştır.

Linux sistem yönetimi egitimi notları

 

Uzman Eğitim Programı

A.GİRİŞ

Internet,arama motorları,websitesi,forum,blog,eticaret,domain,http,ftp,hosting,websitesi,e-mail,sunucu,network,dns,router,tcp/ip kavramlarının tanımları ve örneklerle açıklanması.

Internet nasıl çalışır?

Sunucu,istemci ilişkisi nedir?

Tcp/IP nedir?

Gerçek IP,Lokal Ip Nedir,Nasıl kullanılır?Kullanım Şartları Nelerdir?

Alanadı nedir?

Hangi alanadlarını kullanabiliriz.Eski ve yeni nesil alanadları.

Alanadı Nedir? Nasıl alınır?Kullanım şartları nedir?

B.LİNUX VE LİNUX TABANLI İŞLETİM SİSTEMLERİ

Linux ve Linux tabanlı işletim sistemleri tanıtımı

Redhat ve Debian gibi yaygın kullanılan işletim sistemleri

Linux tabanlı işletim sistemlerinde;

Kurulum,

Shell (komut satırı) kullanımı,komutları

Dosya sistemleri,izinler ve hakların oluşturma,değiştirme

Genel konfigurasyonları,

Dosya ve klasör yapılandırmaları,

Temel Network Ayarları,

Yazılım kurulumları,Debian ve Redhat türevlerinde paket depolarının kullanımı,

Iptables Firewall kullanımı

Linux tabanlı sistemlerde en çok kullanılan network servislerinin tanıtımı,

Aşağıdaki başlıklarda yer alan network servislerin kurulum ve yapılandırılması örnek senaryolar ile uygulamalar ile birlikte yapılacaktır ;

  • Dosya paylaşım sunucuları,Samba ve NFS sunucuların yapılandırması
  • Rsync ile yedekleme
  • SSH servisi
  • Linux ağ geçidi hizmetleri,iptables güvenlik duvarı ve maskeleme
  • Squid Proxy web vekil sunucusu
  • DHCP
  • OpenVPN

C.WEBSİTELERİ VE WEB SUNUCU SİSTEMLERİ NASIL ÇALIŞIR?

Bir web server kuralım.

1.Alanadı ve DNS

Bir websitesi kurmak için nelere ihtiyacımız vardır?Neden barındırma?

Alanadı seçimi:Örnek bir alanadı satın alımı.

DNS Server nedir?

DNS’in hiyerarşik yapısı,root dns sunucular.

DNS Sunucular

DNS Kayıt Türleri

DNS Çözümleyiciler (resolver dns),DNS Önbellekleme (DNS Caching)

Örnek uygulama: BIND DNS Sunucusunun kurulumu ve yapılandırılması,alınan alanadı kayıtlarının ve nameserver bilgilerinin konfigurasyonu,DNS Test Araçları,Raporlama Araçları ve test,raporlama uygulaması

2.FTP Sunucu

FTP Nedir,FTP protokolu nasıl çalışır?

Pasif ftp,ascii,binary dosya transferleri nasıl?

Anonim FTP,FTPS

Örnek Uygulama:FTP Sunucu kurulumu,alanadı kurulan websunucuya dosya transferi.

2.Web Sunucu

Http Nedir?

Tarayıcı (istemci) – Sunucu ilişkisi

Virtual Hosting Nedir?

Web sunucu yazılımlarına genel bakış,artıları,eksileri

Örnek Uygulama: Linux işletim sistemine Apache web sunucusu kurulumu ve yapılandırması,örnek alanadının hosting yapılandırılması ve yayınlanması

2.1.Programlama Dilleri,Hazır Yazılımlar ve Veritabanı Sunucuları

Linux tabanlı web sunucularında kullanılan programlama dilleri genel tanıtımı.

Apache Web sunucuya PHP programla dili desteğinin yapılandırılması.

Sistem yönetimi açısından dinamik websiteleri

MySQL Veritabanı Sunucusu ve Apache-PHP ile ilişkisi ve entegrasyonu

PHP ile yazılmış en sık kullanılan hazır yazılımlar ile ilgili sık rastlanılan hatalar,çözüm yolları.

Sistem yönetimi için MySQL Araçları ve kullanımı

3.E-Posta Sunucuları

Nasıl Çalışır? DNS ve E-Posta ilişkisi.

E-Posta sunucuları hakkında genel bilgi ve türlerine göre ayırımı,

Kurumsal iş birliği yazılımları Microsoft Exchange rakipleri

E-Posta iletişiminde kullanılan protokoller (SMTP,POP,IMAP)

Antispam ve antivirus Sistemleri

E-posta istemciler ve konfigurasyonu,açık kaynak kodlu yazılımlar hakkında bilgi

İleri düzey e-posta sunucu ayarları

Bölüm sonu Genel Örnek Uygulama:

Tüm bileşenleri ve hosting kontrol paneli ile bir web sunucusu kurulumu

D.UYGULAMALAR

Web sunucularında Hosting Kontrol Yazılımlarının (hosting paneller) kurulumları

Zimbra E-posta ve ortak çalışma sunucusunun kurulumu

 

Joomla ve WordPress Hosting

En basit haliyle uyum problemleri ya bileşen eksikliğinden ya da dosya sistemi üzerine yazma haklarından ortaya çıkar.Bu sadece hazır scriptlere mahsus bir durum da değildir esasında.Joomla’nız,  wordpress’iniz ya da elinizdeki varolan ve kullanmak istediğiniz herhangi bir yazılım ,eğer hosting alanında dosya oluşturabiliyor veya silebiliyorsa,kullandığı tüm bileşenler serverda destekleniyorsa güzel güzel çalışır.

Bu uyumluluğun var olup olmadığını anlamanın iki basit yolu vardır.

Konu php bileşenleri ise;örneğin php-xml php-mbstring gibi,

Satın aldığınız hostinginizde phpinfo.php adıyla bir dosya oluşturun.ismin önemi yok.uzantısı php olsun yeter.ve içine şunları yazın

<?php
phpinfo();
?>

Daha sonra alanadınızla birlikte bu dosyanın tam yolunu tarayıcınızın adres satırına yazarak çağırın.Karşınıza tam da şu şekilde bir ekran gelecektir.(Eğer phpinfo() fonksiyonu birşekilde kapatılmamışsa!)

Karşınıza gelen bu upuzun sayfada sırasıyla hangi php bileşenlerin yüklü olduğunu görebilir,kullanmak istediğiniz scriptin gereksinimleriyle karşılaştırabilirsiniz.

Eğer konu yazma izinleri ile ilgili ise aynı dosyada üçüncü satıra dikkat etmenizi tavsiye ederim.Örneğimizde,bu satırda CGI/FastCGI yazmaktadır.Burada sadece CGI,Apache2 Handler,ISAPI extension hatta php/FPM de yazabilirdi.

Apache2 Handler yazıyorsa başınız yazma izinleriyle dertte demektir.Dosyaları webden yüklemeniz için yazma izinlerini ve dosya sahipliklerini değiştirtmek zorunda kalacaksınız.Daha sonra da bu dosyaları silmek istediğinizde hosting firmanıza telefon veya çağrı açmak zorunda kalacaksınız.ISAPI’ de de aynı durum sözkonusu.

Bu tip sorunlarla karşılaşmamak için barındırma hizmeti satın almadan önce firmayla görüşüp hangi hosting kontrol paneli kullandıklarını sormanızda fayda var.Plesk ise php/fastcgi,cpanel ise phpsuexec,directadmin ise suphp kullanıp kullanmadıklarını sorun.Alacağınız yanıt evet ise joomla veya wordpress bu bakımdan sorunsuz çalışabilir manasına gelecektir.

Web Sunucu Güvenliği İpuçları

Linux web sunucularda temp dizini güvenliği

Web sunucunuzdaki geçici işlemler için dosya oluşturulan dizin /tmp dizinidir.Bir web sunucusunda genelde /tmp dizini üzerine tüm kullanıcılar yazma okuma izinlerine sahip oluyor.Böylece herkesin yazabildiği ve okuyabildiği bir alan güvenlik riskini arttırıyor.

Bu riski bir nebze düşürmek için /tmp dizinini ayrı bir partition olarak bağlamalı ve için kod çalıştırılamaz şekilde ayarlamalısınız.

Eğer işin bu kısmını düşünmeden sunucu kurmuşsanız ve diskinizde boş alan yoksa aşağıdaki linux/unix işletim sistemlerine özgü raw disk image mount alternatifini kullanabilirsiniz.

Önce tmp bölümün ne kadar alana gereksinim duyduğuna karar verin ve bunun için diskinizdeki boş alanı kontrol edin

Ssh üzerinden root kullanıcısı ile bağlıyken şu komutu verin;

 

[root@localhost ]# df -h

 

/dev/sda1 214G 130G 74G 64% /

 

 

Burada / dizininde 74 Gb boş alan olduğunu görüyoruz.Bize tahminen 15 gb tmp dizini yeterli olabilir.

Şimdi disk imajı oluşturma ve sisteme bağlama aşamasındayız.Önemli servislerinizi (mysql,apache vb.) durdurup /tmp dizin içeriğinizi bir yere yedekleyin .Daha sonra aşağıdaki komutları sırasıyla yazın.

dd if=/dev/zero of=/usr/tmpMnt bs=1024 count=15000000

 

/sbin/mke2fs /usr/tmpMnt

 

/usr/tmpMnt is not a block special device.
Proceed anyway? (y,n) y

 

 

 

Bu komutları sırasıyla uyguladığınızda artık /usr altında 15 gb ‘lık tmpMnt dosyanızın olduğunu görebilirsiniz.Imajı sisteme tmp olarak bağlayalım;

mount -o loop,noexec,nosuid,rw /usr/tmpMnt /tmp

 

Bu komuttan sonra hiçbir hata çıkmadıysa disk imajı tmp olarak bağlanmış demektir.Daha önce başka bir yere almış olduğunuz dosyaları şimdi /tmp ‘e tekrar aktarıp servislerinizi çalıştırabilirsiniz.

Ayarların her açılışta yüklenmesi için,

nano ile /etc/fstab dosyasını açıp alttaki satırı dosyanın en altına yazın.

/usr/tmpMnt /tmp ext2 loop,noexec,nosuid,rw 0 0

 

Not 1: Bu işlemler sonucunda /tmp dizinin izinleri değişmiş olabilir.

chmod 1777 /tmp çalıştırın.

Not 2: /usr/tmpMnt yolu zorunlu değildir.İstediğiniz klasörde istediğiniz isimle imaj dosyasını oluşturabilirsiniz.Yeterki fstabdaki isimler doğru olsun.

Not 3: Herşey bittikten sonra mount komutu ile /tmp dizinin doğru bağlandığına emin olun.

 

 

 

 

 

 

 

 

Centos 5.x Php 5.3 kurulumu

Şu anda php ‘nin güncel sürümü olan 5.3.3 paketinin centos 5.x webservera kurulumu için önce extra paket depolarının yum ayarlarını yapıyoruz.

Sunucuya ssh üzerinden root olarak login olduktan sonra aşağıdaki epel paketi sisteminize indirin

[root@server ~]# rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm

Ardından php 5.3 paketinin bulunduğu depoyu kullanabilmeniz için şu adresten indireceğiniz rpm paketini şu şekilde sisteminize kurun.

  • [root@server ~]# wget http://rpms.famillecollet.com/enterprise/remi-release-5.rpm
  • [root@server ~]# rpm -ihv remi-release-5.rpm

Artık php 5.3 kurmaya hazırsınız.Aslında paket bağımlılıkları ve sistemin güncel olması açısından buna php ve mysql güncellemesi de diyebiliriz.Son olarak;

[root@server ~]# yum –enablerepo=remi update php-\* mysql-\*

Böylece php ,mysql kütüphaneleri ve mysql veritabanını upgrade etmiş oldunuz.Son olarak service httpd restart komutu ile apache’yi resetledikten sonra web alanınıza bir yere bir phpinfo() kodu yazıp güncellemeyi kontrol edebilirsiniz.

Şunun için etiket arşivi: php

Php 5.6 phpmailer mail gönderme problemi

Php 5.6 versiyonunda phpmailer tabanlı scriptleri çalışmaz hale geldi.Problem yaşayanlar için  alttaki metin faydalı olabilir.

php 5.6 versiyonunda phpmailer scriptiniz çalışmaz çünkü;

  1. php 5.6 versiyonundan itibaren ,bağlantı kurulan servisteki ssl sertifkasının geçrli olup olmadığını kontrol etmesi
  2. phpmailer bağlantı kurduğu eposta sunucusunda tls encryption olduğunu farkettiği anda otomatikman tls doğrulamayı aktif ediyor.bu esnada karşıda geçersiz veya self signed bir sertifika varsa anlaşma sağlanamıyor.

phpmailer bu durum için 5.2.10 sürümünde bunun için bir istisna hazırlamış.alttaki linkte sertifika doğrulaması ile ilgili parametleri alt betikte iptal edebiliyorsunuz.

https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting#php-56-certificate-verification-failure

bu arada phpmailer sürümü eski olanlarda bu özellik olmayabilir ama zaten şu genel güvenkik açığı sebebiyle phpmailerinizi son sürüme güncellesiniz bence iyi olur.

Ayrıca durumunuza göre aşağıdaki smtpautotls ayarını da değiştirmeniz meseleyi çözüme kavuşturabilir.
https://phpmailer.github.io/PHPMailer/classes/PHPMailer.html#property_SMTPAutoTLS

Centos 7 de php ye mcrypt eklentisi kurmak

Centos’u hazırlayanların bu php mcrypt eklentisine bir gıcığı var ama neden bir türlü anlamış değilim.

Epel deposundan php 5.4 için mcrypt eklentisi kurmak için öncelikle paket deposunu işletim sisteminizde aktif etmelisiniz.

sudo yum install epel-release ( zaten root iseniz sudoya gerek yoktur.)

yazarak kurulacak paketi kabul edin.Epel sisteminize kurulacaktır.

Ardından php-mcrypt paketini sisteminize kurun..

yum install –enablerepo=”epel” php-mcrypt

Aşağıdaki ekrandaki gibi size gpg key’i onaylayıp onaylamadığınızı soracaktır.Bir tür güven ilişkisi oluyor bir süre sonra,hiç düşünmeden yesss diyorsunuz.Ama işin doğrusu bunları kontrol edip doğrulamak lazım.Ben doğrusunu söyleyeyim de siz nasıl bilirseniz öyle yapın.

Selection_031

Akabinde apache servisini “service httpd restart” diyerek resetlersiz işlem tamamlanmış olacaktır.İnanmıyorsanız  phpinfo ile bakın.

Centossuz günler dilerim.

Apache fastcgi can’t apply process slot for error hatası

fb0b45015a

mod_fcgid Apache 2 webserverlarda yaygın olarak kullanılan bir modüldür.Php scriptlerini belli bir kullanıcının çalıştırmasına olanak tanır.

öntanımlı olarak belli bir limiti olan bu modülün limitleri sınıra dayandığında websiteler oldukça yavaş çalışmaya başlar,zaman zaman “500 Internal Server error” hatası alırsınız.

yapılması gereken;

Redhat ve türevlerinde;

/etc/httpd/conf.d/fcgid.conf

Debian,Ubuntu türevlerinde

/etc/apache2/mods-enabled/fcgid.conf

dosyasını açıp

FcgidMaxProcesses değerini arttırmaktır.

Daha sonra Apache web servisini yeniden başlatmalısınız.

debian ve ubuntu için : service apache2 restart

redhat ve centos 6.x için /etc/init.d/httpd restart veya service httpd restart

7.x versiyonları için systemctl httpd restart (geriye dönük uyumluluk için  service httpd restart komutu da 7.x versiyonlarda çalışmaktadır.)

Linux Eğitimi

Linux eğitimleri ile ilgili tüm çalışmalar Eğitim Atolyesi websitesine taşındı.

Yeni dersler,eğitim programları ve daha pek çok ayrıntıyı alltaki logoya tıklayarak erişebilirsiniz.

 

 

linuxegitimi2

48K BİLİŞİM VE INTERNET TEKNOLOJİLERİ

LINUX SİSTEM YÖNETİCİSİ EĞİTİMİ

LINUX WEB HOSTING VE SİSTEM YÖNETİMİ EĞİTİMİ

 

Eğitimin Amacı;

Bu eğitim Linux tabanlı işletim sistemleri ve kullanımı hakkında temel bilgileri ,ayrıca yine Linux tabanlı web sunucularının kurulumu,yönetimi,bakımı ve güncellenmesi konularında uzmanlık bilgilerini vermeyi amaçlamaktadır.

Detaylı bilgi için :48k Bilişim ve Internet Teknolojileri İzmir / Telefon: 0 850 333 13 64

Katılımcıda aranan gereksinimler;

  • İşletim sistemini (Microsoft Windows,Linux,Apple MacOS gibi) kullanabilen,

  • Temel olarak network bilgisine sahip olan.Örneğin bir bilgisayara ip adresi atayabilmek veya bir modem ile PCyi internete bağlayabilmek vb.

  • Linux tabanlı işletim sistemlerine karşı meraklı olmak veya temel bilgiye sahip fakat kendini geliştirmek isteyen

  • Internet ve network,network servisleri,hosting,sistem yönetimi,ağ yönetimi konularında kendini geliştirmek isteyen herkes eğitimimize katılabilir.

Eğitim sonunda katılımcı;

Çalıştığı kurumda veya işletmede mevcut Linux sunucu sistemlerini yönetebilir hale gelecektir.IT planlarına Linux tabanlı sunucu işletim sistemlerini de dahil ederek kurumundaki ağ sistemleri üzerinde kontrolünü arttıracaktır.Linux ile bilişim altyapı çözümleri oluştururken BT maliyetlerini de düşürebilecektir.

Bunun yanısıra katılımcının görev yapmakta olduğu kurumun verimerkezlerinde bulunan web,eposta,dns,veritabanı gibi servisleri sağlayan kiralık sunucuların yönetimini yapabilecektir.

Herhangi bir kurumda çalışmayan,BT dünyasına yeni adım atan kursiyerlerimizin iş başvuru alanı genişleyecektir.

Kursiyerler eğitim sonunda dünyanın heryerinde geçerliliği olan bazı sertifikasyon (örnek: LPI) eğitimlerinde verilen bilginin büyük kısmını bu eğitimde almış olacaklardır.

Kimler katılabilir?

Bilişim dünyasına bir adım atmak isteyen,kendini geliştirmek isteyen kişiler veya IT personeli olarak çalışmakta olduğu işyerindeki sistemlere hakimiyet sağlamak isteyenler bu eğitime katılabilir.

 

E-Mail : egitim@linux-destek.com , egitim@48k.com.tr

Telefon : 0 850 333 13 64

Başlangıç Eğitim Programı

Başlangıç eğitim programı ile uzman eğitim programı genel olarak aynı içeriği kapsar.Uzman eğitim programı uygulama ağırlıklıdır.Aşağıda ve linkteki eğitim notlarında belirtilen uygulamalar esastır.

Bunun yanısıra öğrencilerin de içeriğe katkıda bulunabileceği  veya karar vereceği gerçek dünya senaryolarına yer verilecektir.Sonuç olarak Uzman eğitimi ağırlıklı bir serbest atolye programıdır.

Başlangıç eğitimi 20 saat, Uzman eğitim programı 120 saat olarak tasarlanmıştır.

Linux sistem yönetimi egitimi notları

 

Uzman Eğitim Programı

A.GİRİŞ

Internet,arama motorları,websitesi,forum,blog,eticaret,domain,http,ftp,hosting,websitesi,e-mail,sunucu,network,dns,router,tcp/ip kavramlarının tanımları ve örneklerle açıklanması.

Internet nasıl çalışır?

Sunucu,istemci ilişkisi nedir?

Tcp/IP nedir?

Gerçek IP,Lokal Ip Nedir,Nasıl kullanılır?Kullanım Şartları Nelerdir?

Alanadı nedir?

Hangi alanadlarını kullanabiliriz.Eski ve yeni nesil alanadları.

Alanadı Nedir? Nasıl alınır?Kullanım şartları nedir?

B.LİNUX VE LİNUX TABANLI İŞLETİM SİSTEMLERİ

Linux ve Linux tabanlı işletim sistemleri tanıtımı

Redhat ve Debian gibi yaygın kullanılan işletim sistemleri

Linux tabanlı işletim sistemlerinde;

Kurulum,

Shell (komut satırı) kullanımı,komutları

Dosya sistemleri,izinler ve hakların oluşturma,değiştirme

Genel konfigurasyonları,

Dosya ve klasör yapılandırmaları,

Temel Network Ayarları,

Yazılım kurulumları,Debian ve Redhat türevlerinde paket depolarının kullanımı,

Iptables Firewall kullanımı

Linux tabanlı sistemlerde en çok kullanılan network servislerinin tanıtımı,

Aşağıdaki başlıklarda yer alan network servislerin kurulum ve yapılandırılması örnek senaryolar ile uygulamalar ile birlikte yapılacaktır ;

  • Dosya paylaşım sunucuları,Samba ve NFS sunucuların yapılandırması
  • Rsync ile yedekleme
  • SSH servisi
  • Linux ağ geçidi hizmetleri,iptables güvenlik duvarı ve maskeleme
  • Squid Proxy web vekil sunucusu
  • DHCP
  • OpenVPN

C.WEBSİTELERİ VE WEB SUNUCU SİSTEMLERİ NASIL ÇALIŞIR?

Bir web server kuralım.

1.Alanadı ve DNS

Bir websitesi kurmak için nelere ihtiyacımız vardır?Neden barındırma?

Alanadı seçimi:Örnek bir alanadı satın alımı.

DNS Server nedir?

DNS’in hiyerarşik yapısı,root dns sunucular.

DNS Sunucular

DNS Kayıt Türleri

DNS Çözümleyiciler (resolver dns),DNS Önbellekleme (DNS Caching)

Örnek uygulama: BIND DNS Sunucusunun kurulumu ve yapılandırılması,alınan alanadı kayıtlarının ve nameserver bilgilerinin konfigurasyonu,DNS Test Araçları,Raporlama Araçları ve test,raporlama uygulaması

2.FTP Sunucu

FTP Nedir,FTP protokolu nasıl çalışır?

Pasif ftp,ascii,binary dosya transferleri nasıl?

Anonim FTP,FTPS

Örnek Uygulama:FTP Sunucu kurulumu,alanadı kurulan websunucuya dosya transferi.

2.Web Sunucu

Http Nedir?

Tarayıcı (istemci) – Sunucu ilişkisi

Virtual Hosting Nedir?

Web sunucu yazılımlarına genel bakış,artıları,eksileri

Örnek Uygulama: Linux işletim sistemine Apache web sunucusu kurulumu ve yapılandırması,örnek alanadının hosting yapılandırılması ve yayınlanması

2.1.Programlama Dilleri,Hazır Yazılımlar ve Veritabanı Sunucuları

Linux tabanlı web sunucularında kullanılan programlama dilleri genel tanıtımı.

Apache Web sunucuya PHP programla dili desteğinin yapılandırılması.

Sistem yönetimi açısından dinamik websiteleri

MySQL Veritabanı Sunucusu ve Apache-PHP ile ilişkisi ve entegrasyonu

PHP ile yazılmış en sık kullanılan hazır yazılımlar ile ilgili sık rastlanılan hatalar,çözüm yolları.

Sistem yönetimi için MySQL Araçları ve kullanımı

3.E-Posta Sunucuları

Nasıl Çalışır? DNS ve E-Posta ilişkisi.

E-Posta sunucuları hakkında genel bilgi ve türlerine göre ayırımı,

Kurumsal iş birliği yazılımları Microsoft Exchange rakipleri

E-Posta iletişiminde kullanılan protokoller (SMTP,POP,IMAP)

Antispam ve antivirus Sistemleri

E-posta istemciler ve konfigurasyonu,açık kaynak kodlu yazılımlar hakkında bilgi

İleri düzey e-posta sunucu ayarları

Bölüm sonu Genel Örnek Uygulama:

Tüm bileşenleri ve hosting kontrol paneli ile bir web sunucusu kurulumu

D.UYGULAMALAR

Web sunucularında Hosting Kontrol Yazılımlarının (hosting paneller) kurulumları

Zimbra E-posta ve ortak çalışma sunucusunun kurulumu

 

Joomla ve WordPress Hosting

En basit haliyle uyum problemleri ya bileşen eksikliğinden ya da dosya sistemi üzerine yazma haklarından ortaya çıkar.Bu sadece hazır scriptlere mahsus bir durum da değildir esasında.Joomla’nız,  wordpress’iniz ya da elinizdeki varolan ve kullanmak istediğiniz herhangi bir yazılım ,eğer hosting alanında dosya oluşturabiliyor veya silebiliyorsa,kullandığı tüm bileşenler serverda destekleniyorsa güzel güzel çalışır.

Bu uyumluluğun var olup olmadığını anlamanın iki basit yolu vardır.

Konu php bileşenleri ise;örneğin php-xml php-mbstring gibi,

Satın aldığınız hostinginizde phpinfo.php adıyla bir dosya oluşturun.ismin önemi yok.uzantısı php olsun yeter.ve içine şunları yazın

<?php
phpinfo();
?>

Daha sonra alanadınızla birlikte bu dosyanın tam yolunu tarayıcınızın adres satırına yazarak çağırın.Karşınıza tam da şu şekilde bir ekran gelecektir.(Eğer phpinfo() fonksiyonu birşekilde kapatılmamışsa!)

Karşınıza gelen bu upuzun sayfada sırasıyla hangi php bileşenlerin yüklü olduğunu görebilir,kullanmak istediğiniz scriptin gereksinimleriyle karşılaştırabilirsiniz.

Eğer konu yazma izinleri ile ilgili ise aynı dosyada üçüncü satıra dikkat etmenizi tavsiye ederim.Örneğimizde,bu satırda CGI/FastCGI yazmaktadır.Burada sadece CGI,Apache2 Handler,ISAPI extension hatta php/FPM de yazabilirdi.

Apache2 Handler yazıyorsa başınız yazma izinleriyle dertte demektir.Dosyaları webden yüklemeniz için yazma izinlerini ve dosya sahipliklerini değiştirtmek zorunda kalacaksınız.Daha sonra da bu dosyaları silmek istediğinizde hosting firmanıza telefon veya çağrı açmak zorunda kalacaksınız.ISAPI’ de de aynı durum sözkonusu.

Bu tip sorunlarla karşılaşmamak için barındırma hizmeti satın almadan önce firmayla görüşüp hangi hosting kontrol paneli kullandıklarını sormanızda fayda var.Plesk ise php/fastcgi,cpanel ise phpsuexec,directadmin ise suphp kullanıp kullanmadıklarını sorun.Alacağınız yanıt evet ise joomla veya wordpress bu bakımdan sorunsuz çalışabilir manasına gelecektir.

Web Sunucu Güvenliği İpuçları

Linux web sunucularda temp dizini güvenliği

Web sunucunuzdaki geçici işlemler için dosya oluşturulan dizin /tmp dizinidir.Bir web sunucusunda genelde /tmp dizini üzerine tüm kullanıcılar yazma okuma izinlerine sahip oluyor.Böylece herkesin yazabildiği ve okuyabildiği bir alan güvenlik riskini arttırıyor.

Bu riski bir nebze düşürmek için /tmp dizinini ayrı bir partition olarak bağlamalı ve için kod çalıştırılamaz şekilde ayarlamalısınız.

Eğer işin bu kısmını düşünmeden sunucu kurmuşsanız ve diskinizde boş alan yoksa aşağıdaki linux/unix işletim sistemlerine özgü raw disk image mount alternatifini kullanabilirsiniz.

Önce tmp bölümün ne kadar alana gereksinim duyduğuna karar verin ve bunun için diskinizdeki boş alanı kontrol edin

Ssh üzerinden root kullanıcısı ile bağlıyken şu komutu verin;

 

[root@localhost ]# df -h

 

/dev/sda1 214G 130G 74G 64% /

 

 

Burada / dizininde 74 Gb boş alan olduğunu görüyoruz.Bize tahminen 15 gb tmp dizini yeterli olabilir.

Şimdi disk imajı oluşturma ve sisteme bağlama aşamasındayız.Önemli servislerinizi (mysql,apache vb.) durdurup /tmp dizin içeriğinizi bir yere yedekleyin .Daha sonra aşağıdaki komutları sırasıyla yazın.

dd if=/dev/zero of=/usr/tmpMnt bs=1024 count=15000000

 

/sbin/mke2fs /usr/tmpMnt

 

/usr/tmpMnt is not a block special device.
Proceed anyway? (y,n) y

 

 

 

Bu komutları sırasıyla uyguladığınızda artık /usr altında 15 gb ‘lık tmpMnt dosyanızın olduğunu görebilirsiniz.Imajı sisteme tmp olarak bağlayalım;

mount -o loop,noexec,nosuid,rw /usr/tmpMnt /tmp

 

Bu komuttan sonra hiçbir hata çıkmadıysa disk imajı tmp olarak bağlanmış demektir.Daha önce başka bir yere almış olduğunuz dosyaları şimdi /tmp ‘e tekrar aktarıp servislerinizi çalıştırabilirsiniz.

Ayarların her açılışta yüklenmesi için,

nano ile /etc/fstab dosyasını açıp alttaki satırı dosyanın en altına yazın.

/usr/tmpMnt /tmp ext2 loop,noexec,nosuid,rw 0 0

 

Not 1: Bu işlemler sonucunda /tmp dizinin izinleri değişmiş olabilir.

chmod 1777 /tmp çalıştırın.

Not 2: /usr/tmpMnt yolu zorunlu değildir.İstediğiniz klasörde istediğiniz isimle imaj dosyasını oluşturabilirsiniz.Yeterki fstabdaki isimler doğru olsun.

Not 3: Herşey bittikten sonra mount komutu ile /tmp dizinin doğru bağlandığına emin olun.

 

 

 

 

 

 

 

 

Centos 5.x Php 5.3 kurulumu

Şu anda php ‘nin güncel sürümü olan 5.3.3 paketinin centos 5.x webservera kurulumu için önce extra paket depolarının yum ayarlarını yapıyoruz.

Sunucuya ssh üzerinden root olarak login olduktan sonra aşağıdaki epel paketi sisteminize indirin

[root@server ~]# rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm

Ardından php 5.3 paketinin bulunduğu depoyu kullanabilmeniz için şu adresten indireceğiniz rpm paketini şu şekilde sisteminize kurun.

  • [root@server ~]# wget http://rpms.famillecollet.com/enterprise/remi-release-5.rpm
  • [root@server ~]# rpm -ihv remi-release-5.rpm

Artık php 5.3 kurmaya hazırsınız.Aslında paket bağımlılıkları ve sistemin güncel olması açısından buna php ve mysql güncellemesi de diyebiliriz.Son olarak;

[root@server ~]# yum –enablerepo=remi update php-\* mysql-\*

Böylece php ,mysql kütüphaneleri ve mysql veritabanını upgrade etmiş oldunuz.Son olarak service httpd restart komutu ile apache’yi resetledikten sonra web alanınıza bir yere bir phpinfo() kodu yazıp güncellemeyi kontrol edebilirsiniz.