Karakter boyutu :
|
|
Pardus`a ProFtp kurulumu
Partdus kurulu olan makinenizi tam anlamıyla bir server olabilmesi için en önemlis servislerden biri olan ftp`nin kurulu olası kesin gerekmektedir. Fakat pardus üzerinde çalışan ve şuan paketi depolarda mevcut bir yazılım henüz ben bulamadım... Kernel.org ve SourceForce`nin bu yazılımı kullandığını öğrenince zaten gerek de kalmadı. Yaptığım araştırmalardan sonra ProFtpd yazılımını kaynağından kurup denemeye karar verdim. ProFtpd sayfasından tar.gz uzantılı mevcut bir versiyonun kaynak kodlarını sistemimize indiriyoruz. Ben bu işlemleri ssh ile bağlanıp konsole üzerinden yaptığım için sizlere kodları yazacağım. Ln Desktop # wget ftp://ftp.proftpd.org/distrib/source/proftpd-1.3.2rc1.tar.gz İndirdiğimiz dosyayı unzip yapıp oluşturulan klasör içine girip klasik kurulumu gerçekleştiriyoruz.Ln Desktop # tar zxvf proftpd-1.3.2rc1.tar.gz
Bu işlemlerden sonra eğer hata oluşmadıysa ftp serverımız kullanıma
hazır. ProFtp`yi çalıştırmak için ise aşağıdaki komutu
kullanabilirsiniz.Ln Desktop # cd proftpd-1.3.2rc1 Ln Desktop # ./configure --prefix=/usr/local/proftpd Ln Desktop # make Ln Desktop # make all Ln Desktop # /usr/local/proftpd/sbin/proftpd Programdaki hayati önem taşıyan dosya ise /usr/local/proftpd/etc/proftpd.conf
adresindeki ayar dosyası. Serverımız ile alakalı her türlü ayar bu
dosya üzerinden yapılmaktadır. Eğer ayar dosyasını sisteminizde nerede
olduğunu bilmiyorsanız aratmak için.Ln Desktop # find / -name proftpd.conf`
Kullanıcıların dosya işlemlerine kaldıkları yerden devam etmeleri için AllowStoreRestart on AllowRetrieveRestart on ProFTPD standart kurulumda anonymous erişime izin vermez. Programın configrasyon dosyasına girip en alt satıra aşağıdaki kodları yapıştırın. Bu İşlemden sonra herkes anonymous olarak /home/FreeFtp klasörünün içini görebilecektir. <Anonymous /home/FreeFtp>
User ftp UserAlias anonymous ftp Group ftp <Limit DELE RMD> DenyAll </Limit> </Anonymous> UseReverseDNS off Serverımız
bir firewall arkasından internete çıkıyorsa Pasif Mode `da kullanacağı
portları bizim belirlememiz en güzeli olacaktır. IdentLookups off PassivePorts 10010 10020 Dosya boyutunu sınırlamak için;MaxStoreFileSize 300 Kb Bağlantı sınırlama;MaxClientsPerHost 2 "üzgünüz. Bir Hosttan en fazla (%m) bağlantı kurulabilir." Kullanıcıların üst dizinlere çıkmasını engellemek için;MaxClientsPerUser 2 "üzgünüz. Bir Kullanıcı adı ile en fazla (%m) bağlantı kurulabilir." MaxClients 50 "üzgünüz, Suan Max.Bağlantı olan %m kisi sisteme bagli." DefaultRoot ~
Ln Desktop # killall -9 proftpd; rm -rf /usr/local/proftpd Ftp yetkilendirmesi için yeni bir group veya kişi oluşturmanız gerekebilir.Ln ~ # groupadd MyFtpServer
Ln ~ # useradd -GMyFtpServer -pdeneme -m deneme Basit bir konfigurasyon dosyası. /var/ftp klasörünün içine herkes ulaşabilsin, dosya gönderebilsin ama upload alt dizininin içinden kim kimse birşey silemesin...ServerName "Pardus Ftp Server" Kendi kullandığım konfigurasyon dosyam. tüm kullanıcılar kendi ana dizinindeki sanal webroot olan public_html klasörüne ulaşıp istediğini yapabiliyor. Ayrıca anonymous baglantılar için /home klasörünün altında FreeFtp klasörü mevcut. Herkes istediğin dosyayı atabiliyor ama silme yapamıyor.ServerType standalone DefaultServer on Port 21 Umask 0122 0022 MaxInstances 30 MaxClientsPerUser 5 UseReverseDNS off IdentLookups off TimeoutLogin 60 TimeoutIdle 60 AllowOverwrite on User ftp Group ftp # Burada tüm anonim bağlantıların mod değiştirme yetkileri kısıtlanıyor. <Limit SITE_CHMOD> DenyAll </Limit> ###[ anonymous connections ]################################################ <Anonymous /var/ftp> User ftp Group ftp AnonRequirePassword on # Burada tüm klasörlerin mod değiştirme yetkileri açılıyor. <Limit SITE_CHMOD> AllowAll </Limit> # Burada upload klasörü için tanımlamalar yapılıyor. <Directory upload> # upload klasöründe dosya silme yetkileri kıstlanılıyor. <Limit DELE> DenyAll </Limit> # upload klasöründe klasör silme yetkileri kıstlanılıyor. <Limit RMD> DenyAll </Limit> </Directory> </Anonymous> ServerName "Pardus Ftp Server" ServerType standalone DefaultServer on Port 21 MaxInstances 30 User nobody Group nogroup AllowOverwrite on RootLogin off PassivePorts 10010 10020 Umask 022 RequireValidShell off # Tüm kullanıcıları public_html klasorunde kitleyelim, *** COK ONEMLI *** # Eger bu islem yapilmazsa kullanıcılar ust dizinlere cikip baskasina ait # klasor uzerinde islem yapabilirler DefaultRoot ~/public_html # It`s better for debug to create log files ;-) ExtendedLog /var/log/ftp.log TransferLog /var/log/xferlog SystemLog /var/log/syslog.log # Basarili login isleminden sonra gösterilecek mesaj AccessGrantMsg "ESinTi BiLiSim Ftp Server`a HOSGELDINIZ..." <Limit SITE_CHMOD> DenyAll </Limit> <Anonymous ~> User ftp Group ftp UserAlias anonymous ftp MaxClients 10 DisplayLogin welcome.msg DisplayChdir .message # Izin Verilen Kullanicilar <Limit LOGIN> #AllowUser ESinTi DenyALL !ESinTi </Limit> <Limit WRITE> DenyAll </Limit> </Anonymous> # Burasa Ftp server`ımızın bazi network kontrollerini kapatip hızlı # calismasini sagliyoruz... <Global> IdentLookups off </Global> UseReverseDNS off <Anonymous /home/FreeFtp> User ftp UserAlias anonymous ftp Group ftp <Limit DELE RMD> DenyAll </Limit> </Anonymous> |
|
|
|
19 Ağustos 2008 Salı - Linux Yazıları - Yorum Yaz/Oku (0) - # |