www.ProFTPD.de

ProFTPD => ProFTPD - Deutsch => Thema gestartet von: marcus am 09. Mai 2003, 14:02:30



Titel: ProFTPd ohne Plaintext-Passwörter?
Beitrag von: marcus am 09. Mai 2003, 14:02:30
Hi Leute,

ich steh' grad vor dem Problem, daß ich einen ProFTP-Server aufziehen muß, der hinter einem Firewall-Router (mit fester IP) für Außenstellenmitarbeiter zugreifbar sein soll. Plaintext-Passwörter sollen dabei dringenst verhindert werden, da es sich um ziemlich brisante Daten handelt. :shock:

Die Firewall hab ich z.Zt. so konfiguriert, daß nur der SSH-Port nach außen hin offen ist. Ich dachte, ich könnte einfach die Ports 20 und 21 via SSH tunneln - haut aber nicht hin, da der Controllport 21 zwar connectiert aber nicht der Datenport...

Der SSH-interne SFTP-Server ist leider auch keine Lösung, da ich die User chrooten muß und die ProFTPd-Direktiven brauche.

Vielleicht hat ja jemand von euch einen Tip, was die sicherste und bequemste Heransgehensweise ist um Plaintext-PW-Authentifizierung zu vermeiden. TLS/SSL vielleicht? Aus der ProFTPd+SSL-Howto bin ich nicht ganz so schlau geworden...

Gruß,
Marcus


Titel: Re: ProFTPd ohne Plaintext-Passwörter?
Beitrag von: stonki am 09. Mai 2003, 15:43:05
Zitat von: "marcus"
Aus der ProFTPd+SSL-Howto bin ich nicht ganz so schlau geworden...


naja, ich halte das denn fuer die beste Loesung. Ich persoenlich verwende fuer FTP grundsaetzlich andere Passwoerter als fuer SSH, daher ist mir das auch (relativ) egal, dass Plaintext gesendet wird. Ich kann aber gut verstehen, dass dieses nicht in Frage kommt. Es gibt natuerlich noch andere Moeglichkeiten:

1) PPTP Zugang, wenn die Clients alle Windows sind. Dann bauen die ADMs erst eine Art MINI VPN zum Server aus und greifen dann auf den Server lokal zu. Hat den Vorteil, dass das fuer ProFTPD transparent ablaeuft und ALLES verschluesselt wird.

2) richtiges VPN aufbauen (IMHO fuer Host - NET Verbindungen zu umstaendlich)

3) One Time Passwoerter (bei seltenen Zugriffen)

4) ProFTPD ueber SSH. Siehe hier:
http://castaglia.proftpd.de/doc/contrib/ProFTPD-mini-HOWTO-SSH.html

5) ProFTPD mod_tls: Siehe hier:
http://castaglia.proftpd.de/doc/contrib/ProFTPD-mini-HOWTO-TLS.html

Entscheide Dich und poste dann Deine probs :)

cu
stonki


Titel: ProFTPd ohne Plaintext-Passwörter?
Beitrag von: marcus am 09. Mai 2003, 18:03:40
Hi Stonki,

danke erstmal für Deine Antwort. Ich hab ProFTPd mit mod_tls neucompiliert und von der

mod_tls-HowTo Folgendes in die proftpd.conf eingetragen:

 
    TLSEngine on
    TLSLog /var/log/tls.log
    TLSProtocol TLSv1

    # Are clients required to use FTP over TLS when talking to this server?
    TLSRequired on
(wenn schon, denn schon)

    # Server's certificate
#    TLSRSACertificateFile /etc/ftpd/server.cert.pem
#    TLSRSACertificateKeyFile /etc/ftpd/server.key.pem

    # CA the server trusts
#    TLSCACertificateFile /etc/ftpd/root.cert.pem

    # Authenticate clients that want to use FTP over TLS?
    TLSVerifyClient off
 


...und ProFTPd meldet 234 AUTH TLS successful, bricht dann aber die Verbindung wegen fehlender CAs ab.

Das Problem ist nun, daß ich keinen Blassen hab von RSA- bzw. CA-Zertifikaten - daher auch die Auskommentierung.  :)

Muß ich die mit openssl/CA.sh erzeugen oder hab ich die schon (von SuSE 8.1)? Leider hab ich nichts im Web gefunden was helfen könnte.


