• vsftp w CentOS

    dodany przez Przemysław Sikora

    Vsftp to znany i ceniony unixowy serwer FTP , który odznacza się wysokim poziomem bezpieczeństwa i nieprzeciętną wydajnością. Omawiany vsftp pozwala nam na odpalenie wielu usług jednocześnie na oddzielnych portach, dzięki temu zyskujemy możliwość korzystania z anonimowego, osobno konfigurowalnego serwera obok produkcyjnego. Zmiana konfiguracji jednego lub wyłączenie nie zakłóci pracy drugiego. Poniżej zaprezentuję wprowadzenie do instalacji i konfiguracji omawianej usługi.

    yum install vsftpd
    vim /etc/vsftpd/vsftpd.conf

    Poniżej lista opcji i parametrów konfiguracyjnych

    anonymous_enable=NO

    zezwolenie, bądź nie na połączenia anonimowych użytkowników

    local_enable=YES

    zezwalanie lub zabranianie dostępu lokalnym użytkownikom systemu

    write_enable=YES

    możliwość zapisu (tworzenia, modyfikowania treści)

    local_umask=022

    ustawianie domyślnej maski dla nowych plików

    non_upload_enable=YES

    możliwość wgrywania plików przez anonimowych użytkowników

    anon_mkdir_write_enable=YES

    możliwość tworzenie nowych katalogów przez anonimowych użytkowników

    dirmessage_enable=YES

    wyświetlanie wiadomości powitalnych użytkownikom po wejściu do konkretnych folderów

    xferlog_enable=YES

    włączenie bądź wyłączenie logowanie zdarzeń

    connect_from_port_20=YES

    wykorzystanie portu 20 do przesyłania danych w trybie aktywnym

    chown_uploads=YES

    włączenie lub wyłączenie zmiany właściciela dla plików wgranych przez anonimowego użytkownika

    chown_username=whoever

    ustawienie na jakiego użytkownika ma być zmieniony …

    xferlog_std_format=

    wartość NO oznacza, że logi będą zapisywane charakterystycznym dla vsftpd, a YES w pliku xferlog

    idle_session_timeout=n

    n oznacza czas bezczynności, po którym sesja zostaje zakończona

    nopriv_user=ftps

    nazwa użytkownika, z którego działają procesy w czasie połączenia (powinien być nieuprzywilejowany)

    ftpd_banner=

    ustawienie tekstu powitalne wyświetlającego się tuż po połączeniu

    chroot_local_user=NO

    ustawienie, czy lokalni użytkownicy mają pracować w odseparowanym środowisku (swoim katalogu domowym)

    chroot_list_enable=YES

    umożliwienie, bądź nie dodawania użytkowników mogących pracować poza swoim katalogiem domowym

    chroot_list_file=scieżka_do_pliku

    położenie pliku z listą “uprzywilejowanych użytkowników”

    check_shell=YES

    tylko użytkownicy z przypisaną powłoką shell będę mogli korzystać z FTP

    listen=YES

    ustawienie, czy demon vsftpd ma pracować w trybie standalone i nasłuchiwać nadchodzących połączeń.

    anon_world_readable_only=YES

    zezwolenie na pobierania plików z prawem do odczytu użytkownikom anonimowym

    max_clients=n

    n oznacza ilość maksymalnych użytkowników w danym momencie

    max_per_ip=n

    n= ilość połączeń z jednego adresu IP

    cmds_allowed=nazwy_komend

    umożliwia ograniczenie dozwolonych przez użytkownika komend

    user_config_dir=/usr/local/etc/vsftpd/user_conf/

    ustawienie tego parametru umożliwia spersonalizowanie ustawień serwera ftp pod konkretnego użytkownika. Vsftpd będzie szukał w podanej ścieżce pliku o nazwie danego usera.

    pam_service_name=vsftpd

    ustawienie nazwy dla usługi uwierzytelniającej przy pomocy mechanizmu PAM

    userlist_enable=YES

    włącza listę zablokowanych użytkowników np. root, admin

    service vsftpd start

    uruchamiamy demona

    /sbin/chkconfig vsftpd on

    włączenie autostartu opisywanej usługi we wszystkich trybach

5 komentarzy do “vsftp w CentOS”

  1. hello_world pisze:

    No to pojechałeś z ustawieniami tych opcji 🙂
    Zgodzę się tylko w przypadku gdy Centos ma działać w moim domu bez możliwosci dostania się przez www
    Opcje z anonimowym userem i braku chrotowanego środowiska są niedopuszczalne w produkcyjnym środowisku
    A opcja z lokalnymi userami też nie jest najlepsza. Lepiej wykorzystać wirtualnych userów.

  2. centos pisze:

    Przedstawiłem różne warianty konfiguracji. Nie namawiam do korzystania z anonimowego dostępu. Twjoe przemyślenie są słuszne.

  3. kbechler pisze:

    Jeżeli już przy bezpieczeństwie jesteśmy, to warto zwrócić uwagę na pewną rzecz: vsftp w dość prosty sposób umożliwia zrobienie FTPS (nie mylić z SFTP), co eliminują jedną z największych niedogodności tego protokołu, czyli przesyłania haseł otwartym tekstem. Udało mi się nawet stworzyć mini-podręcznik, jak to zrobić: http://konrad.bechler.pl/2010/02/bezpieczny-ftp

    hello_world: Lokalni użytkownicy nie są tacy znowu źli, o ile nie jest ich zbyt dużo 🙂

  4. cabana pisze:

    vsftpd można w łatwy sposób zmusić do autoryzacji po kontach użytkowników 😉
    http://cabana.wro.com.pl/index.php/2011/01/serwer-vsftpd-i-logowanie/

  5. lakiluk pisze:

    setproctitle_enable – pokazuje status połączenia ftp
    text_userdb_names – pokazuje nazwy użytkowników zamiast ich id
    use_localtime – czas lokalny zamiast czasu GMT
    log_ftp_protocol – logowanie protokołu FTP (w ramach debugowania, śledzenia itp.)

Dodaj komentarz

Warto odwiedzić
Valid XHTML 1.0 Transitional centos.com.pl- mapa strony