Bu yazımızda tamamen size özgür bir WeTransfer alternatifi olan Jirafeau yazılımının Pardus sunucuya nasıl kurulacağını anlatacağım.

Bu sayede WeTransfer’in dosya boyutu sınırını aşmış olacaksınız ve gönderiler kendi alan adınız (Örneğin pardus.org.tr) üzerinden gitmiş olacak. Şirketinizde bu yapılandırmayı kullanırsanız dilediğiniz boyutta ve sayıda dosyayı istediğiniz tüm adreslere transfer edebileceksiniz. Üstelik kendi alan adınız görüneceği için ufak da olsa bir prestij sağlamış olacak. Son olarak Jirafeau kurulumunu dilediğiniz gibi özelleştirebilirsiniz. Tüm semboller, grafikler, yazılar ve renkler tamamen değiştirilebilir ve mevcut web sayfalarınıza uyumlu hale getirilebilir. Dilerseniz kendiniz de yeni bir tema yapabilirsiniz.

Lafı fazla uzatmadan hemen kuruluma geçelim.

Önce Pardus Sunucu 21.0’ı hazırlayalım.

Tamamen temiz bir kurulum yapın ve IP adresini sabit bir IP olacak şekilde değiştirin.

Ben örnek olması açısından 192.168.120.120 IP adresini /16 (255.255.0.0) alt ağ maskesini ve 192.168.0.1 ağ geçidini kullandım. Alan adı olarak anlatımda kullanmak amacıyla filetransfer.pardus.org.tr (Gerçekte böyle bir alan adı yok) kullanacağım ancak siz bunun yerine kendi alan adınızı yazmalısınız ve hem DNS hem güvenlik duvarı/yönlendirici ayarlarınızı uygun şekilde değiştirmelisiniz. DNS ayarlarının etkin olması 1-72 saat aralığında sürebilir. Dış dünyadan sizin sunucunuza erişim bilgisini DNS sunucuya girdikten sonra tüm dünyadaki DNS sunucuları bu güncellemeyi almalı ki, isteyenler sizin sunucunuza erişebilsinler.

Bu ayarları yapmak için Pardus’ta /etc/network/ altındaki interfaces dosyasını düzenlemeniz gerekir.

sudo nano /etc/network/interfaces

Varsayılan olarak yukarıdaki şekilde gelen (ens18 ağ kartınızın adıdır ve farklı sistemlerde farklılık gösterebilir) interfaces dosyasını aşağıdaki gibi düzenliyoruz.

Kurulumunu yaptığımız Pardus Sunucu 21.0’ı güncelleyelim.

sudo apt update

ve ardından

sudo apt upgrade -y

Şimdi tüm bu ayarların etkinleşmesi için sudo reboot komutu ile sistemi yeniden başlatalım.

Artık elimizde yeni kurulmuş, tüm güncellemeleri yapılmış ve sabit IP adresi olan bir sunucumuz var.

Jirafeau kurulumu öncesi yapılması gerekenler

Şimdi Jirafeau kurulumunu yapabiliriz.

Jirafeau

Jirafeau genel olarak WeTransfer alternatifi bir yazılımdır. Ekran görüntüsünde de görebileceğiniz gibi kullanımı çok basittir. Tıpkı WeTransfer’de olduğu gibi dosya veya dosyaları ekliyorsunuz, isterseniz bir parola ve geçerlilik tarihi belirliyor ve sisteme yüklüyorsunuz. Jirafeau size bir indirme bağlantısı veriyor, siz de bu bağlantıyı alıp karşı tarafa e-posta ile gönderiyorsunuz. Gönderdiğiniz alıcı veya alıcılar kendilerine gelen bağlantıya tıklayıp ilgili dosyayı kendi bilgisayarlarına indiriyorlar. Eğer bir parola belirlemişseniz, indirmeden önce kullanıcıların parolayı girmeleri gerekiyor. Dosyaları yüklerken ayarladığınız geçerlilik süresi dolduğunda dosyalar otomatik olarak sistemden siliniyor ve bağlantılar pasif hale geliyor.

Jirafeau kurulumu için mevcut sunucumuza öncelikle Jirafeau‘nun ihtiyacı olacak diğer paketleri kurarak işleme başlayalım.

