Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > d667a145d78a93cee78c5358ca99c039 > files > 36

howto-text-nl-2006-5mdv2010.0.noarch.rpm

  FTP Setup Tips
  Will Harris, wil@redhat.com
  Vertaler: Reggy Ekkebus, reggy@zeelandnet.nl
  v1.1, 20 april 1999.
  ____________________________________________________________

  Inhoudsopgave


  1. Inleiding

  2. Introductie

  3. Voorbereiding

  4. Beveiligen

  5. ProFTPd Setup

  6. Overige documentatie

  7. Copyright Gegevens



  ______________________________________________________________________

  1.  Inleiding

  "Red Hat Tips" is documentatie die bedoeld is om Red Hat gebruikers te
  helpen met bepaalde taken. Enkele van deze documenten zijn voor
  beginnende gebruikers, andere zijn voor gevorderde gebruikers. Als je
  een bijdrage wilt leveren, zend die dan naar tech-sup@redhat.com. Als
  je veranderingen hebt voor een individueel Tips document, zend die dan
  naar de auteur van dat document.

  2.  Introductie

  Dit document beschrijft de configuratie voor wu-ftpd en proftpd voor
  gewone gebruikers en anonieme gebruikers.  Je moet root zijn voor dit
  gehele proces.

  Het eerste deel gaat over het instellen van wu-ftpd en anonieme ftp.
  Het tweede deel gaat over het instellen van proftpd.

  3.  Voorbereiding

  Installeer de NetKit-B en anonftp RPM's. NetKit-B heeft de FTP server
  daemon; anonftp heeft de binaries, libraries en dingen die in de FTP
  directory gaan.

  /home/ftp is de root directory van je FTP server. Anonftp zet het
  meeste voor je op, maar er zijn nog een paar dingen die je zelf moet
  doen.

  Je moet een kopie van /etc/passwd en /etc/group in /home/ftp/etc
  zetten, zodat het /ls commando de gebruikersnamen en groepnamen ook
  weergeeft.  Voor de veiligheid van je systeem moet je de gecodeerde
  wachtwoorden vervangen door sterretjes. Om /etc/passwd naar
  /home/ftp/etc/passwd te kopieëren en de wachtwoorden te vervangen door
  sterretjes, gebruik je dit commando:



               sed -e 's/:[^:]*:/:*:/' /etc/passwd >~ftp/etc/passwd

  In /etc/group staan onder Red Hat Linux geen wachtwoorden, dus deze
  kun je gewoon kopieëren:



               cp /etc/group ~ftp/etc/group




  Een andere optie (en een goed idee voor veiligheid) is het gebruik van
  shadow passwords. Onder linux kun je dit doen door simpelweg het
  volgende uit te voeren:



               pwconv




  Dit commando converteert het password bestand naar shadow, vernieuwt
  de pam libs om shadow passwords te gebruiken en een permissie te
  zetten op /etc/shadow.  Als je dit doet, dan kun je gewoon de
  bestanden /etc/passwd en /etc/group kopieëren:



               cp /etc/passwd /etc/group ~ftp/etc/




  Dat is dat, kijk het voor de zekerheid nog even na voor je verder
  gaat.

  Notitie: De enige regels die we eigenlijk nu nodig hebben zijn die van
  de root.

  4.  Beveiligen

  De anonftp RPM plaatst enkele binaries en libraries in de /home/ftp
  directory om Ftp gebruikers dingen te laten doen zoals: automatisch
  bestanden unzippen als ze worden opgehaald of het ophalen van een hele
  directory met tar bestanden. Er zijn een paar extra bestanden
  geplaatst door de anonftp RPM die bijna nooit gebruikt worden en die
  moeten worden verwijderd om de veiligheid te bevorderen.



               cd /home/ftp/bin
               rm cpio sh zcat
               cd ../etc
               rm ld.so.cache
               cd ../lib
               rm ld.so* libtermcap*




  Tot slot moet je de permissies van bestanden veranderen om de
  veiligheid te bevorderen.




          chmod 111 ~ftp/bin/* ~ftp/bin ~ftp/etc ~ftp/lib
          chmod 444 ~ftp/etc/*
          chmod 555 ~ftp ~ftp/lib/*




  Als je klaar bent moet je het volgende hebben:



               bin:
               total 164
               ---x--x--x   1 root     root        14776 Oct 31 09:54 compress
               ---x--x--x   1 root     root        45277 Oct 29 21:59 gzip
               ---x--x--x   1 root     root        22977 Oct 29 20:07 ls
               ---x--x--x   1 root     root        77873 Oct 25 17:49 tar






               etc:
               total 2
               -r--r--r--   1 root     root          495 Mar 20 19:46 group
               -r--r--r--   1 root     root          921 Mar 20 19:45 passwd






               lib:
               total 702
               -r-xr-xr-x   1 root     root        20994 Oct 30 18:58 ld-linux.so.1
               -r-xr-xr-x   1 root     root        20994 Oct 30 18:58 ld-linux.so.1.7.5
               lrwxrwxrwx   1 root     root           13 Mar 20 19:43 libc.so.5 -> libc.so.5.0.9
               -r-xr-xr-x   1 root     root       669157 Oct 30 19:53 libc.so.5.0.9




  Als er bestanden ontbreken, begin dan opnieuw en herinstalleer de
  anonftp RPM. Om de permissies te zien als hierboven typ:



               ls -al




  Nu alles veilig is moet je de /pub directory aanmaken waar je de
  bestanden zet voor de anonieme ftp.



               mkdir ~ftp/pub
               chmod 555 ~ftp/pub




  Plaats elk bestand dat je wilt aanbieden via FTP in de /pub directory.
  Je mag ook subdirectory's aanmaken in de /pub directory.
  Voor de veiligheid en om zeker te weten dat anonieme gebruikers ook de
  bestanden kunnen lezen, doe dan dit met elk bestand en elke directory:




               chmod 444 (naam van het bestand)
               chmod 555 (naam van de directory)




  Een 'incoming' directory is af te raden, omdat je dan last kunt hebben
  van software piraterij. Sommige mensen zetten dan software op je site,
  waar je voor moet betalen en de houder van de site krijgt dan een
  bekeuring, omdat die verantwoordelijk is voor de dingen die op de site
  staan. Als het echt nodig is doe dan dit:


               mkdir ~ftp/incoming
               chmod 333 incoming




  De mode 333 betekent dat ze alleen in de directory kunnen schrijven en
  niet lezen.

  Dat was het! Voor de veiligheid: zorg dat alles in /home/ftp niet te
  schrijven is.



               chmod -R a-w ~ftp




  (Je mag als root nog wel in de directory schrijven).

  5.  ProFTPd Setup

  OK, voor degenen die ProFTPd willen: eerst kijken of je de nieuwste
  versie hebt.

  ProFTPd <ftp://ftp.proftpd.org>

  voor de RPM (Opmerking: Deze worden niet onderhouden door RedHat
  Software).

  ProFTPd RPM <ftp://rhcn.redhat.com/pub/rhcn/RPMS/>

  Als je het pakket eenmaal gedownload en geïnstalleerd hebt via een van
  de methoden.

  (Onthoud: Om proftpd te installeren via rpm moet je de wu-ftpd en
  anonftp wegdoen.)  Je moet het configuratiebestand aanpassen voor je
  site.  Als je de RHCN rpm gebruikte, staat het configuratiebestand in
  /etc/proftpd.conf.  Als je hem zelf gecompileerd hebt, staat het
  configuratiebestand in: /usr/local/etc/proftpd.conf.

  Nu voor de configuratie: open het configuratiebestand met een editor
  naar keuze.  Het bestand ziet er ongeveer uit als hieronder:



          # This is a basic ProFTPD configuration file (rename it to
          # 'proftpd.conf' for actual use.  It establishes a single server
          # and a single anonymous login.  It assumes that you have a user/group
          # "nobody" and "ftp" for normal operation and anon.

          ServerName                      "ProFTPD Default Installation"
          ServerType                      standalone
          DefaultServer                   on

          # Port 21 is the standard FTP port.
          Port                            21
          # Umask 022 is a good standard umask to prevent new dirs and files
          # from being group and world writable.
          Umask                           022

          # To prevent DoS attacks, set the maximum number of child processes
          # to 30.  If you need to allow more than 30 concurrent connections
          # at once, simply increase this value.  Note that this ONLY works
          # in standalone mode, in inetd mode you should use an inetd server
          # that allows you to limit maximum number of processes per service
          # (such as xinetd)
          MaxInstances                    30

          # Set the user and group that the server normally runs at.
          User                            nobody
          Group                           nogroup

          # Normaal gesproken willen we dat bestanden overschrijfbaar zijn.
          <Directory /*>
            AllowOverwrite                on
          </Directory>

          # A basic anonymous configuration, no upload directory's.
          <Anonymous ~ftp>
          User                          ftp
          Group                         ftp
          # We want clients to be able to login with "anonymous" as well as "ftp"
          UserAlias                     anonymous ftp

          # Beperk het aantal anonieme logins
          MaxClients                    10

          # We want 'welcome.msg' displayed at login, and '.message' displayed
          # in each newly chdired directory.
          DisplayLogin                  welcome.msg
          DisplayFirstChdir             .message

          # Limit WRITE everywhere in the anonymous chroot
          <Limit WRITE>
             DenyAll
          </Limit>

          </Anonymous>




  Het eerste wat we doen is onze server configureren voor onze eigen
  site. We beginnen met de volgende regel:



               ServerName                             "ProFTPD Default Installation"



  Verander het in een zelfgekozen server naam. Bijvoorbeeld "Reggy's
  Ftpsite".  Dan zal het er zo uitzien:



               ServerName                              "Reggy's Ftpsite""




  Daarna gaan we kijken welk servertype we nemen. Je kunt kiezen tussen
  een die altijd draait of een net als de inetd deamon, dat betekent dat
  de server start en stopt als de connecties komen en gaan. inetd heeft
  mijn voorkeur, dus ik verander het en dan ziet het er zo uit:



               ServerType                      inetd





  Onthoud: Als je het wilt starten met inetd dan moet je ook een regel
  aanmaken in /etc/inetd.conf:




               ftp     stream  tcp     nowait  root    /usr/sbin/proftpd       proftpd




  Voor stand alone moet je jezelf hier niet druk over maken. Je moet
  niets veranderen aan de Port en Umask, het mag wel. Ik laat de User
  nobody en verander de group ook in nobody. Dus dit gaat er zo uitzien:



               User                            nobody
               Group                           nobody




  Nu moet je een beslissing nemen over de bestanden. Ik vind het niet
  leuk dat bestanden overschrijfbaar zijn, dus ik verander het in:



               <Directory /*>
                 AllowOverwrite                off
               </Directory>




  De setup voor anonymous laat ik met rust. Dit staat standaard aan,
  zonder dat ze kunnen schrijven.Er zijn nog veel meer andere opties
  voor ProFTPd. Kijk in de overige documentatie voor meer opties.

  6.  Overige documentatie

  Zie Garfinkel en Spafford, ``Practical Unix Security'' O'Reilly and
  Associates. <http://www.oreilly.com>, 1996, pagina's 487-494 voor meer
  info. En

  wu-FTPd <http://www.landfield.com/wu-ftpd/>

  ProFTPd <http://www.proftpd.org/>

  7.  Copyright Gegevens

  Dit document is auteursrechtelijk beschermd. Copyright (C) 1999 door
  de auteur.  Herdistributie van dit document mag alleen als de inhoud
  hetzelfde blijft. Met andere woorden, je mag dit document afdrukken en
  herdistribueren.