Ağ Güvenliği 215 views 0

Google Cloud ile Moodle Kurulumu

Bugün Google’ın suyuna ekmek banacağız, Cloud servislerinde kullanabileceğimiz 300$ dolar bakiye ile CentOS kaldırıp, Apache Web Service kurup Moodle’ı üzerine inşa edeceğiz.
Kısa bir teşekkürü borç bilirim. Self-hosted denemelerine beni teşfik ettiği için Ali Sezişli hocama teşekkürler 🙂

Moodle Nedir?

Kısaca Moodle açık kaynak kodlu bir uzaktan eğitim sistemidir. Aklımızda bi soru işareti kalmadığına göre başlayabiliriz. Öncelikle Google Cloud üzerinden nasıl server ayağa kaldıracağımıza bakalım.

Google Cloud

Google Cloud Console’a gittikten sonra soldaki menüden Compute Engine menüsüne tıklıyoruz Sanal Makine Örnekleri sayfasında Oluşturun butonuna tıklıyoruz.

Makinemizin adını verdikten sonra, CPU ve Ram tercihlerimizi yapıyoruz, ben sadece öğrenmek için kullanacağım için çok bir kaynağa ihtiyaç duymuyorum. Sizde kullanmayacaksanız düşük çekirdek ve bellek tercih etmenizi öneririm. Aynı şekilde disk boyutunu 20 GB olarak ayarlıyorum. Daha sonra ise Önyükleme diski bölümünden CentOS seçiyoruz.

SSH Bağlantısı İçin Ayarlar

Şimdi ise Linux üzerinden ssh-keygen aracı ile SSH anahtarı oluşturuyoruz. Ben daha önce oluşturduğum SSH anahtarını kullanacağım. Ancak nasıl oluşturacağınızı bilmiyorsanız kısaca bahsedeyim, konsolunuza ssh-keygen yazıp enterladıktan sonra sizden oluşturmak istediğiniz dosya adını istiyor olacak, istediğiniz bir ismi verebilirsiniz. Daha sonra bir şifre belirlemenizi ve sonrasında şifreyi onaylamanızı isteyecektir, şifrenizi belirledikten sonra “dosya_adiniz.pub” şeklinde “/home/kullanici_adiniz/.ssh” dizini içerisinde SSH anahtarınızı oluşturmuş olacak. “cat” komutu ile dosya içerisindeki anahtarımızı kopyalıyoruz.

SSH anaharımızı oluşturduğuma göre Google Cloud Conlose’a geri dönebiliriz. Güvenlik Duvarı kısmından HTTP ve HTTPS trafiğine izin veriyoruz.

Daha sonra ise hemen HTTPS trafiğine izin ver checkbox’ının altında bulunan, mavi ile yazılmış Yönetim, güvenlik, diskler, ağ iletişimi, tek kiracılı yazısına tıklıyoruz ve Güvenlik sekmesine geliyoruz. Burada oluşturuduğumuz SSH anahtarını yapıştıyor ve kaydediyoruz. Sonrasında ise oluştur butonuna tıklayıp, Google’ın bize makinemizi ayağı kaldırmasını bekliyoruz.

Gördüğünüz gibi bir kaç saniye içerisinde makinemiz kullanıma hazır vaziyete geliyor. IP adresimizi alıp konsola geçme zamanı 🙂

SSH Bağlantısı

Artık başlıyoruz, kemerleri takalım…
Konsolumuza şu komut ile birlikte makinemizin IP adresini yazıyoruz

Sonrasında bize bir soru soruyor, yes diyoruz ve şifre istiyor. Burada SSH anahtarı oluştururken belirlediğimiz şifreyi giriyoruz. Ve artık makinedeyiz.

Kurulum işlemleri

Öncelikle Super User parolası belirliyorum ve root’a geçiş yapıyorum.

Daha sonra ise “EPEL” deposunu yüklüyoruz.

Şimdi ise Webtatic reposunu ekliyoruz. Webtatic reposu web ile alakalı paketleri içeren bir CentOS reposudur.

PHP 7 ve diğer gerekli bağımlılıkları kurmamız gerekiyor.

Apache Web Server kurulu değil ise kuralım, bende kurulu imiş.

Kurulum işlemi tamamlandıktan sonra Apache servisi başlatmamız ve etkinleştirmemiz gerekiyor.

Apache servisleri için bir konfigürasyon dosyasını düzenlememiz gerekiyor. /etc/httpd/conf dizini içerisindeki httpd.conf dosyasını açıyoruz ve 119.satırda bulunan satırda ufak bir değişiklik yapıp şu hale getiriyoruz.

Ve Apache servisi yediden başlatıyoruz.

Şimdi ise MariaDB servisini kurup, yine başlatıp etkinleştiriyoruz.

MariaDB’nin Moodle ile uyulum olması için “InnoBD” motorunu etkinleştirmemiz gerekiyor. Bunun için ise yine bir konfigürasyon dosyasını düzenlememiz gerekiyor. etc/my.cnf.d/ dizininde bulunan server.conf dosyasını düzenliyoruz ve şu kodları ekliyoruz.

Sonrasında MariaDB’yi tekrar başlatıyoruz.

Sıra geldi veritabanı işlemlerine, mysql_secure_installation ile veritabanını kuruyoruz.

İlk olarak bizden bir parola isteyecek, direkt olarak enter’a basıyoruz ve gerekli ayarları yapıyoruz.

Veritabanı İşlemleri

Konsoluma mysql yazıp MariaDB’yi başlatıyoruz.

Komutu ile parolamızı belirliyoruz. Ardından veritabanını oluşturuyoruz.

Sonrasında ise ‘user’ kullancısına bütün yetkileri vermemiz gerekiyor, ilerleyen kısımlarda anlayacaksınız neden olduğunu.

MariaDB ile işimiz bitti exit komutunu verip çıkabiliriz.

Moodle İndirme ve Kurma

Makinemizde wget olmadığı için öncelikle bunu kuruyoruz.

Moodle’ı indiriyoruz ve direkt /var/www/html/ dizinine arşivden çıkarıyoruz.

Ve Apache’ye bu klasörler için yetki veriyoruz.

Ek olarak moodledata adında bir klasör oluşturuyoruz /var/www/html dizini içinde.

SELinux Ayarlamaları

Öncelikle SELinux yönetim araçlarını kuruyoruz.

Ve sırasıyla şu işlemleri yapıyoruz.

CLI ile Moodle Kurulumu

Artık kuruluma başlayabiliriz. Umarım bir hata almayız 😀

İlk soruda bize hangi dilde olacağını soruyor. Küçük harfler ile “tr” yazıp devam ediyoruz. Sonrasında bizden istediği bilgileri giriyoruz.

Kurulum işleminin bitmesini bekliyoruz. Bittikten sonra config.php dosyasına gerekli izinleri vermemiz gerekiyor.

Ek olarak Moodle’ın düzgün çalışması için crontab ayarlamamız gerekiyor.

Şu komutu ekleyip kaydediyoruz.

Ve Apache’yi yeniden başlatıyoruz.

Ve kurulum bitti. Moodle’ı kullanabiliriz 🙂

{0xc01d}

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir