|
Artyku? ten jest oparty na tek?cie Pana Rafa?a Zaj?ca ze strony www.eioba.pl. Opisuje on konfiguracj? serwera ProFTP na Slackware Linux.
Po zainstalowaniu serwera z paczki .tgz mo?na od razu przej?? do jego konfiguracji. Najpierw jednak worzymy katalogi w których b?d? gromadzone dane i nadajemy im odpowiednie prawa do zapisu i odchytu wydaj?c kolejno polecenia w konsoli.
mkdir exchange mkdir -p ftp/pub/uploads chown root.users exchange chown root.ftp ftp chown ftp.ftp ftp/pub chown ftp.ftp ftp/pub/uploads chattr +T exchange chmod 1770 exchange chmod 0750 ftp chmod 0550 ftp/pub chmod 0770 ftp/pub/uploads Konfiguracj? samego serwera przeprowadza si? edytuj?c plik /etc/proftpd.conf. Wi?c wyedytujmy ten plik i zamie??my tam poni?sze wpisy # 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> Zapisujemy wprowadzone zmiany i dodajemy wpis do /etc/rc.d /rc.local aby proftp startowa? automatycznie wraz z restartem naszego komputera. echo uruchamiany jest serwer proftpd /usr/sbin/proftpd i zapisujemy zmiany Serwer oczywi?cie mo?na uruchomi? z konsoli wydaj?c polecenie proftpd. Dla osób lubi?cych grzeba? w konfigach, a tak?e dla tych którzy chc? konfiguracj? bardziej dostosowa? do swoich potrzeb podaje za co odpowiadaj? poszczegulne komendy w konfigu. -
ServerName Wy?wietla nazw? serera userom ??cz?cycm si? do ftp. -
ServerIdent wy?wietla wiadomo?? powitaln? podczas po??czenia, np. zawarto?ci pliku .message. -
ServerType ustawia tryb pracy demona ProFTPD -
DeferWelcome Nie pokazuje wiadomo?ci powitalnej dopóki u?ytkownik si? nie zautoryzuje. -
DefaultServer Okre?lamy konfiguracj? jako domy?ln? -
DefaultRoot Wyznaczamy nadrz?dny dla ka?dego u?ytkownika katalog spoza którego nie b?dzie móg? wyj??. -
Port Definiujemy tutaj port na którym serwer b?dzie oczekiwa? nadchodz?cych po??cze? -
Umask Tryb umask 022 jest typowym standardem dla ogolnie dost?pnych plików i katalogów -
User Konto u?ytkownika na którego uprawnieniach pracuje us?uga -
Group Grupa do której nale?y konto u?ytkownika us?ugi -
AuthPAMAuthoritative Dajemy mo?liwo?? autoryzacji u?ytkowników poprzez modu? PAM je?li jest to mo?liwe. -
User - konto u?ytkownika którego prawa b?dzie uzyskiwa?a osoba loguj?ca si? do serwera -
Group - grupa do której nale?y powy?sze konto. -
AnonRequirePassword Umo?liwia u?ytkownikom anonimowym logowanie si? bez has?a. -
RequireValidShell - opcja ta powoduje, ?e ProFTPD nie sprawdza czy dany u?ytkownik, który si? loguje posiada przypisan? w /etc/shells pow?ok?. -
UserAlias - przyporz?dkowuje nazw? u?ytkownika do systemowego konta. -
MaxClients - ilo?? jednoczesnych po??cze? anonimowych które b?d? realizowane przez serwer. -
DisplayLogin - okre?lamy plik którego zawarto?? b?dzie wy?wietlana po starcie. -
DisplayFirstChdir - plik którego zawarto?? b?dzie wy?wietlana po pierwszym wej?ciu do katalogu. -
AllowStoreRestart - pozwala klientom wznawia? upload.
Uruchomienie serwera jak wida? jest banalnie proste. Na koniec jeszcze ma?a uwaga jako ?e serwer nie wprowadza limitów danych jakie mo?e user zamie?ci? zachodzi potrzeba skonfigurowania i uruchomienia quota aby nie okaza?o si?, ?e jaki? maniak zapcha nam ca?y dysk swoimi danymi. |