Raspberry Pi Web Server Kurulumu

Raspberry Pi Web Server Kurulumu

Raspberry Pi Web Server Kurulumu

 Merhaba arkadaşlar bu yazımda sizlere Raspberry Pi cihazınıza nasıl Web Server kurulumu yapabileceğinizi anlatmaya çalışacağım. Yazının sonunda Apache, Php, FTP, MySQL ve PhpMyAdmin gibi temel web sunucularında bulunan araçları sistemimize kurmuş olacağız.

Neyse girişi fazla uzatmadan kuruluma başlayalım.

Apache 2 Kurulumu

sudo apt install apache2 -y
İlk olarak yukarıdaki kodu yazıyoruz ve Apache 2 kurulumuna başlıyoruz. Kurulum tamamlandığı ortak ağa bağlı olan herhangi bir cihazdan ya da Raspberry cihazımızdan, Raspberry cihazımızın lokal ağ ip adresini tarayıcımıza girerek web sayfasına girebiliyoruz. Girdiğimiz zaman aşağıdaki gibi bir sayfa bizi karşılayacak ve sayfada "It's Work" yazacaktır.

RPİ Apache2

Eğer yukarıdaki sayfaya girmek için gerekli olan IP adresini bilmiyorsanız konsola/terminale 
hostname -I
kodunu girerek bulabilirsiniz. Bu komut size aşağıdaki gibi bir çıktı verecektir.

RPI IP

Buraya kadar sorunsuzca geldiysek artık Apache2 için gerekli izinleri ayarlamamız gerekiyor.

Apache2 İzin Ayarları

sudo a2enmod rewrite
sudo systemctl restart apache2
sudo chown -R pi:www-data /var/www/html/
sudo chmod -R 770 /var/www/html/
sudo nano /etc/apache2/apache2.conf // bu komut ile apache2.conf dosyasını açıyoruz.
Yukarıdaki kodları sırası ile teker teker girmeniz gerekiyor, son komut bir dosyayı düzenlememizi sağlıyor.

Dosyaya ilk girdiğimiz zaman şu şekilde gözükecektir.

Directory /var/www/
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
/Directory

Buradaki "AllowOverride None" kısmını "AllowOverride All" olarak değiştirmemiz gerekiyor. Yani dosyanın son hali şu şekilde olmalı.

Directory /var/www/ 
Options Indexes FollowSymLinks 
AllowOverride All
Require all granted 
/Directory

Not: CTRL + O ile kaydet dersiniz ve ardından Enter tuşuna bastığınız zaman dosya kaydolur. Dosyadan çıkmak için CTRL + X tuşuna basmanız gerekiyor.

Dosyamızı bu şekile getirdikten sonra kaydedip kapatıyoruz. Daha sonrasında ise Apache serverimizi yeniden başlatmamız gerekiyor bunun için şu komutu kullanabilirsiniz.
sudo service apache2 restart

Yeniden başlatmadan hemen sonra isterseniz yukarıdaki gibi web sayfanıza girip kontrol edin. Açılıyor ise sorun yok demektir.

PHP Kurulumu

sudo apt install php libapache2-mod-php -y
Komutu ile sorunsuz bir şekilde PHP 7 sürümü kurulacaktır.
Kurulumdan sonra PHP sürümümüz ve durumu hakkında bilgi almak için www klasörü içerisine inde.php adında bir dosya oluşturup daha sonrasında ise Php Info fonksiyonunu çağırmamız gerekiyor.

Apache kurulumu ile gelen index.html dosyasını silmek için aşağıdaki kodu çağırıyoruz.
sudo rm /var/www/html/index.html
bu koddan hemen sonra index.php yi oluşturmak ve php info fonksiyonunu çağırmak için aşağıdaki kodu giriyoruz.
echo "<?php phpinfo ();?>" > /var/www/html/index.php

Bu işlemlerden sonra aşağıdaki gibi bir ekran karşınıza geliyorsa PHP sorunsuzca kurulmuş demektir.

PRI PHP


MYSQL Kurulumu

sudo apt install mysql-server php-mysql -y // MySQL kurulumu yaptığımız kodumuz Eğerki hata verir ise sudo apt install mariadb-server php-mysql -y ile mariaDB kurulumu yapabilirsiniz.
sudo service apache2 restart // Burada apache yi yeniden başlatıyoruz
sudo mysql_secure_installation // Güvenlik ile ilgili kurulumları açıyoruz.

