FTP Server mit TSL/SSL

Probleme mit Samba, NFS, FTP und Co.
Antworten
IchLerneNoch
Beiträge: 13
Registriert: 30.08.2016 20:29:55

FTP Server mit TSL/SSL

Beitrag von IchLerneNoch » 30.08.2016 20:40:48

Hallo,

ich habe schon etwas gelesen und auch einiges probiert. u.a. das:
https://forum.netcup.de/administration- ... ntu-14-04/

Hat aber nicht so gut funktioniert, weil es wohl auch für ubuntu ist und ich debian 8 Server verwende.

Derzeit habe ich einen Webserver nginx, der Webserver läuft und per winscp habe ich Zugriff über ssh auf meinen Server.

Nun benötige ich aber einen FTP Server, bei dem ich mich wohler fühle und am Ende auch weiß, das es so funktionuiert weil es funktioeren soll und nicht weil ich glück habe.
Dazu habe ich bisher VSFTPD genutzt wie es in de Anleitung oben bei netcup war.

Da der FTP Server derzeit läuft, aber ich ja TLS möchte wende ich mich an euch, denn der läuft im Moment nur ohne TLS.
Schalte ich in der vsftpd.conf sslenable ON sehe ich in Filezilla das:

Code: Alles auswählen

Status:    Verbinde mit 188.68.xx.xx:21...
Status:    Verbindung hergestellt, warte auf Willkommensnachricht...
Status:    Initialisiere TLS...
Status:    Überprüfe Zertifikat...
Status:    TLS-Verbindung hergestellt.
Status:    Der Server unterstützt keine Nicht-ASCII-Zeichen.
Status:    Angemeldet
Status:    Empfange Verzeichnisinhalt...
Befehl:    PWD
Antwort:    257 "/"
Befehl:    TYPE I
Antwort:    200 Switching to Binary mode.
Befehl:    PASV
Antwort:    227 Entering Passive Mode (188,68,xx,xx,47,158).
Befehl:    LIST
Fehler:    Zeitüberschreitung der Verbindung nach 20 Sekunden Inaktivität
Fehler:    Verzeichnisinhalt konnte nicht empfangen werden
Die vsftpd.conf sieht so aus:

Code: Alles auswählen

# Run standalone vs. from an inetd – start daemon from an initscript
listen=YES
#
# Disallow anonymous FTP. 
anonymous_enable=NO
#
# Allow local users to log in.
local_enable=YES
#
# Allow per-user configuration for local users.
user_config_dir=/etc/vsftpd_user_conf
#
# Enable FTP write commands – controlled with cmds_allowed list.
write_enable=YES
#
# Don’t allow recursive listing – prevents excessive I/O usage.
ls_recurse_enable=NO
#
# Activate directory messages - messages given to remote users when they
# go into a certain directory.
dirmessage_enable=YES
#
# Display directory listings with the time in  your  local  time  zone.
# Default is to display GMT.
use_localtime=YES
#
# Activate logging of uploads/downloads, but not in xferlog format
xferlog_enable=YES
xferlog_std_format=NO
log_ftp_protocol=YES
#
# Make sure PORT transfer connections originate from port 20 (ftp-data).
connect_from_port_20=YES
#
# Uploaded files are owned by the uploader.
chown_uploads=NO
#
# Default log – enable and change for custom location/name
xferlog_file=/var/log/vsftpd.log
#
# You may change the default value for timing out an idle session.
idle_session_timeout=600
#
# You may change the default value for timing out a data connection.
data_connection_timeout=120
#
# Don’t allow ASCII mangling on files when in ASCII mode.
# ASCII mangling is a horrible feature of the protocol.
ascii_upload_enable=NO
ascii_download_enable=NO
#
# Customize the login banner string:
ftpd_banner=Welcome to our FTP service.
#
# Customization
#
# Some of vsftpd's default settings don't fit the filesystem layout.
#
# Empty directory which isn’t writable by the ftp user. This directory is used
# as a secure chroot() jail when vsftpd does not require filesystem access.
secure_chroot_dir=/var/run/vsftpd/empty
#
# This string is the name of the PAM service vsftpd will use.
pam_service_name=vsftpd
#
# Location of the RSA certificate to use for SSL encrypted connections.
rsa_cert_file=/etc/ssl/private/vsftpd.pem
#
# Allow PASV (passive ftp)
pasv_enable=YES
pasv_min_port=12000
pasv_max_port=12500
port_enable=YES
# enter your IP address on the line below – example: 184.37.445.210
pasv_address=188.68.55.21
pasv_addr_resolve=NO
#####################################################
listen_ipv6=NO
nopriv_user=www-data
chroot_local_user=YES
allow_writeable_chroot=YES
#rsa_private_key_file=/etc/ssl/private/vsftpd.pem
ssl_enable=YES
######################################################
#
# set chmod correctly for apache, see
# http://en.gentoowiki.com/wiki/Vsftpd
file_open_mode=0666
# Default umask for local users is 077 – replace with 022
local_umask=0022
#
Die Conf Inhalte habe ich mir aus was weiß ich wie vielen Seiten zusammen gesucht. Wie ich den Benutzer angelegt habe ist mir bis heute ein rätsel. Irgendwann ging es dann zufällig.

