PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Probleme mit Proftpd und MySql



Brainman
08.02.08, 18:32
Hallo,
Zu allererst die Serverdaten:
Debian 3.1
Isgenug von ovh

Installiert:
Apache 2
Php 4
MySql 4.1
PhpMyAdmin

(um genauer zu sein:

apt-get install apache2-mpm-prefork libapache2-mod-perl2 libapache2-mod-php4 mysql-client-4.1 mysql-server-4.1 libmysqlclient10 libmysqlclient12 libmysqlclient14 php4 php4-cgi php4-cli php4-pear php4-mysql phpmyadmin php4-gd libgd2
)

Ich bin ein ziemlicher Linux-Anfänger, und habe folgende Probleme:

1. Nachdem ich Proftpd heruntergeladen und installiert hatte, war die proftpd.config leer. Also habe ich folgendes in die .config eingefügt (also eher abgetippt, da es mit dem mceditor anscheinend nicht möglich ist, auszuschneiden und einzufügen):

http://proftpd.de/Standard-Deluxe.57.0.html

Ich habe 2 benutzer:

1. root
2. user1

User1 ist in der Gruppe ftpuser, und ist in der .config eingetragen (sowohl der Name(user1), als auch die Gruppe(ftpuser)).

User1 kann sich auch wunderbar auf dem Ftp-server anmelden.
Doch anscheinend stimmt etwas mit der Konfiguration der .config - Datei nicht. Diese wird anscheinend einfach ignoriert.
Der User ist weder in seinem Home-Verzeichniss gefangen, noch gibt es sowas wie Timeouts.
Was mache ich also falsch?
Warum ist die .config anfangs leer?
Weshalb wird sie nicht übernommen?
Wie kann man mit mcedit Dinge einfügen (mit strg-c + strg-v)?
Wo kann man einstellen, wie viel Speicherplatz User1 zur Verfügung steht (z.B. 200mb)?

2. Ich hab ein Problem mit MySql.
Ich kann mich:

- Nur in PhpMyAdmin einloggen, wenn der root in der shell eingeloggt ist
- Nur also root einloggen

Ziel: ich würde mich gerne als user1 einloggen können.


mfg,
Brainman

linuxjohnny
08.02.08, 19:22
Hi,

Wiso kann sich der User1 anmelden und weiter unten in deinem Text nicht mehr, irgendetwas hast du da komisch beschrieben aber egal ich habe dir mal ne Lösung gepostet:)

Also wenn du willst das sich der User1 aus der Gruppe anmelden kann, könntest du das folgendermassen lösen:


#chroot für alle User der Gruppe ftpuser
DefaultRoot ~ ftpuser

#Login nur von Mitgliedern der Gruppe ftpuser erlauben
<Limit LOGIN>
DenyGroup !ftpuser
</Limit>


Hier mal meine Konfig: (vielleicht hilft sie dir)


#
# /etc/proftpd/proftpd.conf -- This is a basic ProFTPD configuration file.
# To really apply changes reload proftpd after modifications.
#

# Includes DSO modules
Include /etc/proftpd/modules.conf

# Set off to disable IPv6 support which is annoying on IPv4 only boxes.
UseIPv6 on

ServerName "Debian"
ServerType standalone
DeferWelcome on

MultilineRFC2228 on
DefaultServer on
ShowSymlinks on

TimeoutNoTransfer 600
TimeoutStalled 600
TimeoutIdle 1200

DisplayLogin welcome.msg
DisplayFirstChdir .message
ListOptions "-l"

DenyFilter \*.*/

# Port 21 is the standard FTP port.
Port 21

# In some cases you have to specify passive ports range to by-pass
# firewall limitations. Ephemeral ports can be used for that, but
# feel free to use a more narrow range.
PassivePorts 49152 65534

# 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 proftpd
Group nogroup

#chroot für alle User der Gruppe ftpuser
DefaultRoot ~ ftpuser

#Login nur von Mitgliedern der Gruppe ftpuser erlauben
<Limit LOGIN>
DenyGroup !ftpuser
</Limit>

# Umask 022 is a good standard umask to prevent new files and dirs
# (second parm) from being group and world writable.
Umask 022 022
# Normally, we want files to be overwriteable.
AllowOverwrite on

# Uncomment this if you are using NIS or LDAP to retrieve passwords:
# PersistentPasswd off

# Be warned: use of this directive impacts CPU average load!
#
# Uncomment this if you like to see progress and transfer rate with ftpwho
# in downloads. That is not needed for uploads rates.
# UseSendFile off

