Kitabımdan ilgili bölümü paylaşıyorum. Umarım faydalı olur.

1.1.1        vsftpd FTP Sunucusunu Kurmak

vsftpd Linux türevi işletim sistemleri için açık kaynak kodlu bir FTP
sunucu programıdır. Vsftpd’nin belirgin özellikleri güvenli ve hızlı
olmasıdır. Çok büyük ölçekli sunucu görevlerinde gösterdiği başarı ile ön
plana çıkmıştır. SSL ve Ipv6 desteğine sahiptir.

Vsftpd (Very Secure FTP Deamon) sunucu programı hali hazırda Raspbian
depolarında bulunduğundan kolayca kurulumunu gerçekleştirebilirsiniz:

pi@localhost ~ $ sudo apt-get update
pi@localhost ~ $ sudo apt-get install vsftpd -y

Kurulumdan sonra vsftpd.conf dosyasını nano editörü ile açarak aşağıdaki
ayarları yapalım:

pi@localhost ~ $ sudo nano /etc/vsftpd.conf

Aşağıdaki ayarların bazıları zaten vsftpd.conf dosyasında bulunan ayarlar.
Bunların başındaki # yorum karakterini kaldırıp değerlerini
değiştirebilirsiniz, olmayanları ise dosyanın herhangi bir yerine
ekleyebilirsiniz:

ftpd_banner=Raspberry Pi FTP Sunucusuna Hosgeldiniz.

anonymous_enable=NO

local_enable=YES

write_enable=YES

local_umask=007

chroot_local_user=YES

user_sub_token=$USER

local_root=/home/$USER/ftp

Tablo 6.1 - vsFTP yapılandırma ayarlarımız

Yukarıdaki ayarlar ile şunları yapmış olduk:

·         ftpd_banner: Giriş yapacak FTP kullanıcıları için karşılama
mesajı hazırladık.

·         anonymous_enable: Anonim yani şifre belirtmeden giriş yapılması
engelledik.

·         local_enable: Sistemde tanımlı yerel kullanıcıların (örn: pi)
giriş yapmasına izin verdik.

·         write_enable: Kullanıcıların dosyalar üzerinde değişiklik
yapabilmesi için yazma izni verdik.

·         local_umask: Kullanıcıların kendi oluşturacağı dosyalarda tam
izne sahip olmalarını sağladık.

·         chroot_local_user: Kullanıcıların FTP ev dizinlerini değiştirerek
dışına çıkamamasını sağladık.

·         user_sub_token: Kullanıcının ev dizinine sahiplik yapacak dizinin
kullanıcı adı ile aynı olmasını sağladık.

·         local_root: Kullanıcı ev dizininin tam yolunu tanımladık.

local_root ayarı ile yaptığımız tanımlamaya dikkat ederseniz FTP ev dizini
olarak belirttiğimiz dizin /home/pi/ftp olarak yer almakta. Dolayısıyla
öncelikle bu dizinin oluşturulması gereklidir:

pi@localhost ~ $ mkdir /home/pi/ftp

Tüm FTP programlarında olduğu gibi vsftp’de güvenlik açısından bazı
kuralların uygulanmasını zorunlu kılar. Vsftp FTP ana dizininin yazmaya
karşı korumalı olmasını gerektirir. Bu nedenle FTP ana dizini içerisinde
kullanıcılarının dosyalarını özgürce silip değiştirebileceği bir alt
dizinin bulunması gerekir. Bu amaçla FTP ana dizinimizi yazmaya karşı
koruyup daha sonra yazılabilir başka bir dizin oluşturacağız:

pi@localhost ~ $ chmod 555 /home/pi/ftp
pi@localhost ~ $ mkdir /home/pi/ftp/dosyalar
pi@localhost ~ $ chmod 777 /home/pi/ftp/dosyalar

Artık FTP sunucumuz hazır durumda. Ayarların geçerli olması için sunucumuzu
yeniden başlattıktan sonra kullanmaya başlayabiliriz:

pi@localhost ~ $ sudo service vsftpd restart
1.1.1.1       vsftpd FTP Oturumlarını canlı olarak izlemek

Aktif FTP işlemlerini canlı olarak izlemek için vsftpd.conf dosyasına
setproctitle_enable=YES değerini ekleyip sunucuyu yeniden başlattıktan
sonra watch komutu ile FTP aktarımlarını canlı olarak izleyebilirsiniz:

pi@localhost ~ $ watch ps -C vsftpd -o user,pid,stime,cmd

Tablo 6.2 - FTP oturumlarını canlı takip etmek

Benzer işlemi vstfpd’nin günlük dosyasını tail komutuyla canlı izleyerek de
yapabilirsiniz. Bu şekilde FTP oturumları süresince gerçekleşmiş ve
gerçekleşen tüm işlemleri görüntüleyebilirsiniz.

pi@localhost ~ $ sudo tail -f /var/log/vsftpd.log

Tablo 6.3 - Tail ile günlük dosyasını izlemek

Dilerseniz o ana kadar birikmiş tüm günlük kayıtlarını *cat* komutu ile
ekrana bastırabilirsiniz. Günlük kayıtları özellikle FTP sunucunuz ile
sorun yaşadığınızda hatanın nedenini belirlemek için faydalı bilgiler
içerir.



