Die folgende Anleitung und Befehle beziehen sich auf Ubuntu-Linux. Unter anderen Distributionen kann es zu unterschieden bezüglich der Befehle, etc. kommen.
Installtion von Pure-FTPD
Der folgende Befehl lädt Pure-FTPd herunter und installiert dieses.
apt-get install pure-ftpd-mysql
MySQL-Datenbank, User und Tabelle
Nach der Installation vno Pure-FTPd muss eine neue MySQL-Datenbank erstelt werden. Dies funktioniert am besten über phpMyAdmin oder einem vergleichbaren Tool. Natürlich auch direkt über die Konsole. Ich hab die MySQL-DB “system” genannt, jedoch kann der Name beliebig gewählt werden.
Anschließend muss in der Datenbank eine neue Tabelle angelegt werden. Hier hab ich mich weitesgehend an die vorgaben der Pure-FTPd-Dokumentation gehalten.
CREATE TABLE users ( USER VARCHAR(16) BINARY NOT NULL, Password VARCHAR(64) BINARY NOT NULL, Uid INT(11) NOT NULL DEFAULT '-1', Gid INT(11) NOT NULL DEFAULT '-1', Dir VARCHAR(128) BINARY NOT NULL, PRIMARY KEY (USER) );
Anschließend in der “mysql” Datenbank unter “user” einen neuen Benutzer anlegen.
Dazu einfach einen neuen Eintrag in die Tabelle user in der Datenbank mysql. Dieser Benutzer bekommt KEINE Rechte.
Anschließend in die Tabelle ‘db’ noch den Benutzer auf die Datenbank die Rechte geben. Für pure_ftpd reichen nur “SELECT”-Rechte vollkommend aus.
Das Passwort muss vom Typ “password” sein!
Danach müssen die Rechte des MySQL-Server neu geladen werden. Dies kann auch wieder direkt über phpmyadmin gemacht werden. Nun muss nur noch die ‘mysql.conf’ des PureFTPd angepasst werden:
vim /etc/pure-ftpd/db/mysql.conf
Dort müssen folgende Werte angepasst werden:
# Mandatory : user to bind the server as.
MYSQLUser pureftpd_user
# Mandatory : user password. You must have a password.
MYSQLPassword passwort
# Mandatory : database to open.
MYSQLDatabase system
Sowie die folgenden Querys auf die neuen Datenbank:
# Query to execute in order to fetch the password
MYSQLGetPW SELECT Password FROM pureftpd_users WHERE User="\L"
# Query to execute in order to fetch the system user name or uid
MYSQLGetUID SELECT Uid FROM pureftpd_users WHERE User="\L"
# Optional : default UID - if set this overrides MYSQLGetUID
#MYSQLDefaultUID 1000
# Query to execute in order to fetch the system user group or gid
MYSQLGetGID SELECT Gid FROM pureftpd_users WHERE User="\L"
Jetzt zum Schluss noch den FTP-Server neustarten. Jetzt kann man in die Tabelle pureftpd_users einfach die FTP-User eintragen.
Weitere Links
PureFTPd
PureFTPd Dokumentation
{ 2 Kommentare } { 0 Shares }
{ 2 Kommentare… lies sie unten oder schreib selbst einen }
ich komme hier nicht weiter,
wie mach man einen neuen user in sql ?? ??????
Meinst Du einen MySQL-Benutzer? In die entsprechende User-Tabelle eintragen und in der Tabelle “users” in der “mysql”-Datenbank den User anlegen und in der Tabelle “db” die entsprechenden Rechte geben.