proftpd.conf

Tworzymy katalogi
#mkdir /home/ftp/anonymous (z podkatalogami upload download)
#mkdir /home/ftp/users

ustawiamy prawa /home (755 root:root), /home/ftp (755 root:root), /home/ftp/users (750 root:users), /home/ftp/anonymous (750 root:ftp), /home/ftp/anonymous/upload (770 ftp:ftp), /home/ftp/anonymous/download (750 ftp:ftp),

aby móc logować użytkownika anonymous jako ftp bez podawania hasła w pliku blokującym użytkownikom dostęp do serwera (/etc/ftpusers) dokonujemy wpisu:
#ftp

aby utowrzyć użytkownika w systemie z dostępem do ftp, bez dostępu do shell'a:
#useradd -s /bin/false -d /home/ftp/users/test -g users test
#mkdir /home/ftp/users/test
#passwd test

w pliku /etc/proftpd.conf wpis:

=================== wytnij =============================================
#przyspieszenie logowania

UseReverseDNS off
IdentLookups off


#czesc globalna dla uzytkownikow z haslem
# Uruchamiamy serwer jako samodzielny proces
Servername "Serwer ftp Mario"
ServerType        standalone
DefaultServer        on
RequireValidShell off

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

    # Wyswietlamy powitanie po zalogowaniu
    DisplayLogin        ../.ftpwitaj.msg
    AccessDenyMsg    "Dane logowania niepoprawne, skontaktuj się \
z administratorem mariop@zseu.pl \"

#--------------- 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/ftp/users users
DefaultRoot        /home/ftp/anonymous ftp

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


# Konfiguracja dla uzytkownikow anonimowych
<Anonymous /home/ftp/anonymous>
User  ftp
Group  ftp
UserAlias  anonymous ftp
AnonRequirePassword  off
MaxClients  5
RequireValidShell off
#DisplayLogin   welcome.msg
#DisplayFirstChdir   .message
GroupOwner ftp

    <Directory *>
        <Limit WRITE>
        DenyAll
        </Limit>
        </Directory>
      
        <Directory /home/ftp/anonymous/download/>
        <Limit WRITE>
        DenyAll
        </Limit>
#Pobieranie      
        <Limit RETR>
        AllowAll
        </Limit>
        </Directory>
#zapisywanie
        <Directory /home/ftp/anonymous/upload/>
        <Limit WRITE>
        AllowAll
        </Limit>
#pobieranie AllowAll - dla wszystkich dozwolone
        <Limit RETR>
#        DenyAll
    AllowAll
        </Limit>
        <Limit DELE>
        DenyAll
        </Limit>
    </Directory>

</Anonymous>
=======================================================================
restart serwera:
ps -A | grep ftp
kill -9 proces
proftpd

Brak komentarzy:

Prześlij komentarz