# proftpd.conf 0.1 2004/12/8 18:49:26 (Rafal Zajac)
#
# proFTPD Configuration file by Rafal Zajac 
# Downloaded from http://www.slackware.prv.pl
#
# Copyright (C) 2004 Rafal Zajac <rzajac{at}gmail{dot}com>
# Released under the GPL v2 only.

# Uruchamiamy serwer jako samodzielny proces 
ServerType		standalone
DefaultServer		on

#------------------ Bannery --------------
    # Wyswietlamy powitanie jeszcze przed logowaniem uzytkownika 
    DisplayConnect 		/etc/ftpconnect.msg

    # Wyswietlamy powitanie po zalogowaniu 
    DisplayLogin		../.ftplogin.msg

    #
    AccessDenyMsg	"Access to this server has been denied. \
If you feel this rejection is in error please contact rzajac@gmail.com. \
This failed logon has been logged."

#--------------- Bannery end -------------

# Informacje dotyczace programu serwera 
ServerIdent		on "Ftp Server"

# Zapobiegamy atakom DoS
MaxInstances		50 

# Maksymalna ilosc uzytkownikow 
MaxClients		30 

# Zezwalamy na dokonczenie przerwanego pobierania pliku 
AllowRetrieveRestart	on

# Zezwalamy na dokonczenie przerwanego wysylania pliku 
AllowStoreRestart	on 

# Podajemy na ktorym porcie ma nasluhiwac serwer (domyslnie 21)
Port			21

# Definiujemy porty jakie beda uzywane dla polaczen pasywnych 
PassivePorts		60000 61000 

# Maska z jaka beda tworzone pliki i katalogi na serwerze
Umask			0177 0077 

# Uzytkownik i grupa do ktorych bedzie nalezal proces serwera po uruchomieniu 
User			ftp
Group			ftp 

# Gdzie i jak serwer bedzie przechowywal logi 
SystemLog		/var/log/proftpd.log
TransferLog		/var/log/xferlog
LogFormat		default "%h %l %u %t \"%r\" %s %b"
LogFormat		auth "%v [%P] %h %t \"%r\" %s"
LogFormat		write "%h %l %u %t \"%r\" %s %b"

# Zamykamy zalogowanych uzytkownikow w tzw. chroot jail
# w zaleznosci od grupy 
DefaultRoot		/home users
DefaultRoot		/home/ftp ftp

# Pozwalamy na nadpisywanie plikow w katalogu domowym 
<Directory ~>
    AllowOverwrite	on
</Directory> 

# Konfiguracja katalogu uploads 
<Directory /home/ftp/pub/uploads/*>
    
    # Zaden uzytkownik nie moze nadpisac, skasowac 
    # lub przeczytac plikow w katalogu uploads 
    <Limit READ DELE RNFN RNTO>
	DenyAll
    </Limit> 

    # Kazdy moze dodac plik do katalogu uploads 
    <Limit STOR>
	AllowAll
    </Limit>

</Directory> 

# Konfiguracja dla uzytkownikow anonimowych 
<Anonymous ~ftp> 

    # Kazdy moze sie zalogowac 
    <Limit LOGIN>
	AllowAll
    </Limit>

    # Maksymalna ilisc uzytkownikow anonymous 
    # jednoczesnie na serwerze 
    MaxClients 5 "Przykro mi maksymalna ilosc uzytkownikow %m -- sprobuj ponowne za jakis czas" 

    # Uzytkownik i grupa do ktorych bedzie nalezal 
    # proces serwera po uruchomieniu
    User 		nobody
    Group 		nobody 

    # Uzytkownik "anonymous" = "ftp"
    UserAlias 		anonymous ftp 

    # Nic nie moze byc zapisane w katalogach 
    # udostepnionych temu uzytkownikowi 
    <Limit WRITE>
	DenyAll
    </Limit> 

    # Konfiguracja katalogu uploads 
    <Directory uploads/*>

	<Limit READ>
	    DenyAll
	</Limit> 

	<Limit STOR>
	    AllowAll
	</Limit>
    </Directory>

</Anonymous>

