Nextcloud’u Ubuntu 18.04 Üzerine Kurulumu ve Yapılandırması
Nextcloud, verilerinizin kontrolünü size geri veren, açık kaynaklı ve güçlü bir kişisel bulut çözümüdür. Kendi sunucunuzda barındırarak dosyalarınızı senkronize edebilir, paylaşabilir, takvimlerinizi ve kişilerinizi yönetebilir, hatta gerçek zamanlı işbirliği yapabilirsiniz. Ubuntu 18.04 LTS (Long Term Support) sürümü, kararlılığı ve uzun süreli desteği sayesinde Nextcloud gibi kritik uygulamaları barındırmak için mükemmel bir platform sunar. Bu kapsamlı rehberde, Ubuntu 18.04 sunucunuz üzerinde Nextcloud’u baştan sona nasıl kuracağınızı ve temel ayarlarını nasıl yapılandıracağınızı adım adım öğreneceksiniz.
Nextcloud’u kendi sunucunuzda barındırmak, üçüncü taraf bulut hizmetlerinin aksine veri egemenliğinizi korumanızı sağlar. Gizlilik endişelerinden uzak, tamamen sizin kontrolünüzde bir ortamda dosyalarınıza erişebilir ve onları paylaşabilirsiniz. Bu makale, Nextcloud’un kurulumu için gerekli olan Apache web sunucusu, PHP ve MariaDB veritabanı gibi bileşenlerin kurulumunu ve yapılandırmasını ayrıntılı bir şekilde ele alacaktır. Ayrıca, güvenlik için SSL/TLS şifrelemesi (Let’s Encrypt ile) ve performans optimizasyonları gibi önemli adımlara da değineceğiz.
Bu rehber, temel Linux komut bilgisine sahip kullanıcılar için tasarlanmıştır ve her adımda net komutlar ve açıklamalar sunar. Rehberi takip ederek, kendi güvenli ve özel bulut depolama çözümünüzü başarıyla kurabilir ve yönetebilirsiniz.
Ön Gereksinimler
Nextcloud kurulumuna başlamadan önce aşağıdaki ön gereksinimleri karşıladığınızdan emin olun:
* Ubuntu 18.04 Sunucusu: Temiz bir Ubuntu 18.04 LTS kurulumuna sahip bir sunucuya ihtiyacınız var. Bu bir sanal makine (VM), fiziksel sunucu veya bulut sunucusu olabilir.
* Minimum Donanım Kaynakları:
* RAM: En az 2 GB RAM (küçük kurulumlar için 1 GB yeterli olabilir ancak performans sorunları yaşanabilir).
* CPU: En az 1 çekirdekli işlemci.
* Depolama: En az 20 GB boş disk alanı (Nextcloud yazılımı ve veritabanı için, depolayacağınız veriler hariç).
* SSH Erişimi: Sunucunuza SSH aracılığıyla erişebilmelisiniz.
* Sudo Yetkileri: Kurulum komutlarını çalıştırmak için sudo yetkilerine sahip bir kullanıcı hesabınız olmalıdır.
* Statik IP Adresi: Sunucunuz için statik bir IP adresi kullanmanız önerilir.
* Alan Adı (İsteğe Bağlı ama Önerilir): Nextcloud örneğinize bir alan adı (örn: cloud.ornek.com) atamak, özellikle SSL sertifikası kurulumu ve erişim kolaylığı açısından şiddetle tavsiye edilir. Bu rehberde alan adı kullanımını varsayacağız.
* Güvenlik Duvarı (UFW): Ubuntu’nun varsayılan güvenlik duvarı olan UFW’nin temel düzeyde yapılandırılmış olması iyi bir güvenlik uygulamasıdır.
Bu ön gereksinimler sağlandıktan sonra, Nextcloud kurulumuna başlayabiliriz.
Sistem Güncelleme ve Yükseltme
Herhangi bir yazılım kurulumuna başlamadan önce, sisteminizin paket listesini güncellemek ve mevcut paketleri en son sürümlerine yükseltmek iyi bir alışkanlıktır. Bu, potansiyel güvenlik açıklarını kapatmaya ve uyumluluk sorunlarını önlemeye yardımcı olur.
SSH ile sunucunuza bağlandıktan sonra aşağıdaki komutları çalıştırın:
sudo apt update
sudo apt upgrade -y
sudo apt update komutu, yerel paket indeksinizi günceller ve mevcut en son paket bilgilerini depolar. sudo apt upgrade -y komutu ise, indirilen paket bilgilerine göre sisteminizdeki tüm yüklü paketleri yükseltir. -y bayrağı, tüm sorulara otomatik olarak “evet” yanıtı vermenizi sağlar, böylece yükseltme işlemi kesintisiz devam eder. Bu işlem, sunucunuzun internet bağlantısına ve mevcut güncelleme sayısına bağlı olarak biraz zaman alabilir.
Apache Web Sunucusunu Kurma
Nextcloud, bir web sunucusuna ihtiyaç duyar. Bu rehberde, yaygın olarak kullanılan ve kararlı Apache web sunucusunu kullanacağız.
sudo apt install apache2 -y
Bu komut, Apache web sunucusunu ve ilgili tüm bağımlılıkları yükleyecektir. Kurulum tamamlandıktan sonra, Apache servisi otomatik olarak başlatılmalı ve sistem açılışında otomatik olarak çalışacak şekilde etkinleştirilmelidir. Aşağıdaki komutlarla bu durumu kontrol edebilirsiniz:
sudo systemctl start apache2
sudo systemctl enable apache2
sudo systemctl status apache2
systemctl status apache2 komutunun çıktısında “active (running)” ifadesini görmelisiniz.
Şimdi, sunucunuzun güvenlik duvarını (UFW) yapılandırmanız gerekebilir, böylece web trafiği sunucunuza ulaşabilir. İlk olarak, mevcut uygulama profillerini listeleyin:
sudo ufw app list
Bu komut, “Apache”, “Apache Full” ve “Apache Secure” gibi profilleri listelemelidir. “Apache Full” profili, hem HTTP (80) hem de HTTPS (443) trafiğine izin verir. Nextcloud için her ikisine de ihtiyacımız olacak.
sudo ufw allow 'Apache Full'
sudo ufw enable
sudo ufw status
sudo ufw enable komutu, güvenlik duvarını etkinleştirir (eğer daha önce etkinleştirilmediyse). sudo ufw status komutu, kuralların başarıyla uygulandığını ve “Apache Full” profilinin izin verilenler listesinde olduğunu göstermelidir.
Artık bir web tarayıcısı açıp sunucunuzun IP adresini (örn: http://your_server_ip) girerek Apache’nin düzgün çalıştığını doğrulayabilirsiniz. “Apache2 Ubuntu Default Page” başlıklı varsayılan bir sayfa görmelisiniz.
PHP ve Gerekli Modülleri Kurma
Nextcloud, PHP ile yazılmıştır ve çalışmak için belirli PHP modüllerine ihtiyaç duyar. Ubuntu 18.04 varsayılan olarak PHP 7.2 sürümünü içerir, bu da Nextcloud’un birçok sürümü için uygundur.
Aşağıdaki komutla PHP’yi ve Nextcloud için gerekli olan tüm modülleri kuralım:
sudo apt install php libapache2-mod-php php-mysql php-gd php-json php-curl php-intl php-imagick php-xml php-zip php-mbstring php-bz2 php-gmp php-bcmath php-fpm -y
Bu komut, PHP yorumlayıcısını (php), Apache için PHP modülünü (libapache2-mod-php) ve Nextcloud’un düzgün çalışması için gerekli olan çeşitli PHP uzantılarını (veritabanı bağlantısı, görsel işleme, JSON, cURL, uluslararasılaştırma, görüntü işleme, XML, sıkıştırma, çok baytlı dizeler, bzip2, GMP ve BCMath) yükleyecektir. php-fpm de performans için faydalı olabilir, ancak bu kurulumda Apache’nin mod_php modülünü kullanacağız.
PHP Ayarlarını Optimize Etme
Nextcloud’un sorunsuz çalışması ve büyük dosyaları yükleyebilmesi için bazı PHP ayarlarını optimize etmemiz gerekmektedir. PHP yapılandırma dosyası, genellikle /etc/php/7.2/apache2/php.ini yolunda bulunur (PHP sürümünüz farklıysa yol değişebilir).
sudo nano /etc/php/7.2/apache2/php.ini
Aşağıdaki değerleri bulun ve önerilen şekilde değiştirin veya ekleyin:
* memory_limit: Nextcloud’un kullanabileceği maksimum bellek miktarını belirler. Büyük dosyalar veya çok sayıda kullanıcı için daha yüksek bir değer gerekebilir.
memory_limit = 512M
* upload_max_filesize: Yüklenebilecek maksimum dosya boyutunu belirler.
upload_max_filesize = 1024M
* post_max_size: HTTP POST isteklerinin kabul edebileceği maksimum veri boyutunu belirler. upload_max_filesize değerinden büyük veya ona eşit olmalıdır.
post_max_size = 1024M
* max_execution_time: Bir PHP betiğinin çalışmasına izin verilen maksimum süreyi saniye cinsinden belirler. Uzun süren işlemler için artırılabilir.
max_execution_time = 360
* date.timezone: PHP’nin tarih ve saat fonksiyonları için kullanılacak zaman dilimini belirler. Sunucunuzun bulunduğu coğrafi konuma göre ayarlayın. Örneğin, Türkiye için:
date.timezone = Europe/Istanbul
Geçerli zaman dilimlerinin bir listesini [PHP belgelerinde](https://www.php.net/manual/en/timezones.php) bulabilirsiniz.
Değişiklikleri kaydedip (CTRL+O, Enter) ve nano düzenleyiciden çıkın (CTRL+X).
PHP ayarlarının etkili olması için Apache web sunucusunu yeniden başlatmanız gerekir:
sudo systemctl restart apache2
MariaDB Veritabanı Sunucusunu Kurma
Nextcloud, tüm verilerini (kullanıcı bilgileri, dosya meta verileri, uygulamalar vb.) depolamak için bir veritabanına ihtiyaç duyar. Bu rehberde, MySQL ile uyumlu ve yüksek performanslı bir veritabanı sunucusu olan MariaDB’yi kullanacağız.
sudo apt install mariadb-server mariadb-client -y
Kurulum tamamlandıktan sonra, MariaDB servisi otomatik olarak başlamalıdır. Servisin durumunu kontrol edebilirsiniz:
sudo systemctl status mariadb
Şimdi MariaDB kurulumunu güvence altına almamız gerekiyor. Bu, root şifresi belirleme, anonim kullanıcıları kaldırma ve uzaktan root erişimini devre dışı bırakma gibi adımları içerir.
sudo mysql_secure_installation
Bu komut sizi bir dizi soruyla yönlendirecektir:
1. Enter current password for root (enter for none): İlk kurulumda root şifresi olmadığı için doğrudan Enter tuşuna basın.
2. Set root password? [Y/n]: Y yazıp güçlü bir root şifresi belirleyin. Bu şifreyi unutmayın!
3. Remove anonymous users? [Y/n]: Y yazarak anonim kullanıcıları kaldırın.
4. Disallow root login remotely? [Y/n]: Y yazarak root kullanıcısının uzaktan giriş yapmasını engelleyin. Bu, güvenlik için önemlidir.
5. Remove test database and access to it? [Y/n]: Y yazarak test veritabanını kaldırın.
6. Reload privilege tables now? [Y/n]: Y yazarak ayrıcalık tablolarını yeniden yükleyin.
Tüm adımları tamamladıktan sonra, MariaDB kurulumunuz daha güvenli hale gelecektir.
Nextcloud İçin Veritabanı ve Kullanıcı Oluşturma
Şimdi Nextcloud’un kullanacağı özel bir veritabanı ve veritabanı kullanıcısı oluşturmalıyız. Bu, Nextcloud’un kendi verilerine erişimini izole eder ve güvenlik risklerini azaltır.
MariaDB komut istemcisine root olarak giriş yapın:
sudo mysql -u root -p
İstendiğinde, mysql_secure_installation sırasında belirlediğiniz root şifresini girin.
MariaDB istemcisine girdikten sonra, aşağıdaki komutları sırasıyla çalıştırın (kendi veritabanı adınızı, kullanıcı adınızı ve güçlü şifrenizi kullanmayı unutmayın):
CREATE DATABASE nextcloud_db;
CREATE USER 'nextcloud_user'@'localhost' IDENTIFIED BY 'YOUR_STRONG_PASSWORD';
GRANT ALL PRIVILEGES ON nextcloud_db.* TO 'nextcloud_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
* CREATE DATABASE nextcloud_db;: nextcloud_db adında yeni bir veritabanı oluşturur.
* CREATE USER 'nextcloud_user'@'localhost' IDENTIFIED BY 'YOUR_STRONG_PASSWORD';: nextcloud_user adında yeni bir kullanıcı oluşturur ve sadece localhost üzerinden erişime izin verir. YOUR_STRONG_PASSWORD yerine güçlü bir şifre belirleyin.
GRANT ALL PRIVILEGES ON nextcloud_db. TO 'nextcloud_user'@'localhost';: nextcloud_user‘a nextcloud_db veritabanı üzerindeki tüm ayrıcalıkları verir.
* FLUSH PRIVILEGES;: Ayrıcalık tablolarını yeniden yükler, böylece değişiklikler hemen etkili olur.
* EXIT;: MariaDB istemcisinden çıkar.
Artık Nextcloud için hazır bir veritabanı ve kullanıcı hesabımız var.
Nextcloud’u İndirme ve Yapılandırma
Şimdi Nextcloud’un en son kararlı sürümünü indireceğiz ve web sunucumuzun erişebileceği bir konuma taşıyacağız.
İlk olarak, geçici dizine gidin:
cd /tmp
Nextcloud’un resmi indirme sayfasından en son kararlı sürümün .zip dosyasının bağlantısını alın. Bu rehber yazıldığı sırada (veya genel olarak), bağlantı https://download.nextcloud.com/server/releases/latest.zip şeklinde olabilir veya belirli bir sürüm numarası içerebilir (örn: nextcloud-28.0.0.zip). En güncel ve kararlı sürümü indirmek için aşağıdaki gibi bir komut kullanın:
wget https://download.nextcloud.com/server/releases/latest.zip
İndirme tamamlandıktan sonra, dosyayı açmanız gerekecek. unzip paketi yüklü değilse, önce onu kurun:
sudo apt install unzip -y
Şimdi Nextcloud arşivini açın:
sudo unzip latest.zip
Bu komut, /tmp dizinine nextcloud adında bir dizin oluşturacaktır. Nextcloud dosyalarını Apache’nin web kök dizinine (genellikle /var/www/html/) taşımamız gerekiyor.
sudo mv nextcloud /var/www/html/
Nextcloud dosyalarının ve dizinlerinin doğru izinlere sahip olması çok önemlidir. Apache web sunucusu, www-data kullanıcısı ve grubu altında çalışır. Bu nedenle, Nextcloud dizininin sahipliğini www-data olarak değiştirmemiz gerekiyor:
sudo chown -R www-data:www-data /var/www/html/nextcloud
sudo chmod -R 755 /var/www/html/nextcloud
* chown -R www-data:www-data /var/www/html/nextcloud: /var/www/html/nextcloud dizini ve içindeki tüm dosyaların ve alt dizinlerin sahipliğini www-data kullanıcısına ve grubuna atar.
* chmod -R 755 /var/www/html/nextcloud: Dizinlere okuma ve yürütme, dosyalara ise okuma ve yazma izni verir.
Bu adımlar, Nextcloud’un dosyaları oluşturmasına, değiştirmesine ve silmesine izin verirken, aynı zamanda uygun güvenlik seviyesini korur.
Nextcloud İçin Apache’yi Yapılandırma
Nextcloud’u alan adınız veya IP adresiniz üzerinden erişilebilir kılmak için Apache’de bir Sanal Host (Virtual Host) yapılandırması oluşturmamız gerekiyor. Bu, Apache’ye Nextcloud dosyalarını nerede bulacağını ve bu alan adına gelen istekleri nasıl yöneteceğini söyler.
Nextcloud için yeni bir yapılandırma dosyası oluşturalım:
sudo nano /etc/apache2/sites-available/nextcloud.conf
Aşağıdaki içeriği dosyaya yapıştırın. your_domain.com yerine kendi alan adınızı veya sunucunuzun IP adresini kullanmayı unutmayın. Eğer alan adı kullanıyorsanız, ServerAlias satırını da ekleyebilirsiniz.
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/nextcloud
ServerName your_domain.com # Alan adınızı buraya yazın
# ServerAlias www.your_domain.com # İsteğe bağlı, www ile erişim için
Require all granted
Options FollowSymlinks MultiViews
AllowOverride All
Dav off
SetEnv HOME /var/www/html/nextcloud
SetEnv HTTP_HOME /var/www/html/nextcloud
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
Bu yapılandırma, Apache’ye 80 numaralı porttan gelen istekleri /var/www/html/nextcloud dizinindeki dosyalarla ilişkilendirmesini söyler. AllowOverride All yönergesi, Nextcloud’un kendi .htaccess dosyalarını kullanarak URL yeniden yazma gibi kurallarını uygulayabilmesini sağlar.
Dosyayı kaydedip çıkın (CTRL+O, Enter, CTRL+X).
Şimdi, Apache’nin Nextcloud için gerekli olan bazı modüllerini etkinleştirmemiz gerekiyor:
sudo a2enmod rewrite dir headers env mime
* rewrite: URL yeniden yazma kurallarını etkinleştirir.
* dir: Dizin indeksleme ve varsayılan dosya işleme için.
* headers: HTTP başlıklarını yönetmek için.
* env: Ortam değişkenlerini yönetmek için.
* mime: Dosya türlerini belirlemek için.
Ardından, yeni oluşturduğumuz Nextcloud sanal hostunu etkinleştirin:
sudo a2ensite nextcloud.conf
Varsayılan Apache “hoş geldiniz” sayfasını devre dışı bırakmak iyi bir uygulamadır, böylece sadece Nextcloud siteniz erişilebilir olur:
sudo a2dissite 000-default.conf
Son olarak, tüm bu değişikliklerin etkili olması için Apache’yi yeniden başlatın:
sudo systemctl restart apache2
Nextcloud Web Kurulumcusuna Erişme
Artık tüm arka uç bileşenleri kuruldu ve yapılandırıldı. Bir web tarayıcısı açın ve alan adınızı veya sunucunuzun IP adresini kullanarak Nextcloud kurulum sihirbazına erişin:
http://your_domain.com veya http://your_server_ip
Eğer her şey doğru yapılandırıldıysa, Nextcloud’un hoş geldiniz sayfasını görmelisiniz.
1. Yönetici Hesabı Oluşturma:
* Bir yönetici kullanıcı adı ve güçlü bir şifre belirleyin. Bu, Nextcloud örneğinizin ana hesabıdır.
2. Veri Klasörü:
* Varsayılan veri klasörü genellikle /var/www/html/nextcloud/data olarak ayarlanmıştır. Güvenlik için, bu klasörü web kök dizininin dışına taşımak önerilir (örn: /var/nextcloud_data). Eğer değiştirmek isterseniz, bu dizini manuel olarak oluşturmanız ve www-data kullanıcısına doğru izinleri vermeniz gerekecektir:
sudo mkdir -p /var/nextcloud_data
sudo chown -R www-data:www-data /var/nextcloud_data
Ardından web arayüzünde yeni yolu belirtin.
3. Veritabanı Yapılandırması:
* Veritabanı kullanıcı adı: nextcloud_user (daha önce oluşturduğunuz kullanıcı adı)
* Veritabanı şifresi: YOUR_STRONG_PASSWORD (daha önce belirlediğiniz şifre)
* Veritabanı adı: nextcloud_db (daha önce oluşturduğunuz veritabanı adı)
* Veritabanı ana bilgisayarı: localhost (varsayılan)
4. Kurulumu Tamamlama:
* “Kurulumu tamamla” düğmesine tıklayın. Nextcloud, veritabanını oluşturacak ve gerekli ilk yapılandırmaları yapacaktır. Bu işlem birkaç dakika sürebilir.
Kurulum tamamlandığında, Nextcloud’un ana kontrol paneline yönlendirileceksiniz.
Certbot ile SSL Yapılandırma (Önerilir)
Nextcloud’unuzun güvenliğini sağlamanın en önemli adımlarından biri, HTTPS (SSL/TLS) şifrelemesini etkinleştirmektir. Bu, sunucunuz ile kullanıcılarınız arasındaki tüm iletişimin şifrelenmesini sağlar. Let’s Encrypt, ücretsiz ve otomatik SSL sertifikaları sunar ve Certbot aracı bu süreci basitleştirir.
Öncelikle, Certbot ve Apache eklentisini kurun:
sudo apt install certbot python-certbot-apache -y
Şimdi, alan adınız için bir SSL sertifikası almak ve Apache yapılandırmanızı otomatik olarak güncellemek için Certbot’u çalıştırın:
sudo certbot --apache
Certbot sizi bir dizi soruyla yönlendirecektir:
1. E-posta adresi: Let’s Encrypt bildirimleri ve kayıp anahtar kurtarma için geçerli bir e-posta adresi girin.
2. Hizmet Şartları: Hizmet şartlarını kabul etmek için A (Agree) yazın.
3. EFF Kuruluşuyla paylaşım: E-posta adresinizi EFF ile paylaşmak isteyip istemediğinizi seçin (Y veya N).
4. Alan adı seçimi: Certbot, Apache yapılandırmanızda bulduğu tüm alan adlarını listeleyecektir. Nextcloud için kullandığınız alan adını seçin (genellikle 1 tuşuna basıp Enter).
5. HTTP trafiğini HTTPS’ye yönlendirme: Certbot, HTTP trafiğini otomatik olarak HTTPS’ye yönlendirmek isteyip istemediğinizi soracaktır. 2 (Redirect) seçeneğini seçmeniz şiddetle tavsiye edilir. Bu, tüm kullanıcıların her zaman güvenli bağlantı üzerinden erişmesini sağlar.
Certbot, sertifikayı alacak, Apache sanal host yapılandırmanızı güncelleyecek ve Apache’yi yeniden başlatacaktır. İşlem başarılı olursa, bir tebrik mesajı görmelisiniz.
Certbot sertifikaları otomatik olarak yenilemek için bir cron işi veya systemd zamanlayıcı kurar. Otomatik yenileme zamanlayıcısının durumunu kontrol edebilirsiniz:
sudo systemctl status certbot.timer
Artık tarayıcınızdan https://your_domain.com adresine giderek Nextcloud’unuza güvenli bir şekilde erişebilirsiniz. Tarayıcınızın adres çubuğunda bir kilit simgesi görmelisiniz.
Kurulum Sonrası Yapılandırmalar
Nextcloud’unuzu daha performanslı ve güvenli hale getirmek için bazı ek yapılandırmalar yapmanız önerilir.
Cron İşleri
Nextcloud, arka plan görevlerini (örn: bildirimler, dosya taramaları, temizlik) yürütmek için düzenli olarak çalıştırılması gereken bazı betiklere sahiptir. Bunun için cron işlerini kullanmak en iyi yöntemdir.
www-data kullanıcısının cron tablosunu düzenleyin:
sudo -u www-data crontab -e
Eğer ilk kez açıyorsanız bir düzenleyici seçmeniz istenebilir, nano (seçenek 1 veya 2) genellikle iyi bir seçimdir.
Açılan dosyaya aşağıdaki satırı ekleyin:
/5 * php -f /var/www/html/nextcloud/cron.php
Bu satır, www-data kullanıcısı altında /var/www/html/nextcloud/cron.php betiğini her 5 dakikada bir çalıştıracaktır. Dosyayı kaydedip çıkın.
Nextcloud’un yönetici panelinde (Ayarlar -> Temel Ayarlar altında) “Arka plan görevleri” bölümünde “Cron” seçeneğinin işaretli olduğundan emin olun.
Bellek Önbellekleme (Memory Caching)
Bellek önbellekleme, Nextcloud’un performansını önemli ölçüde artırabilir. İki ana tür vardır: yerel önbellek (sunucu tarafı) ve dağıtılmış önbellek (birden fazla sunucu için, ancak tek sunucu kurulumunda da faydalıdır). APCu yerel önbellekleme için, Redis ise dağıtılmış önbellekleme için popüler seçeneklerdir. Genellikle her ikisini birden kullanmak en iyi performansı sağlar.
APCu Kurulumu (Yerel Önbellek):
APCu, PHP bytecode önbellekleyicisidir ve Nextcloud için yerel önbellek olarak şiddetle tavsiye edilir.
sudo apt install php-apcu -y
sudo systemctl restart apache2
Redis Kurulumu (Dağıtılmış Önbellek):
Redis, bir anahtar-değer veritabanıdır ve Nextcloud tarafından dağıtılmış bir önbellek olarak kullanılabilir.
sudo apt install redis-server php-redis -y
sudo systemctl restart apache2
Her iki önbellekleme mekanizmasını da kurduktan sonra, Nextcloud’un config.php dosyasına bunları etkinleştirmek için girdiler eklemeniz gerekir.
sudo nano /var/www/html/nextcloud/config/config.php
config.php dosyasına, 'dbpassword' satırının altına veya dosyanın sonuna (son ) parantezinden önce) aşağıdaki satırları ekleyin:
'memcache.local' => '\\OC\\Memcache\\APCu',
'memcache.distributed' => '\\OC\\Memcache\\Redis',
'redis' => array(
'host' => 'localhost',
'port' => 6379,
'timeout' => 0.0,
'password' => '', // Redis için şifre belirlediyseniz buraya yazın
),
Dosyayı kaydedip çıkın. Bu değişiklikler hemen etkili olacaktır. Nextcloud yönetici panelinizdeki “Genel Bakış” bölümünde artık önbellekleme uyarıları görmemelisiniz.
Güvenilir Alanlar (Trusted Domains)
Nextcloud’unuza erişirken “Bu güvenilir bir alan adı değil” hatası alırsanız, config.php dosyanıza alan adınızı eklemeniz gerekir.
sudo nano /var/www/html/nextcloud/config/config.php
trusted_domains dizisini bulun ve alan adınızı ekleyin. Örneğin:
'trusted_domains' =>
array (
0 => 'localhost',
1 => 'your_domain.com', // Alan adınızı buraya ekleyin
),
Eğer hem IP adresi hem de alan adı kullanıyorsanız, her ikisini de buraya eklemeniz gerekir.
Güvenlik ve Kurulum Uyarıları
Nextcloud yönetici panelinde (Ayarlar -> Genel Bakış) “Güvenlik ve Kurulum Uyarıları” bölümünü düzenli olarak kontrol edin. Nextcloud, potansiyel güvenlik açıklarını veya performans sorunlarını otomatik olarak algılar ve size çözüm önerileri sunar. Yaygın uyarılar şunları içerebilir:
* php-imagick eksikliği: Bu paketi kurmak, Nextcloud’un görsel önizlemeleri daha verimli işlemesine yardımcı olur.
sudo apt install php-imagick -y
sudo systemctl restart apache2
* memory_limit düşük: PHP yapılandırmanızdaki memory_limit değerini artırmanız gerekebilir (daha önce yaptık).
* SSL sertifikası eksik: Certbot ile SSL kurduysanız bu uyarı kaybolmalıdır.
* Strict-Transport-Security HTTP başlığı ayarlı değil: Certbot genellikle bunu otomatik olarak ayarlar. Eğer hala görüyorsanız, Apache yapılandırmanıza manuel olarak eklemeniz gerekebilir.
* X-Frame-Options HTTP başlığı ayarlı değil: Bu da genellikle otomatik olarak ayarlanır.
Bu uyarıları dikkate almak ve çözmek, Nextcloud kurulumunuzun hem güvenliğini hem de performansını artıracaktır.
Sonuç
Tebrikler! Bu kapsamlı rehberi takip ederek Ubuntu 18.04 sunucunuz üzerine Nextcloud’u başarıyla kurdunuz ve temel yapılandırmalarını tamamladınız. Artık kendi özel ve güvenli bulut depolama çözümünüze sahipsiniz. Nextcloud, dosyalarınızı senkronize etme, paylaşma, takvimlerinizi ve kişilerinizi yönetme gibi temel işlevlerin yanı sıra, yüzlerce eklenti (uygulama) ile genişletilebilir bir platform sunar. Bu uygulamalar sayesinde belge düzenleme, video konferans, proje yönetimi ve çok daha fazlasını Nextcloud ortamınızda gerçekleştirebilirsiniz.
Unutmayın ki bir sunucuyu yönetmek sürekli bir öğrenme ve dikkat gerektiren bir süreçtir. Nextcloud kurulumunuzun güvenliğini ve performansını sürdürmek için aşağıdaki hususlara dikkat etmeniz önemlidir:
* Düzenli Güncellemeler: Hem Ubuntu sisteminizi hem de Nextcloud yazılımınızı düzenli olarak güncelleyin. Bu, güvenlik açıklarını kapatır ve yeni özelliklerden faydalanmanızı sağlar.
* Yedeklemeler: Verilerinizin güvenliği için düzenli yedeklemeler yapın. Hem Nextcloud veri dizinini hem de MariaDB veritabanını yedeklemeyi unutmayın.
* Güçlü Şifreler: Tüm kullanıcı hesapları için güçlü ve benzersiz şifreler kullanın.
* Güvenlik Duvarı: UFW gibi bir güvenlik duvarı kullanarak sadece gerekli portların (HTTP, HTTPS, SSH) açık olduğundan emin olun.
* Erişim Kontrolü: Nextcloud’daki kullanıcı ve grup izinlerini dikkatlice yönetin.
Kendi verilerinizin kontrolünü elinize almak, dijital çağda giderek daha önemli hale gelmektedir. Nextcloud, bu kontrolü size sunarken aynı zamanda modern bulut hizmetlerinden beklediğiniz tüm işlevselliği sağlar. Kurulumunuzla iyi eğlenceler!