Ich hoffe, dass mir einer erklären kann wie ich das, was ich habe besser machen kann, sodass auch SSL geht oder mir jemand anhand eines andere FTP Server erklären kann wie ich am besten vorgehen kann.

Ich habe auch schon bei howtofroge einiges gelesen, da wurde aber meine "Problematik" nie angesprochen:
ich habe einen Ordner "html" dem www-data gehört und in dessen Gruppe er auch ist. Der FTP User soll auch darin schreiben und lesen dürfen. Das geht bisher irgendwie nicht.

Ich wäre euch dankbar, wenn mir da jemand auf die Beine helfen könnte, dass ich zumindest weiß wie ich da bei der suche nach einer Lösung am besten vorgehen kann. Einige Tutorials sind ja nun auch schon sehr alt und mit neuen Versionen und Standards kommen auch neue Vorgehensweisen einher. Zumindest glaube ich das, weswegen ich einigen Tutorials nicht ganz traue, die aus dem Jahr 2003 sind. Auch bei howtofroge sind einige Kommentare nicht ermutigend.

Ich hoffe, dass ich hier bei euch besser aufgehoben bin :)

DeletedUserReAsG

Re: FTP Server mit TSL/SSL

Beitrag von DeletedUserReAsG » 30.08.2016 20:50:44

Ich hoffe, dass mir einer erklären kann wie ich das, was ich habe besser machen kann, sodass auch SSL geht
Hast du es schon mal mit der Doku des jeweiligen ftpd versucht? Ich nutze nun vsftpd nicht, aber die für proftpd ist ziemlich gut, und derlei Fragen sollten nach der Lektüre derselben nicht mehr offen sein. Würde mich wundern, wenn es bei vsftpd anders wäre.

IchLerneNoch
Beiträge: 13
Registriert: 30.08.2016 20:29:55

Re: FTP Server mit TSL/SSL

Beitrag von IchLerneNoch » 30.08.2016 21:28:00

Naja, ich habe mich mit der Doku auch bereits beschäftigt.

Aber bin bisher nicht fündig geworden um mein Problem zu lösen.

Ganz konkret habe ich das Problem zu diesen Punkten:
1. FTP Benutzer muss Lese und Schreibrechte im Ordner html habe, der www-data gehört und in dieser Gruppe ist
2. tls sollte funktionieren
3. aktuell erhalte ich bei eingeschalteten TLS u.a. solch eine Meldung: Status: Der Server unterstützt keine Nicht-ASCII-Zeichen. was dazu führt, das ich darüber gleich gar nichts aussagekräftiges finden konnte.


Daher habe ich mich ja ans Forum gewendet. Generell mach eich das ungern, da selbst suchen oft schneller ist.

DeletedUserReAsG

Re: FTP Server mit TSL/SSL

Beitrag von DeletedUserReAsG » 30.08.2016 21:37:56

1: wenn die Gruppe www-data ausreichende Rechte hat, könnte man den User, der dort schreiben soll, der Gruppe hinzufügen. Das hätte nichts mit dem ftpd zu tun, ist aber ein möglicher Weg. Ein anderer wäre es, mit virtuellen Usern zu arbeiten und als GID die von www-data anzugeben. Ein wieder anderer Weg wäre, die Gruppe des betreffenden Verzeichnisses anzupassen.
2: funktioniert bei jedem mir bekannten ftpd. Wie’s zu machen ist, steht eigentlich in der jeweiligen Doku, leider ist die online verfügbare Dokumentation gerade für vsftpd offenbar etwas dürftig. Für proftpd könnte man unter http://www.proftpd.org/docs/howto/TLS.html und http://www.proftpd.org/docs/contrib/mod_tls.html schauen, z.B..
3: muss jemand beantworten, der vsftpd fährt.

eggy
Beiträge: 3331
Registriert: 10.05.2008 11:23:50

Re: FTP Server mit TSL/SSL

Beitrag von eggy » 30.08.2016 21:42:42