TransferLog /var/log/proftpd/xferlog
SystemLog /var/log/proftpd/proftpd.log

<IfModule mod_tls.c>
TLSEngine off
</IfModule>

<IfModule mod_quota.c>
QuotaEngine on
</IfModule>

<IfModule mod_ratio.c>
Ratios on
</IfModule>


# Delay engine reduces impact of the so-called Timing Attack described in
# http://security.lss.hr/index.php?page=details&ID=LSS-2004-10-02
# It is on by default.
<IfModule mod_delay.c>
DelayEngine on
</IfModule>

<IfModule mod_ctrls.c>
ControlsEngine on
ControlsMaxClients 2
ControlsLog /var/log/proftpd/controls.log
ControlsInterval 5
ControlsSocket /var/run/proftpd/proftpd.sock
</IfModule>

<IfModule mod_ctrls_admin.c>
AdminControlsEngine on
</IfModule>

# A basic anonymous configuration, no upload directories.

# <Anonymous ~ftp>
# User ftp
# Group nogroup
# # We want clients to be able to login with "anonymous" as well as "ftp"
# UserAlias anonymous ftp
# # Cosmetic changes, all files belongs to ftp user
# DirFakeUser on ftp
# DirFakeGroup on ftp
#
# RequireValidShell off
#
# # Limit the maximum number of anonymous 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
# <Directory *>
# <Limit WRITE>
# DenyAll
# </Limit>
# </Directory>
#
# # Uncomment this if you're brave.
# # <Directory incoming>
# # # Umask 022 is a good standard umask to prevent new files and dirs
# # # (second parm) from being group and world writable.
# # Umask 022 022
# # <Limit READ WRITE>
# # DenyAll
# # </Limit>
# # <Limit STOR>
# # AllowAll
# # </Limit>
# # </Directory>
#
# </Anonymous>


Im mcedit kannst du Daten mit F2 speichern.
mit dem Kommando mc kommst du in den Midnight Commander dort kannst du deinen Daten verwalten.

Mit disk quotas kannst du festlegen wie viel Platz ein User brauchen darf. google mal danach.

Das mit dem Mysql Login ist unlogisch das du dich nur dann einloggen kannst wenn der User root auch in der shell angemolden ist eigentlich solltest du dich auch so anmelden können.

Das sich der User1 anmelden kann musst du einen neuen User in der Mysql anlegen.

MFG

Kevin Haag

DaGrrr
08.02.08, 19:25
Leg doch nen User mit den Rechten die benötigt werden in MySQL an, dann klappts auch.

Grüße
DaGrrr

linuxjohnny
08.02.08, 19:34
Hier noch was zu dem Disk Quota.

http://archiv.debianhowto.de/de/quota/c_quota.html

MFG

Kevin Haag

Brainman
08.02.08, 19:42
Hi,

Im mcedit kannst du Daten mit F2 speichern.
mit dem Kommando mc kommst du in den Midnight Commander dort kannst du deinen Daten verwalten.