sudo apt install -y nginx php php-fpm certbot git

İlgili paketler kurulduktan sonra Nginx ve PHP‘nin etkinleştirilmesi gerekir.

sudo systemctl enable --now nginx.service php7.4-fpm.service

Bu yazı yayına hazırlandığı sırada PHP sürümü 7.4‘tü. İlerleyen zamanlarda daha yeni sürümler olacaktır. Sizin de kurulumu yeni sürüm numarasına göre yapmanız gerekir.

Her iki servisin de etkinleştirildiğini kontrol etmekte fayda var.

sudo systemctl status nginx

ve PHP servisimizi kontrol edelim.

sudo systemctl status php7.4-fpm.service

SSL sertifikası oluşturma

Şimdi sistemi biraz daha güvenli hale getirmek için SSL sertifikası oluşturalım.

sudo certbot certonly --webroot -m hakan.hamurcu@pardus.org.tr -d filetransfer.pardus.org.tr --agree-tos

Bu komutla filetransfer.pardus.org.tr alan adı için hakan.hamurcu@pardus.org.tr e-posta adresini yetkili kılarak yeni bir SSL sertifikası oluşturuyoruz. Siz burada kendi alan adınızı ve kendi e-posta adresinizi kullanmalısınız. Eğer DNS kayıtlarınız henüz aktif olmadıysa bu komut hata verecektir. Bir başka deyişle, filetransfer.pardus.org.tr adresi ilgili DNS sunucuda doğru yere yönlendirilmediyse hata alacaksınız. Bu nedenle DNS sunucunuza filetransfer.pardus.org.tr alt alan adını ve yönleneceği Public IP adresini girmelisiniz ve 1 ila 72 saat bekleyerek tüm dünyada etkinleşmesini beklemelisiniz. Elbette firewall/Router’ınızda gerekli dış/iç yönlendirmeyi yaptığınızı varsayıyorum.

Komutu çalıştırdığınızda size ilk olarak verdiğiniz e-posta adresine EFF‘den e-posta almak isteyip istemediğiniz sorulacaktır (Çeşitli uyarılar için). Ben örneğimizde Yes diyerek devam ediyorum.

Sonrasında size webroot’un neresi olacağını soracaktır. Varsayılan olarak /var/www/html yazıp Enter’e basın.

Alan adınızın doğrulaması yapılacak ve oluşturulacak sertifika ve ilgili dosyalar /etc/letsencrypt/live/fletransfer.pardus.org.tr/ klasörüne kaydedilecektir. Siz kendi alan adınızı kullanacağınız için klasör düzenindeki filetransfer.pardus.org.tr‘nin kendi alan adınız ile değişeceğini unutmayın.

Şimdi web sunucu görevini üstlenecek Nginx’i yapılandırabiliriz.

İlk iş olarak varsayılan config dosyasını (siteyi) silelim.

sudo rm /etc/nginx/sites-enabled/default

Sonra kendi alan adımız için yeni bir config (site) oluşturalım.

sudo nano /etc/nginx/sites-available/filetransfer.pardus.org.tr.conf

Eğer SSL kullanacaksanız dosyayı aşağıdaki şekilde düzenleyelim.

server {
listen 80;
listen [::]:80;
server_name filetransfer.pardus.org.tr;
return 301  https://filetransfer.pardus.org.tr$request_uri;
}
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name filetransfer.pardus.org.tr;
root /var/www/html/jirafeau;
index index.php;
ssl on;
ssl_certificate /etc/letsencrypt/live/filetransfer.pardus.org.tr/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/filetransfer.pardus.org.tr/privkey.pem;
location ~ .php$ {
fastcgi_split_path_info ^(.+.php)(/.+)$;
fastcgi_index index.php;
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
include fastcgi_params;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}

Eğer SSL kullanmayacaksanız dosyayı aşağıdaki şekilde düzenleyelim.