Titel: ProFTPd ohne Plaintext-Passwörter?
Beitrag von: TL am 09. Mai 2003, 21:49:40
Hier nen paar links die dir helfen dürften mit den CA's klarzukommen:
http://www.openssl.org/
http://www.modssl.org/
http://www.castaglia.org/openssl/contrib/cert-tool


Titel: ProFTPd ohne Plaintext-Passwörter?
Beitrag von: TL am 09. Mai 2003, 21:53:56
achso auch noch wichtig:
falls FlashFXP und SmartFTP als ftp client (mit SSL) benutzt werden, benutz auf jeden fall die CVS sourcen, da alle vorherigen versionen von mod_tls nen bug in bezug auf nicht endende sessions hatten...


Titel: ProFTPd ohne Plaintext-Passwörter?
Beitrag von: Wörsty am 09. Mai 2003, 22:20:44
So richtig kapiert hab ich das auch noch nicht aber bei mir hab ich folgendes gemacht:

RedHat 8.0
Pakete openssl und openssl-devel müssen installiert sein.
Code:
cd /usr/share/ssl/certs
openssl req -config openssl.cnf -new -out my-zertifikat.csr
openssl rsa -in privkey.pem -out my-zertifikat.key
openssl x509 -in my-zertifikat.csr -out my-zertifikat.crt -req -signkey my-zertifikat.key -days 365
openssl x509 -in my-zertifikat.crt -out my-zertifikat.der.crt -outform DER


Die /usr/share/ssl/certs/openssl.cnf muß so ungefähr aussehen
Code:
#
# OpenSSL configuration file.
#

# Establish working directory.

dir = .

[ ca ]
default_ca = CA_default

[ CA_default ]
serial = $dir/serial
database = $dir/certindex.txt
new_certs_dir = $dir/certs
certificate = $dir/cacert.pem
private_key = $dir/private/cakey.pem
default_days = 365
default_md = md5
preserve = no
email_in_dn = no
nameopt = default_ca
certopt = default_ca
policy = policy_match

[ policy_match ]
countryName = match
stateOrProvinceName = match
organizationName = match
organizationalUnitName = optional
commonName = supplied
emailAddress = optional

[ req ]
default_bits = 1024 # Size of keys
default_keyfile = key.pem # name of generated keys
default_md = md5 # message digest algorithm
string_mask = nombstr # permitted characters
distinguished_name = req_distinguished_name
req_extensions = v3_req

[ req_distinguished_name ]
# Variable name  Prompt string
#----------------------  ----------------------------------
0.organizationName = Organization Name (company)
organizationalUnitName = Organizational Unit Name (department, division)
emailAddress = Email Address
emailAddress_max = 40
localityName = Locality Name (city, district)
stateOrProvinceName = State or Province Name (full name)
countryName = Country Name (2 letter code)
countryName_min = 2
countryName_max = 2
commonName = Common Name (hostname, IP, or your name)
commonName_max = 64

# Default values for the above, for consistency and less typing.
# Variable name  Value
#------------------------------  ------------------------------
0.organizationName_default = My Company
localityName_default = My Town
stateOrProvinceName_default = State or Providence
countryName_default = US

[ v3_ca ]
basicConstraints = CA:TRUE
subjectKeyIdentifier = hash
authorityKeyIdentifier = keyid:always,issuer:always

[ v3_req ]
basicConstraints = CA:FALSE
subjectKeyIdentifier = hash


In die proftpd.conf

Code:
TLSEngine on
TLSLog /var/log/proftpd_tls.log
TLSProtocol TLSv1

# Are clients required to use FTP over TLS when talking to this server?
TLSRequired on

# Server's certificate
TLSRSACertificateFile /usr/share/ssl/certs/my-zertifikat.crt  
TLSRSACertificateKeyFile /usr/share/ssl/certs/my-zertifikat.key  

# CA the server trusts
TLSCACertificateFile /usr/share/ssl/certs/privkey.pem

# Authenticate clients that want to use FTP over TLS?
TLSVerifyClient on


Irgendwie ging's dann  :roll:


Titel: ProFTPd ohne Plaintext-Passwörter?
Beitrag von: TL am 09. Mai 2003, 22:31:26
das script von TJ http://www.castaglia.org/openssl/contrib/cert-tool nimmt einem die ganze arbiet mit dem erstellen und signen von certificaten ab... sollte damit kein problem sein certificate zu erstellen...


