Linux Sftp Server Kurulumu

Merhaba arkadaşlar.

Bugünkü anlatımımda sizlere birden fazla farklı kullanıcıyla sftp server kurulumunu nasıl yapacağınızı anlatacağım. Özet olarak sftp nedir diyecek olursak:

Secure FTP, yani SFTP, SSH kullanarak dosya transferi yapan bir dosya aktarım protokolüdür. SSH’ın sağladığı güvenlik özellikleri, FTP’den farklı olarak SFTP’yi güvenli hale getirir.FTP’nin RSA ile güçlendirilmiş halidir. TCP üzerinden çalışır.

Kaynak: Vikipedia

Genelde sftp server kurulumlarında sadece 1 kullanıcı bağlanabilecek şekilde kurulum yapılmaktadır. Bunu da “sshd_config” dosyasının içerisine ekleyeceğimiz “Match user sftp_users” satırını “Match Group sftp_users” ile değiştirerek sftp_users grubunda bulunan kullanıcılara erişim yetkisi vererek çözeceğiz.

Kuruluma başlayalım: Sftp paketinin yüklenmesi

sudo apt install openssh-sftp-server -y

Sftp configrasyonunun yapılması:

sudo nano /etc/ssh/sshd_config

Alttaki kodu buluyoruz:

Subsystem sftp /usr/lib/openssh/sftp-server

Bununla değiştiriyoruz:

#Subsystem sftp /usr/lib/openssh/sftp-server
Subsystem sftp internal-sftp

Alttaki kodu configrasyon dosyasına ekliyoruz:

Match Group sftp_users
X11Forwarding no
AllowTcpForwarding no
ChrootDirectory %h/sftp
ForceCommand internal-sftp
PasswordAuthentication yes
PermitTunnel no
AllowAgentForwarding no

Sftp grubunun eklenmesi:

sudo groupadd sftp_users

Bu adımdan sonra kırmızı ve kalın yazı ile belirttiğim test kullanıcısını kendi istediğimiz şekilde adlandırarak devam edebiliriz. Eğer birden fazla kullanıcı hesabı istiyorsak bu adımdan sonra olan adımları tekrarlayarak birden fazla paylaşım açabilirsiniz.

Yeni bir kullanıcının eklenmesi:

sudo adduser test

Eklenen kullanıcının sftp grubuna dahil edilmesi:

sudo usermod -G sftp_users test

Kullanıcının üst dizine çıkmasını engelleme:

sudo chown root:root /home/test

sudo chmod 755 /home/test

Kullanıcının göreceği ama yazamayacağı kök dizini oluşturma:

sudo mkdir /home/test/sftp

Kullanıcının göreceği ve yazacağı dizini oluşturma:

sudo mkdir /home/test/sftp/files

Kullanıcıya yazma izni verme:

sudo chown test:sftp_users /home/test/sftp/files

Tebrikler. Kurulumu başarıyla tamamladınız. İyi günlerde kalın 🙂