Stell das System auf Englisch um, dann gibts auch aussagekräftige Fehlermeldungen, die man in Suchmaschinen werfen kann.
https://bugs.debian.org/cgi-bin/bugrepo ... bug=804777

IchLerneNoch
Beiträge: 13
Registriert: 30.08.2016 20:29:55

Re: FTP Server mit TSL/SSL

Beitrag von IchLerneNoch » 31.08.2016 08:39:58

eggy, danke!

Das war es. Vielen Dank.

Werde es gleich mal auf englisch umstellen.

uname
Beiträge: 12045
Registriert: 03.06.2008 09:33:02

Re: FTP Server mit TSL/SSL

Beitrag von uname » 31.08.2016 08:44:25

Derzeit habe ich einen Webserver nginx, der Webserver läuft und per winscp habe ich Zugriff über ssh auf meinen Server.
Damit kannst du weit mehr als mit FTP. Selbst Debianfilezilla (Linux und Windows) kann sftp (musst nur Port 22 statt 21 angeben)
Nun benötige ich aber einen FTP Server, bei dem ich mich wohler fühle und am Ende auch weiß, das es so funktionuiert weil es funktioeren soll und nicht weil ich glück habe.
Bei mir ist es umgekehrt. sftp ist viel zuverlässiger, da der ssh-Server sowieso läuft und glücklich macht mich ftp bestimmt nicht. Ist wohl wie mit Windows-Anwendern. Windows macht glücklich, weil man die Alternativen erst gar nicht betrachten will.

DeletedUserReAsG

Re: FTP Server mit TSL/SSL

Beitrag von DeletedUserReAsG » 31.08.2016 09:39:39

Die interessante Frage ist ja, wie du die Anforderungen an die Berechtigungen/Userverwaltung mit SFTP realisieren möchtest. Um nur mal Daten zu schubsen, ist SFTP sicher nicht verkehrt, aber das war hier nicht die einzige Anforderung.

IchLerneNoch
Beiträge: 13
Registriert: 30.08.2016 20:29:55

Re: FTP Server mit TSL/SSL

Beitrag von IchLerneNoch » 31.08.2016 09:44:08

Naja ich habe es dann so gemacht:

Code: Alles auswählen

groupadd wwwftp
usermod -g wwwftp mywebsite 
chown -R www-data:wwwftp /var/www
chmod -R 775 /var/www

mywebsite ist der Benutzername für den FTP User
wwwftp ist die Gruppe der FTP Benutzer

ISt das gut so?

uname
Beiträge: 12045
Registriert: 03.06.2008 09:33:02

Re: FTP Server mit TSL/SSL

Beitrag von uname » 31.08.2016 09:57:39

@niemand
Natürlich kann man für sftp auch eine chroot-Umgebung bauen, um den SFTP-Benutzer auf ein Verzeichnis zu beschränken und um echtes SSH zu verbieten. Siehe z.B. viewtopic.php?f=9&t=159540#p1078557
Ist das gut so?
Problematisch finde ich es immer, wenn man zwei unterschiedliche Benutzer hat (www-run, ftpuser), die man über eine gemeinsame Gruppe verwaltet. Irgendwann stimmen dann doch mal die Rechte nicht und es funktioniert nicht. Das Problem besteht bei sftp aber auch. Daher lade ich die Daten meist per root und sftp hoch und ändere anschließend die Rechte auf www-data ;-) Auch nutze ich gerne webbasierte Upload-Scripte zum Hochladen einfacher Dateien.

IchLerneNoch
Beiträge: 13
Registriert: 30.08.2016 20:29:55

Re: FTP Server mit TSL/SSL

Beitrag von IchLerneNoch » 31.08.2016 11:01:49

naja den ftp account benutze nur ich. es gibt niemand anderen und es gibt auch nur einen ftp account

Den FTP Account nutze ich nur für einen Support, der den benötigt, um ein Script anzupassen.

DeletedUserReAsG

Re: FTP Server mit TSL/SSL

Beitrag von DeletedUserReAsG » 31.08.2016 11:05:32

Sicher kann man sich auch mit SFTP was Nettes basteln, solange es nicht um wirklich detaillierte Rechtevergabe, Protokollierung, Ratios, Quotas, virtuelle User in Datenbanken, …, geht. Aber wenn man mit ’nem chroot rumhantieren muss, ist’s unterm Strich dann doch wieder einfacher mit einem richtigen ftpd.

Wenn’s aber nur einen User gibt, der eh ssh-Zugriff hat, wäre SFTP tatsächlich die einfachere Variante. Den mit in die Gruppe www-data schieben und fertig.

Antworten