Yukarıdaki kodları sırası ile giriyoruz.
Son kodumuzu girdikten sonra size bir kaç soru çıkacaktır gelin bunlara sırası ile bakalım.
  1. İlk olarak cihazınızın şifresini girmenizi isteyecektir. (RaspiOS kullanıyorsanız "raspberry" dir. Oturumu açtığınız şifre yani.)
  2. SQL için yeni şifre ayarlamak istiyormuşsunuz diye soruyor, "Y" ye basıyoruz ve yeni SQL şifremizi giriyoruz ve enterliyoruz 2 kere.
  3. Anonim kullanıcıları kapatmak için "Y" ye basıyoruz.
  4. Uzaktan Kök verilere erişmeyi engellemek için "Y" ye basıyoruz.
  5. Test veri tabanını kaldırmak için "Y" ye basıyoruz.
  6. Erişim bilgilerini içeren tabloları güncellemek için "Y" ye basıyoruz.

İşlemleri eksizsiz yaptığınız taktirde aşağıdaki gibi bir ekran sizi karşılayacaktır ve "Thanks for using MariaDB!" yazacaktır.

RPI Mysql


MySQL kurulumumuz burada tamamlanıyor.

PhpMyAdmin Kurulumu

sudo apt install phpmyadmin -y
Yukarıdaki kod ile kurulumu başlatıyoruz.

PhpMyAdmin Kurulumu



Karşımıza böyle bir ekran geliyor, burada "Apache2" yi seçip enter tuşuna basıyoruz.
Karşımıza gelen "Dbconfig-common" içeren kısımda "No" yu seçiyoruz ve enterliyoruz.
İşlemlerin sonunda artık "ipadresi/phpmyadmin" adresinden phpmyadmin e girebiliriz.

PhpMyAdmin

Adrese girdiğiniz zaman yukarıdaki gibi web sayfası karşınıza geliyor ise sorunsuz bir şekilde kurulum tamamlanmış demektir. Şimdi site dosyalarını sürekli bir usb ile cihazımıza yüklemek ile uğraşmamak adına FTP server kurulumu gerçekleştirmemiz iyi olur.
Not: Eğer ki bu işlemlerden sonra PhpMyAdmin e girmeye çalıştığınızda 
NOT FOUND The requested URL /phpmyadmin was not found on this server.
böyle bir hata alırsanız yapmanız gereken şey şudur.
sudo nano /etc/apache2/apache2.conf
ile ilk başta düzenlediğimiz dosyaya tekrar giriyoruz ve içerisine 
Include /etc/phpmyadmin/apache.conf
ekleyip tekrardan Apache yi yeniden başlatıyoruz.
 sudo service apache2 restart
Apacheyi yeniledikten sonra artık sorunsuzca girmesi gerekiyor.

Not2: PhpMyAdmin üzerinden "root" girişi yapamazsınız bu yüzden hesap oluşturmanız gerekiyor.

sudo mysql -uroot -p
CREATE USER 'kullaniciAdi'@'localhost' IDENTIFIED BY 'sifreniz';
GRANT ALL PRIVILEGES ON *.* TO 'kullaniciAdi'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;

ile hesap oluşturabilirsiniz ve oluşturduğunuz hesaba girebilirsiniz.

FTP Server Kurulumu

İlk olarak aşağıdaki komut ile kurulumu başlatıyoruz.
sudo apt install vsftpd -y
Daha sonrasında aşağıdaki kod ile vsftpd dosyasını düzenlemek için açıyoruz.
sudo nano /etc/vsftpd.conf
Dosyanın içerisinde
local_enable=YES 
ssl_enable=NO
Kısımlarını buluyoruz ve
#local_enable=YES 
#ssl_enable=NO

Olarak değiştiriyoruz daha sonra dosyanın en altına şunları eklemeniz gerekiyor.

# CUSTOM 
ssl_enable=YES 
local_enable=YES 
chroot_local_user=YES 
local_root=/var/www user_sub_token=pi 
write_enable=YES local_umask=002 
allow_writeable_chroot=YES
ftpd_banner= urhoba.net FTP hizmetine hos geldiniz.

Buradaki urhoba.net kısmına istediğinizi yazabilirsiniz. Bu kullanıcılar veya siz bağlandığınız zaman bastırılacak yazıdır. 

Şimdi sırası ile aşağıdaki komutları çalıştırmanız gerekiyor.

sudo usermod -a -G www-data pi
sudo usermod -m -d /var/www pi
sudo chown -R www-data:www-data /var/www
sudo chmod -R 775 /var/www
sudo reboot

Bu komutları da çalıştırdığınız zaman en sonunda cihazınız yeniden başlayacaktır ve artık FTP sunucumuzda eğer bir hata yapmadıysak çalışıyor olacaktır.

Filezilla

Host: ftp://ipadresi
Kullanıcı adı: Pi
Şifre: raspberry (Cihaza girdiğiniz şifre ile aynı.)
Port: 21

Artık bu bilgiler ile ve herhangi bir ftp client programı ile giriş yapabilir ve site dosyalarınızı yükleyebilirsiniz.