Linux_User - Konfiguracja ProFTPd
Strona główna
O mnie
Teksty
Download
Dodatki
Linki
Chat
SETI
Reklama
Kontakt
- Instalacja i konfiguracja serwera ftp - Pro-FTPd... -
Spośród wielu dostępnych serwerów ftp pod Linuksa dwa z nich uzyskują miano najlepszych: Wu-FTPd oraz Pro-FTPd. Ten pierwszy głównie ze względu na łatwość instalacji i konfiguracji, oraz za duże możliwości konfiguracyjne, drugi zaś mimo że więcej z nim problemu przy konfiguracji, to jest uznawany (i słusznie) za najbezpieczniejszy. Postaram się opisać tu sposób instalacji i konfiguracji najnowszej wersji Pro-FTPd 1.2.4 (wyszła 19.10.2001).
- Instalacja -
Zacznijmy od początku. Najpierw musimy postarać się o źródła programu, możemy je ściągnąć z serwera proftpd.org:
ftp://ftp.proftpd.org/distrib/source/proftpd-1.2.4.tar.gz
Kiedy już ściągniemy ten plik, rozpakowujemy go poleceniem:
tar -xvzf proftpd-1.2.4.tar.gz
Następnie wchodzimy do katalogu ze źródłami programu i wydajemy polecenie:
./configure [opcje]
Najważniejsze opcje:
--prefix=/ścieżka - standardowo program instaluje się do katalogu /usr/local/sbin, jednak możemy podać inną ścieżkę (ja zazwyczaj podaję /usr)
--with-modules=mod_moduł1:mod_moduł2:mod_... - dodajemy moduły do programu, które mają za zadanie odpowiednio:
- mod_pam - obsługa PAM - czyli jeżeli chcemy aby z serwera korzystali również normalni użytkownicy, a nie tylko anonymous
- mod_ratio - jeżeli chcemy włączyć ratio
- mod_readme - pozwala na obsługę plków README itp.
- mod_ldap - obsługa LDAP
- mod_sql - obsługa Sql
--sysconfdir=/ścieżka - możemy zmienić położenie pliku konfiguracyjnego proftpd.conf - standardowo jest w /usr/local/etc (ja zmieniam na /etc)
--localstatedir=/ścieżka - opcja pozwala zmienić położenie plików *.log - standardowo /usr/local/var (ja zmieniam na /var)
--enable-shadow - umożliwia korzystanie z pliku shadow zawierającego hasła użytkowników
Jeżeli ustalimy już jakie moduły chcemy skompilować razem z Pro-FTPd wydajemy polecenie (oczywiście nie musi ono tak wyglądać, to zależy co chcemy uzyskać):
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --enable-shadow
--with-modules=mod_pam:mod_readme:mod_ratio:mod_ldap:mod_sql
Następnie już tylko:
make
make install
- Uruchamianie serwera -
Teraz kiedy już mamy zainstalowany serwer Pro-FTPd, możemy przejść teraz do konfiguracji naszego serwera. Jeżeli kompilowaliśmy moduł "mod_pam" musimy skopiować plik ./contrib/ftpd.pamd na /etc/pam.d/ftp.
Serwer może być uruchamiany na dwa sposoby:
- jako "standalone" - czyli uruchamiany podczas startu systemu
- oraz uruchamiany przez demona "inetd" lub jego nowszą wersję "xinetd"
Jeżeli chcemy aby serwer uruchamiał jako "standalone" na końcu pliku /etc/rc.d/rc.local musimy umieścić linię /usr/sbin/proftpd, która automatycznie uruchomi serwer FTP zaraz po załadowaniu się systemu. Jeżeli serwer ma być uruchamiany przez "inetd" to w pliku /etc/inetd.conf szukamy następującej linii:
ftp stream tcp nowait root /usr/sbin/in.ftpd in.ftpd
Zamieniamy ją następującą:
ftp stream tcp nowait root /usr/sbin/proftpd proftpd
Uwaga! Jeżeli serwer ma być "standalone" pamiętajmy o wstawieniu znaczka # przed tą linią.
Jeżeli w naszym systemie mamy zainstalowany "xinetd" to poddajemy edycji plik /etc/xinetd.conf wpisując poniższe linijki, lub tworzymy plik /etc/xinetd.d/proftpd z tą treścią.
service ftp
{
flags = REUSE
socket_type = stream
instances = 50
wait = no
user = root
server = /usr/sbin/proftpd
bind =
log_on_success = HOST PID
log_on_failure = HOST RECORD
}
- Konfiguracja -
Teraz czeka nas najlepsza część - konfiguracja naszego serwera. Robimy to poprzez edycję pliku /etc/proftpd. Sporo by zajęło miejsca opisanie wszystkich opcji dostępnych w konfiguracji serwera, najlepiej samemu sięgnąć do lektury i odwiedzić stronę www.proftpd.org, gdzie w dziale DOCS możemy dokładnie przeczytać wszystkie możliwe dyrektywy wraz z ich wyjaśnieniami i krótkimi przykładami. Może w celu krótkiego wprowadzenia przeanalizujemy przykładowy plik proftpd.conf.
# Ustawienia globalne
ServerName "Mój serwer FTP" - nazwa serwera
ServerAdmin mój_email@skrzynka.com - e-mail administratora serwera
ServerType standalone - to chyba jasne (druga opcja to inetd)
DeferWelcome on - wyświetlanie informacji o serwerze dopiero po pomyślnym zalogowaniu się
DefaultServer on
DefaultRoot ~ - ograniczenie pola działania do własnego katalogu
Port 21 - nr portu
Umask 002 - maska dla tworzonych nowych katalogów i plików
User nobody - użytkownik na jakiego uruchomiony jest serwer
Group nobody - grupa do ktorej należy ten użytkownik
TimeoutIdle 300 - różne czasy rozłączenia serwera z użytkownikiem w zależności od przyczyn
TimeoutStalled 300
TimeoutLogin 60
TimeoutNoTransfer 300
ExtendedLog /var/log/proftp.log - miejsce zapisywania logów
ExtendedLog /dev/tty9 - numer konsoli na której wyświetlane będą logi
DisplayLogin .welcome.msg - wiadomość pojawiająca się na powitanie
MaxInstances 20 - maksymalna ilość uruchomionych serwerów
MaxLoginAttempts 2
MaxClients 200 "Za dużo połączonych użtkowników" - Maksymalna liczba osób mogących się zalogować (w cudzysłowiu wiadomość)
MaxClientsPerHost 40 "Za dużo połączeń z jednego IP"
<Limit LOGIN>
Order deny,allow
Deny from .microsoft.com - ograniczenia hostów z których można się zalogować
AllowAll - reszta może się logować
</Limit>
<Directory />
AllowOverwrite on - opcja pozwalająca nadpisywać pliki
</Directory>
# Ustawienia użytkownika anonymous
<Anonymous ~ftp> - zaczynamy ustawienia użytkownika ftp - anonymous
User ftp -użytkownik
Group ftp - grupa
AnonRequirePassword off - umożliwia logowanie się bez hasła
UserAlias anonymous ftp - aliasy tego użytkownika
DisplayLogin .welcome.msg
DisplayFirstChdir .message
GroupOwner ftp - właściciel grupy
Umask 002
# HideUser root
# HideGroup root
HideNoAccess on
MaxClients 20 "Za dużo połączonych użtkowników"
MaxClientsPerHost 5 "Za dużo połączeń z jednego IP"
<Limit WRITE>
DenyAll - ograniczenia praw do uploadu
</Limit>
<Limit READ DIRS>
IgnoreHidden on
</Limit>
</Anonymous>
# Ustawienia dla wybranego użytkownika
<Anonymous ~nazwa_użytkownika>
User nazwa_użytkownika
Group ftpusers
AnonRequirePassword on
DisplayLogin .welcome.msg
DisplayFirstChdir .message
GroupOwner nazwa_grupy_użytkownika
Umask 002
# HideUser root
# HideGroup root
HideNoAccess on
MaxClients 10 "Za dużo połączonych użtkowników"
MaxClientsPerHost 5 "Za dużo połączeń z jednego IP"
<Limit LOGIN>
Order allow,deny - tym razem najpierw podamy IP lub hosty, z których może się dany użytkownik zalogować
Allow from 127.0.0.1
Allow from 192.168.1.
Allow from 212.160.79.
Allow from 195.76.218.116
Allow from 195.86.86.135
DenyAll - z reszty IP nie można się logować
</Limit>
<Directory uploads/*> - konfiguracja uploadu
<Limit READ>
DenyAll - brak pozwolenia odczytu plików z uploadu
</Limit>
<Limit STOR>
AllowAll - pozwolenie na upload plików
</Limit>
<Limit MKD>
AllowAll - pozwolenie na tworzenie katalogów
</Limit>
</Directory>
</Anonymous>
Na tym możemy zakończyć prostą konfigurację naszego serwera. Jeżeli chcemy się zalogować na zwykłego użytkownika i chcemy mieć dostęp do całego drzewa katalogów to nie tworzymy dla niego podsekcji - Pro-FTPd sam sprawdzi czy istnieje taki użytkownik w systemie i jakie ma hasło, po czym otworzy się jego katalog domowy. Możliwości konfiguracji tego serwera są olbrzymie i najlepiej samemu poeksperymentować z różnymi ustawieniami.
Mam nadzieję, podany tu sposób instalacji i konfiguracji Pro-FTPd jest w miarę zrozumiały i pomoże w pierwszych krokach z tym programem.
Wstecz
Arkadiusz Bednarczyk - Linux Registered User #190228 - Ostatnia aktualizacja strony:
Wyszukiwarka
Podobne podstrony:
03 Linux Konfiguracja serwera FTP PROFTPDKonfigurowanie systemu Linux do pracy w sieci IPKonfiguracja DNS w OS LinuxRed Hat Enterprise Linux OpenStack Platform?rtification Test Suite 5 User Guide en US02 Linux Konfiguracja serwera WWW APACHEKonfiguracja serwera proftpd (2)Red Hat Enterprise Linux OpenStack Platform?rtification Test Suite 4 User Guide en USKonfiguracja serwera Apache, SSL w systemie GNU Linux04 Linux Konfiguracja serwera poczty elekrtonicznej POSTFIXLinux Primer Linux multi user & multi taskingLinux Ubuntu Samba, instalacja i konfiguracja2009 10 Reboot Restore Securing Your Linux Lab with Resettable User Accountswięcej podobnych podstron