Titel: ProFTPd ohne Plaintext-Passwörter?
Beitrag von: Wörsty am 09. Mai 2003, 22:47:54
Hat bei mir aber nicht funktioniert. :cry:


Titel: ProFTPd ohne Plaintext-Passwörter?
Beitrag von: Anonymous am 24. Mai 2003, 15:50:06
Dann musst du im script die pfade für openssl anpassen... ;)


Titel: ProFTPd ohne Plaintext-Passwörter?
Beitrag von: Anonymous am 28. Mai 2003, 21:23:40
habe da auch ein problem:

--- Start --
May 28 21:07:54 mod_tls/2.0.6[12016]: unable to set CA verification locations '/usr/local/ssl/certs/privkey.pem' or '(null)': error:00000000:lib(0):func(0):reason(0)
May 28 21:08:11 mod_tls/2.0.6[12020]: unable to set CA verification locations '/usr/local/ssl/certs/privkey.pem' or '(null)': error:00000000:lib(0):func(0):reason(0)
May 28 21:08:16 mod_tls/2.0.6[12021]: unable to set CA verification locations '/usr/local/ssl/certs/privkey.pem' or '(null)': error:00000000:lib(0):func(0):reason(0)
May 28 21:08:24 mod_tls/2.0.6[12022]: unable to set CA verification locations '/usr/local/ssl/certs/privkey.pem' or '(null)': error:00000000:lib(0):func(0):reason(0)
May 28 21:10:35 mod_tls/2.0.6[12035]: unable to set CA verification locations '/usr/local/ssl/certs/privkey.pem' or '(null)': error:00000000:lib(0):func(0):reason(0)
May 28 21:11:03 mod_tls/2.0.6[12036]: unable to set CA verification locations '/usr/local/ssl/certs/privkey.pem' or '(null)': error:00000000:lib(0):func(0):reason(0)
--- Ende ---

Was könnte das sein?
habe da noch eine frage zu mod_tls:
verschlüsselt das modul nur das passwort oder auch die ganzen daten die man hin und der schiebt?

Danke


Titel: ProFTPd ohne Plaintext-Passwörter?
Beitrag von: Anonymous am 30. Mai 2003, 18:39:21
Zitat von: "Anonymous"
habe da auch ein problem:

--- Start --
May 28 21:07:54 mod_tls/2.0.6[12016]: unable to set CA verification locations '/usr/local/ssl/certs/privkey.pem' or '(null)': error:00000000:lib(0):func(0):reason(0)
May 28 21:08:11 mod_tls/2.0.6[12020]: unable to set CA verification locations '/usr/local/ssl/certs/privkey.pem' or '(null)': error:00000000:lib(0):func(0):reason(0)
May 28 21:08:16 mod_tls/2.0.6[12021]: unable to set CA verification locations '/usr/local/ssl/certs/privkey.pem' or '(null)': error:00000000:lib(0):func(0):reason(0)
May 28 21:08:24 mod_tls/2.0.6[12022]: unable to set CA verification locations '/usr/local/ssl/certs/privkey.pem' or '(null)': error:00000000:lib(0):func(0):reason(0)
May 28 21:10:35 mod_tls/2.0.6[12035]: unable to set CA verification locations '/usr/local/ssl/certs/privkey.pem' or '(null)': error:00000000:lib(0):func(0):reason(0)
May 28 21:11:03 mod_tls/2.0.6[12036]: unable to set CA verification locations '/usr/local/ssl/certs/privkey.pem' or '(null)': error:00000000:lib(0):func(0):reason(0)
--- Ende ---

Was könnte das sein?
habe da noch eine frage zu mod_tls:
verschlüsselt das modul nur das passwort oder auch die ganzen daten die man hin und der schiebt?

Danke


einloggen kann ich mich, es kommt aber immer noch dieser fehler...
habe da noch eine frage zu mod_tls:
verschlüsselt das modul nur das passwort oder auch die ganzen daten die man hin und der schiebt?


Titel: ProFTPd ohne Plaintext-Passwörter?
Beitrag von: TL am 31. Mai 2003, 20:04:39
Zitat von: "Anonymous"
Zitat von: "Anonymous"
habe da noch eine frage zu mod_tls:
verschlüsselt das modul nur das passwort oder auch die ganzen daten die man hin und der schiebt?


Wahlweise wird der kommando kanal und/oder daten-kanal verschlüsselt...