Pardus Sunucu Üzerinde Webmin ile FTP Sunucu (vsftpd) Yapılandırması
Pardus Sunucu işletim sistemi üzerinde Webmin kontrol panelini kullanarak vsftpd (Very Secure FTP Daemon) kurulumu ve yapılandırmasını adım adım gerçekleştireceğiz.
Yapılandırmamızı, belirttiğiniz sistem ve ağ bilgilerine göre özelleştireceğiz:
IP Adresi:
192.168.101.250Sunucu Adı (Hostname):
pserverAlan Adı (Domain):
bilisim.localFQDN:
pserver.bilisim.local
Ön Hazırlık: Sistem Bilgilerinin Doğrulanması ve vsftpd Kurulumu
Webmin üzerinden yapılandırma yapmadan önce, FTP servisinin (vsftpd) sunucuda kurulu olduğundan ve ağ ayarlarının doğru yapıldığından emin olmalıyız.
1. Hostname ve IP Kontrolü (Terminal üzerinden):
Sunucunuzun adını ve IP adresini ayarlamak için terminalde aşağıdaki işlemleri teyit edin.
# Hostname ayarlama
sudo hostnamectl set-hostname pserver.bilisim.local
# vsftpd paketinin kurulumu
sudo apt update
sudo apt install vsftpd -y
Adım 1: Webmin Arayüzüne Erişim
Web tarayıcınızı açın.
Adres çubuğuna sunucunuzun IP adresi ve Webmin portunu (varsayılan 10000) yazın:
https://192.168.101.250:10000Tarayıcınız bir güvenlik uyarısı verebilir (kendi imzaladığı SSL sertifikası nedeniyle). Gelişmiş seçeneklerden ilerleyip siteye erişin.
Pardus sunucunuzun
rootveyasudoyetkisine sahip kullanıcı adı ve şifresiyle giriş yapın.
Adım 2: Webmin Üzerinde vsftpd Modülünü Bulma
Sol menüdeki Servers (Sunucular) sekmesini genişletin.
Listede VSFTPD Server seçeneğine tıklayın.
(Not: Eğer "Servers" altında göremiyorsanız, sol alttaki Un-used Modules (Kullanılmayan Modüller) veya Refresh Modules (Modülleri Yenile) seçeneğine tıklayarak modülün aktifleşmesini sağlayın.)
Adım 3: Temel vsftpd Yapılandırması
VSFTPD Server modülüne girdikten sonra karşınıza çıkan seçeneklerden FTP sunucunuzun temel güvenlik ve erişim kurallarını belirleyeceğiz.
A. Anonim Erişimi Kapatma ve Yerel Kullanıcıları Açma
Güvenlik açısından, şifresiz (anonim) girişi kapatıp sadece sunucudaki kayıtlı kullanıcıların giriş yapmasına izin vermeliyiz.
"Authentication" (Kimlik Doğrulama) veya benzeri yapılandırma menüsüne girin.
Allow anonymous FTP? (Anonim FTP'ye izin verilsin mi?):
No(Hayır) olarak işaretleyin.Allow local users to log in? (Yerel kullanıcıların girişine izin verilsin mi?):
Yes(Evet) olarak işaretleyin.Kaydedip ana vsftpd menüsüne dönün.
B. Kullanıcıları Kendi Dizinlerine Hapsetme (Chroot Jail)
Kullanıcıların FTP ile bağlandıklarında sunucunun tamamında (örneğin /etc klasöründe) gezinmelerini engellemek için kendi home dizinlerine kilitlenmeleri gerekir.
"Miscellaneous Options" (Çeşitli Seçenekler) veya "Chroot Options" bölümüne girin.
Chroot local users? (Yerel kullanıcılar chroot edilsin mi?):
Yesolarak işaretleyin.Değişiklikleri kaydedin.
C. IP Adresine Bağlama (Listen)
Sunucunun sadece belirlediğiniz ağ arayüzünden (192.168.101.250) FTP isteklerini dinlemesini istiyorsanız:
"Networking Options" (Ağ Seçenekleri) bölümüne girin.
Listen on address (Dinlenecek Adres) alanına
192.168.101.250yazın.Listen for IPv4 connections?:
Yesolarak işaretleyin.Değişiklikleri kaydedin.
Adım 4: Güvenlik Duvarı (Firewall) Ayarları
Webmin üzerinden veya doğrudan Pardus terminalinden FTP trafiğine izin vermemiz gerekir. FTP varsayılan olarak 21 numaralı portu kullanır.
Webmin Üzerinden (Linux Firewall - UFW veya Iptables):
Webmin sol menüden Networking (Ağ) > Linux Firewall (Linux Güvenlik Duvarı) veya Uncomplicated Firewall (UFW) bölümüne gidin.
Yeni bir kural ekleyerek gelen TCP trafiği için Port 21'e izin (Allow) verin ve kuralı uygulayın.
(Alternatif Terminal Komutu: sudo ufw allow 21/tcp)
Adım 5: Servisi Yeniden Başlatma ve Aktif Etme
Yaptığımız değişikliklerin geçerli olması için vsftpd servisini yeniden başlatmalıyız.
Webmin VSFTPD Server modülünün ana ekranında genellikle en altta veya üstte "Apply Changes" (Değişiklikleri Uygula) veya "Restart VSFTPD" (VSFTPD'yi Yeniden Başlat) butonu bulunur. Buna tıklayın.
Ayrıca sistem her açıldığında
pserversunucunuzun FTP'yi otomatik başlatması için sol menüden System > Bootup and Shutdown dizinine gidipvsftpdservisini bulup "Start at boot time" (Açılışta başlat) seçeneğiniYesyapabilirsiniz.
Adım 6: Test Aşaması
Kurulumunuz tamamlandı! Bağlantıyı test etmek için aynı ağdaki başka bir bilgisayardan (örneğin bir Windows veya Linux istemci) FileZilla veya benzeri bir FTP programı açın:
Sunucu (Host):
192.168.101.250(veya DNS yapılandırdıysanızpserver.bilisim.local)Kullanıcı Adı: Pardus üzerinde açmış olduğunuz herhangi bir kullanıcı (örneğin
ogrenciveya oluşturduğunuz bir kullanıcı)Şifre: Kullanıcının şifresi
Port: 21
Başarılı bir şekilde giriş yaptığınızda kullanıcının yalnızca kendi ev dizinini görebildiğini (chroot) doğrulamış olacaksınız.
Harika! Pardus Sunucu (192.168.101.250) üzerinde Webmin kullanarak yeni bir FTP kullanıcısı oluşturmak ve bu kullanıcıya özel bir dizin (klasör) atamak oldukça pratiktir.
FTP kullanıcıları aslında sistem üzerindeki yerel kullanıcılardır. İşte adım adım izlemeniz gereken yol:
1. Yeni Sistem Kullanıcısı Oluşturma
Webmin arayüzünde FTP kullanıcısı tanımlamak için önce bir sistem kullanıcısı oluşturmalıyız.
Sol menüden System (Sistem) > Users and Groups (Kullanıcılar ve Gruplar) sekmesine tıklayın.
Create a new user (Yeni bir kullanıcı oluştur) bağlantısına tıklayın.
Username (Kullanıcı adı): Örneğin
bilisim_useryazın.Real name: İsteğe bağlı bir açıklama (Örn: FTP Kullanıcısı).
Home directory (Ev dizini): Bu, kullanıcının FTP ile bağlandığında göreceği klasördür. Varsayılan olarak
/home/bilisim_usergelir. İsterseniz yandaki butonla başka bir dizin seçebilirsiniz.Password (Şifre): "Normal password" seçeneğini seçin ve güvenli bir şifre girin.
Create (Oluştur) butonuna basarak işlemi tamamlayın.
2. Dizin İzinlerini ve Yazma Yetkisini Ayarlama
vsftpd güvenlik protokolleri gereği (özellikle "chroot" aktifse), kullanıcının ana dizininin doğrudan yazılabilir olması bazen bağlantı hatalarına (500 OOPS: vsftpd: refusing to run with writable root inside chroot()) neden olabilir.
Bunu çözmek için en sağlıklı yöntem, kullanıcının ana dizini içinde bir alt klasör oluşturup ona yazma yetkisi vermektir:
Others (Diğerleri) > File Manager (Dosya Yöneticisi) kısmına gidin.
/home/bilisim_userdizinine girin.Üstteki menüden New (Yeni) > Folder (Klasör) seçeneğiyle
dosyalarimveyauploadisimli bir klasör oluşturun.Bu yeni klasöre sağ tıklayıp Ownership (Sahiplik) kısmından kullanıcıyı
bilisim_userolarak ayarlayın.Permissions (İzinler) kısmından kullanıcının bu alt klasöre tam erişim (755 veya 775) sahip olduğundan emin olun.
3. VSFTPD Yapılandırmasında Yerel Kullanıcı Kontrolü
Yeni kullanıcının giriş yapabilmesi için Webmin içindeki vsftpd ayarlarını son bir kez kontrol edelim:
Servers (Sunucular) > VSFTPD Server yoluna gidin.
Authentication (Kimlik Doğrulama) simgesine tıklayın.
Allow local users to log in? seçeneğinin Yes (Evet) olduğundan emin olun.
Only allow listed users? (Sadece listedeki kullanıcılara izin ver?) seçeneği "No" ise tüm kullanıcılar girebilir. Eğer "Yes" ise, kullanıcınızı izinli listeye eklemeniz gerekir.
4. Servisi Yeniden Başlatma ve Bağlantı Testi
Ayarların pserver.bilisim.local üzerinde aktif olması için:
VSFTPD ana ekranında Apply Changes (Değişiklikleri Uygula) butonuna basın.
FileZilla gibi bir istemciden şu bilgilerle bağlanın:
Sunucu:
192.168.101.250Kullanıcı:
bilisim_userŞifre: (Belirlediğiniz şifre)
Küçük Bir İpucu: Eğer kullanıcının SSH/Terminal üzerinden sunucuya giriş yapmasını istemiyor, sadece FTP kullansın istiyorsanız; kullanıcı oluştururken Shell kısmını
/bin/falseveya/usr/sbin/nologinolarak değiştirebilirsiniz.
Pardus sunucunuzda (pserver) kullanıcıların disk alanını gereksiz doldurmasını önlemek için Disk Kotası (Quota) özelliğini aktif etmemiz harika bir fikir olur. 192.168.101.250 IP adresli sunucunuzda bu işlemi Webmin üzerinden adım adım şu şekilde yapabiliriz:
1. Kota (Quota) Modülünün Hazırlanması
Pardus (Debian tabanlı) üzerinde kotanın çalışabilmesi için önce sistemde ilgili paketin kurulu olması gerekir.
Webmin > Others (Diğerleri) > Command Shell (Komut İstemi) ekranına gidin.
Aşağıdaki komutu yazıp Execute (Çalıştır) deyin:
apt install quota quotatool -yArdından sol menüden System (Sistem) > Disk Quotas (Disk Kotaları) sekmesine tıklayın.
Not: Eğer bu modül yüklü değilse "Un-used Modules" kısmından "Refresh Modules" yaparak aktifleştirebilirsiniz.
2. İlgili Sürücüde Kotayı Aktif Etme
Webmin, hangi disk bölümünde (genellikle / veya /home) kota uygulanacağını bilmelidir.
Disk Quotas ana sayfasında sunucunuzdaki disk bölümleri listelenir.
/homedizininin bulunduğu satıra (veya işletim sisteminin kurulu olduğu/dizinine) tıklayın.Enable Quotas? (Kotalar Etkin mi?) kısmını Yes yapın.
Eğer "Mount" seçeneklerinde
usrquotaveyagrpquotaekli değilse, Webmin size bunu eklemeyi teklif edecektir. Onaylayın ve sunucuyu yeniden başlatmanız gerekebileceğini unutmayın.
3. Kullanıcıya Özel Kota Sınırı Koyma
Şimdi oluşturduğumuz bilisim_user kullanıcısına bir limit tanımlayalım.
System > Disk Quotas menüsüne geri dönün.
User Quotas (Kullanıcı Kotaları) butonuna basın.
Kullanıcı listesinden
bilisim_userismini seçin.Karşınıza iki tür limit çıkacaktır:
Soft Limit (Yumuşak Sınır): Kullanıcı bu sınırı geçtiğinde uyarı alır ama dosya yüklemeye kısa bir süre (grace period) devam edebilir. (Örn: 900 MB)
Hard Limit (Sert Sınır): Kullanıcının kesinlikle geçemeyeceği sınırdır. (Örn: 1000 MB)
Değerleri megabayt (MB) cinsinden girin ve Update (Güncelle) butonuna basın.
4. Kota Durumunu Takip Etme
FTP kullanıcınızın ne kadar alan kullandığını Webmin üzerinden anlık olarak görebilirsiniz:
System > Disk Quotas > User Quotas yolunu izlediğinizde, kullanıcının yanında ne kadar alan işgal ettiği (Used) ve limitleri tablo halinde görünür.
Özet Yapılandırma Tablosu
| Parametre | Değer | Açıklama |
| Sunucu Adı | pserver.bilisim.local | FTP ve Kota yönetimi yapılan makine |
| Kullanıcı | bilisim_user | Kısıtlanacak olan FTP hesabı |
| Kota Türü | Hard Limit | Dosya yüklemesini durduran kesin sınır |
| Erişim Portu | 21 (TCP) | FTP standart iletişim portu |
Artık bilisim_user kullanıcısı, kendisine ayırdığınız alanı doldurduğunda FTP istemcisinde (FileZilla vb.) "Disk full" veya "Transfer failed" hatası alacaktır. Bu sayede 192.168.101.250 IP'li sunucunuzun depolama güvenliğini sağlamış oldunuz.
Yorumlar