Jeps, wie mcedit funktioniert ist mir schon klar (also der Befehl).
Mein Problem ist eher, dass ich nicht weiß, wie man im midnight commander Daten aus dem Zwischenspeicher einfügen kann (also hier z.B. 1. text markieren, 2. rechtsklick 3. kopieren. Dann kann man normal in Putty nen Rechtsklick machen und die Daten aus dem Zwischenspeicher werden eingefügt. Das geht beim Midnight Commander nicht (also ich bekomme es zumindest nicht hin). Könntest du mir sagen wie das geht???


Leg doch nen User mit den Rechten die benötigt werden in MySQL an, dann klappts auch.


Öhm... wie geht das?
Von der MySQL-shell habe ich leider überhaupt keine Ahnung.

mfg,
MrJack

DaGrrr
08.02.08, 19:54
User anlegen:

CREATE USER 'benutzername'@'hostname' IDENTIFIED BY 'password';

Rechte mit GRANT.

Schau mal in die Manual, die es sogar in Deutsch gibt.

http://dev.mysql.com/doc/

Grüße
DaGrrr

Brainman
08.02.08, 20:01
Mit GRANT geht das.

Schau mal in die Manual, die es sogar in Deutsch gibt.

http://dev.mysql.com/doc/

Grüße
DaGrrr

2 Beiträge, und schon liebe ich dich :D
Vielen Dank dafür, nach 5 Minuten ging alles.

Aber mein Problem mit Proftpd besteht immernoch :(
Hat niemand eine Lösung?
Meinetwegen könnte ich auch proftpd wieder de-installieren und ein anderes Tool verwenden, Hauptsache der ftp-server läuft endlich mal so wie er es soll.

mfg,
Brainman

linuxjohnny
08.02.08, 20:03
Was läuft denn genau nicht?
Nach deiner Beschreibung kann sich der User anmelden aber irgendwie doch nicht?

MFG

Kevin Haag

Brainman
08.02.08, 20:21
Was läuft denn genau nicht?
Nach deiner Beschreibung kann sich der User anmelden aber irgendwie doch nicht?

MFG

Kevin Haag

Also: Das Anmelden klappte bloß in MySQL nicht, da dort noch kein Benutzer erstellt war^^

Man KANN auf den server per FTP zugreifen.
Doch ich hätte es gerne so eingestellt, dass der jeweilige User sich nur in seinem Heimatverzeichnis aufhalten und handeln darf.
Allerdings klappt das nicht.
Wie gesagt: Meine .config wird mehr oder weniger ignoriert.

mfg,
Brainman

edit: Bei quotatool krieg ich nach der Zusweisung folgenden fehler:

ks36678:~# quotatool -u user1 -b -q 200MB -v /home
quotatool: using filesystem /home
quotatool: user 'user1' has uid 1000
quotatool: filesystem /home has device node /dev/sda2
quotatool: Error while detecting kernel quota version: No such process

linuxjohnny
08.02.08, 20:50
Also ich habe dir oben mal meine config geposte dort steht das drin mit dem User das er nicht aus seinem Homeverzeichnis raus kann.

chroot heisst das:D


#chroot für alle User der Gruppe ftpuser
DefaultRoot ~ ftpuser

Brainman
08.02.08, 21:05
Also ich habe dir oben mal meine config geposte dort steht das drin mit dem User das er nicht aus seinem Homeverzeichnis raus kann.

chroot heisst das:D

Hier mal meine Config:


#
# /etc/proftpd.conf -- This is a basic ProFTPD configuration file.
# To really apply changes reload proftpd after modifications.
#

ServerName "Debian"
ServerType standalone
DeferWelcome off

MultilineRFC2228 on
DefaultServer on
ShowSymlinks on

TimeoutNoTransfer 600
TimeoutStalled 600
TimeoutIdle 1200

DisplayLogin welcome.msg
DisplayFirstChdir .message
ListOptions "-l"

DenyFilter \*.*/

# Uncomment this if you are using NIS or LDAP to retrieve passwords:
#PersistentPasswd off

# Uncomment this if you would use TLS module:
#TLSEngine on

# Uncomment this if you would use quota module:
#Quotas on

# Uncomment this if you would use ratio module:
#Ratios on

# Port 21 is the standard FTP port.
Port 21

# 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

# Umask 022 is a good standard umask to prevent new files and dirs
# (second parm) from being group and world writable.
Umask 022 022
# Normally, we want files to be overwriteable.
AllowOverwrite on

# Delay engine reduces impact of the so-called Timing Attack described in
# http://security.lss.hr/index.php?page=details&ID=LSS-2004-10-02
# It is on by default.
#DelayEngine off

# A basic anonymous configuration, no upload directories.

# <Anonymous ~ftp>
# User ftp
# Group nogroup
# # We want clients to be able to login with "anonymous" as well as "ftp"
# UserAlias anonymous ftp
# # Cosmetic changes, all files belongs to ftp user
# DirFakeUser on ftp
# DirFakeGroup on ftp
#
# RequireValidShell off
#
# # Limit the maximum number of anonymous 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
# <Directory *>
# <Limit WRITE>
# DenyAll
# </Limit>
# </Directory>
#
# # Uncomment this if you're brave.
# # <Directory incoming>
# # # Umask 022 is a good standard umask to prevent new files and dirs
# # # (second parm) from being group and world writable.
# # Umask 022 022
# # <Limit READ WRITE>
# # DenyAll
# # </Limit>
# # <Limit STOR>
# # AllowAll
# # </Limit>
# # </Directory>
#
# </Anonymous>


Leider kann man im mc - editor nicht wie z.B. in Wordpad etwas markieren, es mit "strg" und "c" kopieren und mit "strg" und "v" wieder einfügen, was mir nur die Möglichkeit lässt, die ganzen Configs abzutippen =(.
Sollte doch jemand wissen wie das geht, bitte posten.

Wenn du einen Fehler in meiner .config findest, sag es mir bitte. Ich habe nichts falsches gefunden.

mfg,
Brainman

edit: Ach du ******* O_O. Wenn ich per ftp die .config aufrufe, bekomme ich ne ganz andere als über den mc? Wtf? Ich schau da mal genauer nach... Danke Johnny ;)

edit2: Oh Gott... Schande über mein Haupt... falschen Pfad verwendet. Statt mc /etc/proftpd.config hab ich immer mc /etc/proftpd/proftpd.config genommen.


Vielen Dank Johnny und DaGrrr, ihr habt mir sehr geholfen.

Brainman
08.02.08, 22:14
Also, erstmal Entschuldigung für den Doppelpost, aber ich möchte dass es bemerkt wird (es ist ziemlich dringend).

Also, ich habe alles soweit hinbekommen.

Doch nun ist es so:

entweder ordne ich user1 der gruppe ftpuser zu,

oder

der gruppe ftpprouser

In der Gruppe ftpuser landet user1 im root-Verzeichnis und kommt da nicht raus (alle Zugriffe verweigert, wie´s auch sein sollte).

Doch er landet nicht wie gewollt in /home/user1, sondern in /

Wenn ich user1 der gruppe ftpprouser zuordne, kann er machen was er will (wie auch von den Codern gewollt). Das will ich aber nicht.

Also meine Frage:

Wie/Wo kann ich einstellen, dass user1 in der Gruppe ftpuser beim Einloggen in /home/user1 landet?

mfg,
Brainman

linuxjohnny
08.02.08, 23:13
Also wie hasst du den neuen User angelegt? also mit welchem Kommando?

User anlegen und der Gruppe ftpuser hinzufügen die Login Shell auf false setzen so das sich der User nicht am System anmelden kann, du kannst die shell auch auf /bin/passwd setzen dammit sich der user per ssh anmelden kann und dann sein Passwort ändern kann.

useradd user1 -m -G ftpuser -s /bin/false



MFG

Kevin Haag

Brainman
08.02.08, 23:17
So:


#Ftp-User
Debian Server ~# useradd USERNAME #legt nur den Usernamen an sonst nichts
Debian Server ~# usermod -G ftpuser USERNAME#chroot ungleich ftpprouser siehe später proftpd.conf
Debian Server ~# usermod -d /HOME/ERZEICHNIS USERNAME
Debian Server ~# usermod -s /bin/ftp USERNAME#keine Anmeldung an System

edit:
Da es user1 ja schon gibt, musste ich usermod -G ftpuser -s /bin/passwd user1 eingeben.

linuxjohnny
09.02.08, 08:59
Schau mal in /etc/passwd nach wo der user1 sein homeverzeichnis hat.

MFG

Kevin Haag

Brainman
09.02.08, 10:27
Ufff, ich habe wieder ein ganz anderes Problem....

Johnny, wärst du so nett und würdest dein Skype anmachen, dann können wir das dort regeln.
Wenn was dabei rauskommt, werde ich es hier posten, damit auch Anderen mit den selben Problemen geholfen wird.

mfg,
Brainman

linuxjohnny
09.02.08, 10:30
Okee habe es an bin unter kevinhaag ereichbar kannst mich mal hinzufügen.

MFG

Kevin Haag

Brainman
09.02.08, 16:13
So,
Nach ca. 3 Stunden Arbeit, einem wiederaufgesetzten Linux 4.0, vielen gelöschten "user1" und noch mehr Nerven ist es soweit:

ProFtpd läuft.

Also ohne linuxjohnny hätte ich das nie und nimmer geschafft, danke dir.

Für alle, die das gleiche Problem haben: ladet euch webmin runter und ersetzt eure proftpd.conf ´s durch exakt die, die Johnny auch gepostet hat.
Dann noch die Gruppen anlegen, passwort vergeben und (ganz wichtig): Das Homeverzeichnis genau festlegen!

Dann sollte es klappen ;)

mfg,
Brainman

linuxjohnny
10.02.08, 11:53
Und niemals denn Benutzer "user1" verwenden der ging einfach nicht warum auch immer.:):):)

MFG

Kevin Haag

Luke24
22.02.08, 21:16
Hallo!

habe da auch mal einen frage zum thema proftpd!!

wie bekommt man dieses zum laufen??
http://proftpd-adm.sourceforge.net/

system:debian 4.0
php5,apache2,mysql-server-5.0,phpmyadmin

in der datenbank sollte alles passen!
die proftpd.conf sollte auch passen!

problem ist das wenn ich auf der webseite(webinterface) einen benutzer anlege dann kann der aber nicht auf den ftp verbinden woran könnte das vieleicht liegen?

mfg Luke24