pi@localhost ~ $ sudo cat /var/log/vsftpd.log
1.1.1.2       vsFTPd’ye Yeni bir FTP kullanıcısı eklemek

FTP sunucusunu kullanmak üzere yeni bir FTP kullanıcısı eklemek için
aşağıdaki komutu  kullanabilirsiniz:

pi@localhost ~ $ sudo useradd -m -s /usr/sbin/nologin yedek

pi@localhost ~ $ sudo passwd yedek

Yeni parolayı girin:parolayedek

Yeni parolayı tekrar girin:parolayedek

passwd: şifre başarıyla güncellendi

Yukarıdaki komutlar ile kullanıcı adı yedek parolası da parolayedek olan
bir kullanıcı ekledik. Güvenlik açısından bu kullanıcıya SSH erişimi
vermedik. Komut kabuğu olarak /usr/sbin/nologinprogramını belirttik.
Dolayısıyla
yedek isimli kullanıcı komut satırına ulaşamayacak. Daha önce yaptığımız
gibi yedek kullanıcısının FTP ev dizinini ve erişim izinlerini de
ayarlamalıyız:

pi@localhost ~ $ sudo mkdir /home/yedek/ftp
pi@localhost ~ $ sudo chmod 555 /home/yedek/ftp
pi@localhost ~ $ sudo chown yedek:yedek /home/yedek/ftp
pi@localhost ~ $ sudo mkdir /home/yedek/ftp/dosyalar
pi@localhost ~ $ sudo chmod 777 /home/yedek/ftp/dosyalar
pi@localhost ~ $ sudo chown yedek:yedek /home/yedek/ftp/dosyalar

Son olarak vsftpd’nin oluşturduğumuz kullanıcıya oturum açabilmesi için
/usr/sbin/nologinkomut kabuğu programını /etc/shells dosyasının sonuna bir
kereliğine ekleyelim. Daha sonra oluşturacağınız kullanıcılar için bunu
tekrar eklememize gerek yok.

pi@localhost ~ $ echo "/usr/sbin/nologin" | sudo tee --append  /etc/shells

*Özgür Koca*

<http://www.tankado.com/>
<http://www.tankado.com/acik-kaynak/raspberry-pi-board/>
<https://github.com/enseitankado>  <https://www.instagram.com/ozgur0koca/>
<https://www.linkedin.com/in/%C3%B6zg%C3%BCr-koca-287ba534/>
<https://tr.pinterest.com/ozgurkocaandroi/>
<https://twitter.com/OzgurKoca2>

<http://www.facebook.com/zerostoheroes/>


On Fri, Sep 7, 2018 at 2:58 PM SEVGI <[email protected]> wrote:

> Merhabalar,
> Raspbian işletim sistemi üzerinde ftp server kurmaya çalışıyorum.
>
> sudo apt-get install vsftpd -y
>
> komutu ile kurulum yaptım.
>
> /etc/vsftpd.conf dosyamın içeriğini aşağıdaki şekilde düzenledim.
> ssl_enable=YES
> local_enable=YES
> chroot_local_user=YES
> local_root=/var/www/html/
> user_sub_token=pi
> write_enable=YES
> local_umask=002
> allow_writeable_chroot=YES
> ftpd_banner=Welcome to my Raspberry Pi FTP
>
> Daha sonrasında ilgili gruba eklemeleri yaptım.
> sudo usermod -a -G www-data pi
> sudo usermod -m -d /var/www/html/ pi
> sudo chown -R www-data:www-data /var/www/html/
> sudo chmod -R 777 /var/www/html/
>
> en son adım da
> sudo service vsftpd restart
> komutu ile servisi yeniden başlattım. Bu adımların hiç birinde konsol
> ekranında her hangi bir hata çıktısı almadım.
>
> Filezilla dan bağlantı ayarlarını
> İLETİŞİM KURALI - FTP DOSYA AKTARIM İLETİŞİM KURALI
> SUNUCU - 192.168.1.29
> ŞİFRELEME - OLABİLİYORSA TLS ÜZERİNDE FTP KULLANILSIN
> OTURUM AÇMA TÜRÜ - NORMAL
> KULLANICI -pi
> PAROLA - (login olurken kullandığım parola)
> olarak düzenledim ancak bağlan dediğim de
>
>
> "ECONNREFUSED - Bağlantı sunucu tarafından reddedildi" ile bağlantı
> kurulamadı.
> Hata:           Sunucuyla bağlantı kurulamıyor
>
> hatasını alıyorum.
>
> Konuyla ilgili sorunu nasıl çözebilirim.
> İyi çalışmalar Dilerim.
> _______________________________________________
> Linux-programlama mailing list
> [email protected]
> https://liste.linux.org.tr/mailman/listinfo/linux-programlama
> Liste kurallari: http://liste.linux.org.tr/kurallar.php
>
_______________________________________________
Linux-programlama mailing list
[email protected]
https://liste.linux.org.tr/mailman/listinfo/linux-programlama
Liste kurallari: http://liste.linux.org.tr/kurallar.php

Cevap