server {
  server_name 192.168.120.120;
  listen 80;
  root /var/www/html/jirafeau;
  index index.php;
  location ~ .php$ {
  fastcgi_split_path_info ^(.+.php)(/.+)$;
  fastcgi_index index.php;
  fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
  include fastcgi_params;
  fastcgi_param PATH_INFO $fastcgi_path_info;
  fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}

Elbette filetransfer.pardus.org.tr alan adını ve IP adresini kendi alan adınızla ve IP adresinizle değiştirmelisiniz.

CTRL+O ve Enter ile kayıt edelim ve CTRL+X ile çıkalım.

Default yerine yeni oluşturduğumuz filetransfer.pardus.org.tr sitesini aktif edecek symlink’i oluşturalım.

sudo ln -s /etc/nginx/sites-available/filetransfer.pardus.org.tr.conf /etc/nginx/sites-enabled/

Ardından tüm ayarların doğru yazılıp yazılmadığını kontrol edebilirsiniz.

sudo nginx -t

Yeni ayarların etkin olması için Nginx servisini yeniden yükleyelim.

sudo systemctl reload nginx.service

Jirafeau kurulumu

Artık gönül rahatlığı ile Jirafeau kurulumunu yapabiliriz.

Bunun için /var/www/html/ klasörü içerisinde Jirafeu adında yeni bir klasör oluşturalım.

sudo mkdir /var/www/html/jirafeau

Şimdi Jirafeau kodlarını bu klasöre indirelim.

sudo git clone https://gitlab.com/mojo42/Jirafeau.git /var/www/html/jirafeau

Arkadaşlarınıza göndereceğiniz dosyaların duracağı yeni bir klasör oluşturalım.

sudo mkdir -p /var/data/jirafeau

Siz bu klasörü farklı isim ve yerlerde oluşturabilirsiniz.

Oluşturduğumuz klasörlere www üzerinden erişim hakkı verelim.

sudo chown -R www-data:www-data /var/www/html/jirafeau/lib /var/data/jirafeau

Artık herhangi bir web browser açıp adres satırına https://filetransfer.pardus.org.tr veya IP adresini (192.168.120.120) yazdığınızda Jirafeau’nun varsayılan kurulum ekranını görebilirsiniz. Sırasıyla 3 adımda jirafeau’nun kurulumunu web üzerinden tamamlayın ve gönlünüzce kullanın.

Bu ekranda kendiniz için bir yönetici şifresi girin.
Sonraki adım’a basarak kurulumu tamamlayın.

Jirafeau’yu kişiselleştirmek

Jirafeau’yu kişiselleştirmek için yapmanız gereken tek şey, aslında config dosyasındaki ilgili satırları değiştirmek olacaktır.

sudo cp /var/www/html/jirafeau/lib/config.orginal.php /var/www/html/jirafeau/lib/config.local.php

Yukarıdaki komutla orijinal Jirafeau config dosyasının yerelde bir yedeğini oluşturduk ve biz bu yerel üzerinde çalışacağız.

sudo nano /var/www/html/jirafeau/lib/config.local.php

Bu config dosyasında temel olarak değiştirmeniz gereken satırlar şunlar olabilir.

  • Reklam amaçlı sizin veya şirketinizin bilgilerini değiştirebilirsiniz.

‘organisation’ => ‘Sizin veya şirketinizin adı’,
‘contactperson’ => ‘Yetkili kişi adı ve e-posta adresi’,
‘title’ => ‘Sizin belirleyeceğiniz bir başlık’,

  • Sadece sizin bileceğiniz bir şifre veya şifreler belirleyerek Upload (Yükleme) işlemini şifreye bağlayabilirsiniz.

‘upload_password’ =>
array (
‘password1’,
‘password2’,
),

  • Dosyaların sistemde duracağı zaman dilimlerinin isimlerini veya hangilerinin olup olmayacağını ayarlayabilirsiniz.

array (
‘minute’ => true,
‘hour’ => true,
‘day’ => true,
‘week’ => true,
‘month’ => true,
‘quarter’ => true,
‘year’ => true,
‘none’ => true,
),

Bu değişiklikleri yaptıktan sonra CTRL+O Enter ve CTRL+X ile editörden çıkıp sudo reboot ile sistemi komple yeniden başlatmak tüm ayarların etkin olmasını sağlayacaktır.

Ayrıca Jirafeau’nun tema desteği de var ve ekranda gördüğünüz her sembolü/resmi yazıyı ve rengi değiştirebilirsiniz.

Soru görüş ve önerilerinizi forumlarımıza bekliyorum.

Kalın sağlıcakla.