PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : FTP-Account über Putty erstellen



Seiten : [1] 2

JenneMann
28.04.09, 12:53
Hallo Linux-Gemeinde,

Ich habe ein Problem, bei dem ich mir die Zähne ausbeisse :-(

Ich habe vor 3 Jahren Server angemietet. Diese hatten ServerAdmin24 drauf und ich kam damit sehr gut zurecht.
Nun brauchte ich weitere Server und mußte feststellen, das es das ServerAdmin24 nicht mehr gibt.

Somit läuft mein System mit Suse11 und Plesk 9.0

Nun mein Problem:
Ich habe auf meinen "alten" Server zu bestimmten Ordnern im Web FTP-Zugänge eingerichtet. Leider steht diese Funktion bei Plesk nicht mehr zur Verfügung.
Seit Tagen suche ich nun im Web nach einer Lösung. Da ich keine grafische Oberfläche für die Accounts benötige, würde es mir reichen, diese Zugänge per Putty zu erstellen.

Aber wie?
In diesem Forum habe ich folgende Anleitung gelesen :

useradd NAME
passwd NAME (dann erfolgt Passworteingabe)

Wie kann ich nun den Ordner bestimmen, in dem der FTP-Account gehen soll ?

Bitte entschuldigt meine Unwissenheit. Man liest hier immer, das man keinen Server anmieten soll, wenn man keinen Plan hat. Aber ich erhoffe mir hier Hilfe, damit ich mich mal damit auskenne und ich auah mal helfen kann.
Gebt Newbies eine Chance ;-)

Mit den besten Grüßen
JenneMann :D

marce
28.04.09, 12:58
ich vermute, Du suchst das Home-Verzeichnis des Users...

man usermod

Sollten es aber virtuelle User sein - je nach FTP-Server.

Gelobe aber bitte Besserung, was Deinen Stand über Linux/Unix-Basiswissen angeht...

JenneMann
28.04.09, 13:09
Hallo marce,

Vielen lieben Dank für die Hilfe. Ihr seit das erste Forum, was überhaupt hilft :(

Ich gelobe Besserung. Mir geht meine Hilflosigkeit ja selber auf den Keks.

Nun ist es mir peinlich.....

Habe mich vielleicht dumm ausgedrückt.

Die FTP-Accounts werden von einem Webzugang erstellt. Dort kann man mittels Browser Dateien hochladen. Aber immer nur eines nach dem anderen. Das nervt natürlich.
Bei ServerAdmin24 habe ich FTP-Zugänge in diese vom Web erstellten Ordner erstellt.

Mit Putty stehe ich da vor einem Loch :-( Ich muß das wirklich von "kind auf" lernen :o:o:o

Wenn ich mich als root anmelde habe ich folgendes gemacht:

useradd NAME
passwd NAME (dann kommt aufforderung)

und nu? Was gebe ich da ein? Im Forum las ich :

chown NAME:users /srv/www/vhosts/DOMAIN.de/httpdocs/sb/content/user_1

Also in den Ordner 1 soll NAME sich mit einem FTP-Client verbinden könenn, um Daten hochzuladen. Aber ich komme nicht drauf :-(

Biete ein Königreich für eine detailierte Anleitung

marce
28.04.09, 13:16
"ich komme nicht drauf" ist sicherlich nicht die Fehlermeldung, die Du bekommst. Und es gibt sicherlich auch ein Logfile des ftp-Servers, in dem ein Grund stehen könnte.

was _konkret_ Du machen musst hängt sehr davon ab, was denn schon gemacht wurde - wie also z.B. über die Serververwaltungssoftware die User angelegt werden, wo und wie diese verwaltet werden, ...

Außerdem solltest Du etwas weniger kryptisch oder missverständlich schreiben:

Die FTP-Accounts werden von einem Webzugang erstellt. Dort kann man mittels Browser Dateien hochladen
sorgt zumindest bei mir für ein eindeutiges
"Häh?"

JenneMann
28.04.09, 13:41
Hallo marce,

Vielen lieben Dank für die Hilfe. Ihr seit das erste Forum, was überhaupt hilft :(

Ich gelobe Besserung. Mir geht meine Hilflosigkeit ja selber auf den Keks.

Nun ist es mir peinlich.....

Habe mich vielleicht dumm ausgedrückt.

Die FTP-Accounts werden von einem Webzugang erstellt. Dort kann man mittels Browser Dateien hochladen. Aber immer nur eines nach dem anderen. Das nervt natürlich.
Bei ServerAdmin24 habe ich FTP-Zugänge in diese vom Web erstellten Ordner erstellt.

Mit Putty stehe ich da vor einem Loch :-( Ich muß das wirklich von "kind auf" lernen :o:o:o

Wenn ich mich als root anmelde habe ich folgendes gemacht:

useradd NAME
passwd NAME (dann kommt aufforderung)

und nu? Was gebe ich da ein? Im Forum las ich :

chown NAME:users /srv/www/vhosts/DOMAIN.de/httpdocs/sb/content/user_1

Also in den Ordner 1 soll NAME sich mit einem FTP-Client verbinden könenn, um Daten hochzuladen. Aber ich komme nicht drauf :-(

FTP-Meldung:

Befehl: PASS ***********
Antwort: 530 Login incorrect.
Fehler: Herstellen der Verbindung zum Server fehlgeschlagen

HirschHeisseIch
28.04.09, 14:55
Es ist durchaus möglich, dass nur User, welche einer bestimmten Gruppe angehören, sich per FTP einloggen dürfen, oder aber der FTP-Server eine virtuelle User-Verwaltung hat.
Dafür müsste man aber wissen, welcher FTP-Server läuft, und dessen Konfiguration kennen...

Führ mal 'im PuTTY' ein
ps aux | grep ftp aus und poste das Ergebnis hier.

JenneMann
28.04.09, 17:39
Hallo Hirsch,

Das Ergebnis ist :

root 27049 0.0 0.0 4284 752 pts/0 S+ 17:38 0:00 grep ftp


Was für mich vollkommen nichtssagend ist *schäm*:o

Snake85
28.04.09, 18:09
Steht beim Verbinden in deinem FTP Programm noch etwas vor der Ausgabe, die du gepostet hast?

Befehl: PASS ***********
Antwort: 530 Login incorrect.
Fehler: Herstellen der Verbindung zum Server fehlgeschlagen

Die IP/Domain solltest du löschen, aber oft steht da auch noch der Name der FTP-Server-Software.

oziris
28.04.09, 18:57
root 27049 0.0 0.0 4284 752 pts/0 S+ 17:38 0:00 grep ftp


Was für mich vollkommen nichtssagend ist *schäm*:o
ps zeigt Prozess-Listen an. Also Listen laufender Programme, wenn man so will.
grep ist zum Suchen nach Text da.
Das besagt, dass quasi nix gefunden wurde. Die eine Zeile ist der Befehl selbst, der das Wort "ftp" enthält. Daher hat die Suche nur sich selbst gefunden.

Ein besserer Ansatz wäre nach Programmen zu suchen, die am FTP-Port lauschen:
netstat -tlpIn der Ausgabe dieses Befehls (bitte mit root-Rechten starten) sollte in der letzten Spalte der Name der Server-Binary dabei sein. Das wäre ein Anfang.

PS: Bitte füge die Ausgabe zwischen
... ein, damit die Einrückung tabellarischer Inhalte erhalten bleibt.

JenneMann
28.04.09, 19:01
Hallo,

Mensch, bin ich froh, das mir nun geholfen wird :-)

Der Code:



h1014192:/ # netstat -tlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 localhost:epicon *:* LISTEN 3995/sw-engine
tcp 0 0 *:21345 *:* LISTEN 11567/sc_serv
tcp 0 0 *:imaps *:* LISTEN 26313/couriertcpd
tcp 0 0 *:21346 *:* LISTEN 11567/sc_serv
tcp 0 0 *:pop3s *:* LISTEN 26332/couriertcpd
tcp 0 0 *:21320 *:* LISTEN 11085/sc_serv
tcp 0 0 *:21321 *:* LISTEN 11085/sc_serv
tcp 0 0 localhost:10025 *:* LISTEN 26247/master
tcp 0 0 localhost:10026 *:* LISTEN 26247/master
tcp 0 0 *:mysql *:* LISTEN 2814/mysqld
tcp 0 0 *:submission *:* LISTEN 26247/master
tcp 0 0 localhost:10027 *:* LISTEN 26247/master
tcp 0 0 *:21325 *:* LISTEN 11120/sc_serv
tcp 0 0 *:21326 *:* LISTEN 11120/sc_serv
tcp 0 0 *:pop3 *:* LISTEN 26322/couriertcpd
tcp 0 0 *:imap *:* LISTEN 26302/couriertcpd
tcp 0 0 *:mrt *:* LISTEN 22020/sc_serv
tcp 0 0 *:cddbp-alt *:* LISTEN 26553/sw-cp-serverd
tcp 0 0 *:50001 *:* LISTEN 22020/sc_serv
tcp 0 0 localhost:scp-config *:* LISTEN 26553/sw-cp-serverd
tcp 0 0 *:smtps *:* LISTEN 26247/master
tcp 0 0 h1014192.serverk:domain *:* LISTEN 25847/named
tcp 0 0 127.0.0.2:domain *:* LISTEN 25847/named
tcp 0 0 localhost:domain *:* LISTEN 25847/named
tcp 0 0 *:ftp *:* LISTEN 2429/xinetd
tcp 0 0 *:ssh *:* LISTEN 2445/sshd
tcp 0 0 *:21240 *:* LISTEN 11201/sc_serv
tcp 0 0 localhost:remoteware-cl *:* LISTEN 24119/drwebd
tcp 0 0 localhost:postgresql *:* LISTEN 16301/postmaster
tcp 0 0 *:21241 *:* LISTEN 11201/sc_serv
tcp 0 0 *:smtp *:* LISTEN 26247/master
tcp 0 0 localhost:953 *:* LISTEN 25847/named
tcp 0 0 *:pcsync-https *:* LISTEN 26553/sw-cp-serverd
tcp 0 0 *:21340 *:* LISTEN 18689/sc_serv
tcp 0 0 *:21341 *:* LISTEN 18689/sc_serv
tcp 0 0 *:21245 *:* LISTEN 11301/sc_serv
tcp 0 0 *:21246 *:* LISTEN 11301/sc_serv
tcp 0 0 localhost:blockade *:* LISTEN 4002/monit
tcp 0 0 *:netbios-ssn *:* LISTEN 4976/smbd
tcp 0 0 *:submission *:* LISTEN 26247/master
tcp 0 0 *:www-http *:* LISTEN 4399/httpd2-prefork
tcp 0 0 *:smtps *:* LISTEN 26247/master
tcp 0 0 *:domain *:* LISTEN 25847/named
tcp 0 0 *:ssh *:* LISTEN 2445/sshd
tcp 0 0 *:smtp *:* LISTEN 26247/master
tcp 0 0 ip6-localhost:953 *:* LISTEN 25847/named
tcp 0 0 *:https *:* LISTEN 4399/httpd2-prefork
tcp 0 0 *:microsoft-ds *:* LISTEN 4976/smbd


Die Ports 213xx sind Shoutcast-Server.

oziris
28.04.09, 19:28
h1014192:/ # netstat -tlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
[...]
tcp 0 0 *:ftp *:* LISTEN 2429/xinetd
[...]
Das ist er.

xinetd ist der sog. Super-Server.
In /etc/xinietd.conf oder dem dort spezifizierten Include-Verzeichnis (z.B. /etc/xinietd.d/ ) befindet sich eine Service-Definition, die "port = 21" enthält. In diesem Abschnitt müsste dann auch "server = ..." stehen. Das ist dann das Backend-Programm, das für FTP zuständig ist.

Das ist die nächste Info, die uns weiter bringt.

JenneMann
28.04.09, 19:48
Wow......

in der Tat. Das File (xinetd.conf):



#
# xinetd.conf
#
# Copyright (c) 1998-2001 SuSE GmbH Nuernberg, Germany.
# Copyright (c) 2002 SuSE Linux AG, Nuernberg, Germany.
#

defaults
{
log_type = FILE /var/log/xinetd.log
log_on_success = HOST EXIT DURATION
log_on_failure = HOST ATTEMPT
# only_from = localhost
instances = 30
cps = 50 10

#
# The specification of an interface is interesting, if we are on a firewall.
# For example, if you only want to provide services from an internal
# network interface, you may specify your internal interfaces IP-Address.
#
# interface = 127.0.0.1

}

includedir /etc/xinetd.d

oziris
28.04.09, 20:12
includedir /etc/xinetd.d
Das ist das Include-Verzeichnis. Dor musst Du die Service-Definition für FTP finden.
Ich schlage folgendes Kommando vor, um die Datei automatisch zu finden:
egrep -rl '^[[:space:]]*port[[:space:]]*=[[:space:]]*21[[:space:]]*$' /etc/xinetd.d/Ist vielleicht ein bisschen übertrieben, da es ein "grep -Flr 21 /etc/xinetd.d/" vermutlich auch getan hätte... aber sicher ist sicher :D

Den Inhalt der Datei bräuchten wir ... speziell die Zeile mit "server = ..." drin. Kannst ja "grep -F server dateiname" drüber jagen, wenn Du willst.

JenneMann
28.04.09, 20:22
Hi,

Putty machte bei dem Befehl garnichts. Habe mich mit WinSCP auf die Suche gemacht und gefunden im Ordner xinetd.d folgende Dateien:

- chargen
- chargen-udp
- daytime
- daytime-udp
- discard
- discard-udp
- echo
- echo-udp
- ftp-psa
- netstat-
- poppassd_psa.org
- servers
- services
- swat
- systat
- time
- time-udp


Und ich denke mir, ihr wolltet die services haben. Dessen Code:




# default: off
# description: An internal xinetd service, listing active services.

service services
{
type = INTERNAL UNLISTED
port = 9098
socket_type = stream
protocol = tcp
wait = no
disable = yes
only_from = 127.0.0.1
FLAGS = IPv6 IPv4
}



LG
Jens

HirschHeisseIch
28.04.09, 20:29
ftp-psa klingt mir da eher nach ner FTP-Definition. ;)

oziris
28.04.09, 20:50
Vermutlich war der egrep-Pattern zu ... ich sach ma ... brontal. (Lässt keinen Kommentar hinten zu usw..)
Versuche bitte mal
grep -Flr 21 /etc/xinetd.d/... aber vermutlich ist es ftp-psa , wie HirschHeisseIch schon vage angedeutet hat ;)

JenneMann
28.04.09, 21:05
ftp-psa klingt mir da eher nach ner FTP-Definition. ;)

Was bedeutet? :confused:

marce
28.04.09, 21:06
Dass Du so langsam anfangen solltest, das Gehirn einzuschalten.

Was wird denn hier versucht, mit Dir zusammen herauszufinden?

JenneMann
28.04.09, 21:23
Vermutlich war der egrep-Pattern zu ... ich sach ma ... brontal. (Lässt keinen Kommentar hinten zu usw..)
Versuche bitte mal
grep -Flr 21 /etc/xinetd.d/... aber vermutlich ist es ftp-psa , wie HirschHeisseIch schon vage angedeutet hat ;)

ups...hatte diesen Eintrag überlesen. Sorry.

Also bei der Eingabe von dem von Dir genannten Code tat sich garnichts.




h1014192:/ # grep -Flr 21 /etc/xinetd.d/
h1014192:/ #



Es kam nur wieder diese Eingabe :-)

oziris
28.04.09, 21:40
Am Ende steht da "port = ftp" drin... (-_-)" Ich meine sowas schwammig formuliert in "man 5 xinetd.conf" gelesen zu haben.

Wie auch immer, worauf wir mit dem erwähnen von ftp-psa hinauswollten war etwas in dieser Art:
cat /etc/xinetd.d/ftp-psa
cat ist nämlich das Programm zum einfachen Zusammenfügen/Anzeigen von Dateien, was in diesem Falle angebracht wäre.

PS: Ich empfehle die Lektüre von "info coreutils" evtl. nach "info info", um einige wichtige Tools kennenzulernen. Kann man auch nur überfliegen. Wichtig ist eigentlich nur zu wissen, was möglich ist, wo es steht und wie man da hin kommt. Linux-Umgebungen sind meist hervorragend dokumentiert.

JenneMann
28.04.09, 23:29
Hallo,

Ich habe den Befehl eingegeben und es kam:




h1014192:/ # cat /etc/xinetd.d/ftp-psa
cat: /etc/xinetd.d/ftp-psa: No such file or directory
h1014192:/ #

HirschHeisseIch
28.04.09, 23:35
Weiter oben hast noch geschrieben, die Datei gibt es...

Mach mal ein

ls -la /etc/xinetd.d/
und poste die Ausgabe hier, damit man mal was sieht... ;)

JenneMann
28.04.09, 23:36
Voila:




h1014192:/ # ls -la /etc/xinetd.d/
total 76
drwxr-xr-x 2 root root 4096 Apr 23 22:48 .
drwxr-xr-x 82 root root 4096 Apr 28 12:41 ..
-rw-r--r-- 1 root root 313 Jun 6 2008 chargen
-rw-r--r-- 1 root root 333 Jun 6 2008 chargen-udp
-rw-r--r-- 1 root root 313 Jun 6 2008 daytime
-rw-r--r-- 1 root root 333 Jun 6 2008 daytime-udp
-rw-r--r-- 1 root root 313 Jun 6 2008 discard
-rw-r--r-- 1 root root 332 Jun 6 2008 discard-udp
-rw-r--r-- 1 root root 305 Jun 6 2008 echo
-rw-r--r-- 1 root root 324 Jun 6 2008 echo-udp
-rw-r--r-- 1 root root 286 Jan 27 14:07 ftp_psa
-rw-r--r-- 1 root root 492 Jun 7 2008 netstat
-rw-r--r-- 1 root root 331 Apr 10 21:46 poppassd_psa.org
-rw-r--r-- 1 root root 332 Jun 6 2008 servers
-rw-r--r-- 1 root root 334 Jun 6 2008 services
-rw-r--r-- 1 root root 277 Sep 20 2008 swat
-rw-r--r-- 1 root root 536 Jun 6 2008 systat
-rw-r--r-- 1 root root 339 Jun 6 2008 time
-rw-r--r-- 1 root root 333 Jun 6 2008 time-udp
h1014192:/ #



:)

oziris
28.04.09, 23:40
Dann hast Du Dich in Post #14 vertippt und ftp-psa sind in Wirklichkeit die zwei Dateien ftp und psa. In diesem Fall gib bitte folgendes ein:
cat /etc/xinetd.d/ftp

PS: Mit dem Befehl "ls" kann man die Dateien in Verzeichnissen auflisten, dann kann man die Liste kopieren und vertippt sich nicht. Beispiel: "ls -1 /etc/xinetd.d/" würde eine Liste der Dateien in /etc/xinetd.d/ in einer Spalte untereinander ausgeben. Siehe "man ls".
(Diese "man ..."- und "info ..."-Befehle, die ich öfter erwähne, kannst Du im Putty eingeben, um die Gebrauchsanweisung des Servers einzusehen. Ich nenne sie nicht nur, um Dir was beizubringen, sondern auch, damit Du nachvollziehen kannst, dass die Befehle nix böses mit dem Server anstellen.)

HirschHeisseIch
28.04.09, 23:40
cat /etc/xinetd.d/ftp_psa
... Unterstrich eben... ;)

oziris
28.04.09, 23:41
Oh, "ftp_psa", das ist dann richtig:
cat /etc/xinetd.d/ftp_psa

JenneMann
28.04.09, 23:42
Hirsch hatte recht :-)




h1014192:/ # cat /etc/xinetd.d/ftp
cat: /etc/xinetd.d/ftp: No such file or directory
h1014192:/ #
h1014192:/ # cat /etc/xinetd.d/ftp_psa

service ftp
{
disable = no
socket_type = stream
protocol = tcp
wait = no
user = root
instances = UNLIMITED
server = /usr/sbin/in.proftpd
server_args = -c /etc/proftpd.conf
}

h1014192:/ #

HirschHeisseIch
28.04.09, 23:43
So langsam gehts vorwärts... ;)


cat /etc/proftpd.conf


Edit:
IPs u.Ä. darfst zensieren. ;)

JenneMann
28.04.09, 23:45
voila




h1014192:/ # cat /etc/proftpd.conf
#
# To have more informations about Proftpd configuration
# look at : http://www.proftpd.org/
#

# 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"
#ServerType standalone
ServerType inetd
DefaultServer on
<Global>
DefaultRoot ~ psacln
AllowOverwrite on
</Global>
DefaultTransferMode binary
UseFtpUsers on

TimesGMT off
SetEnv TZ :/etc/localtime
# 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

#Following part of this config file were generate by PSA automatically
#Any changes in this part will be overwritten by next manipulation
#with Anonymous FTP feature in PSA control panel.

#Include directive should point to place where FTP Virtual Hosts configurations
#preserved

ScoreboardFile /var/run/proftpd/scoreboard

# Primary log file mest be outside of system logrotate province

TransferLog /usr/local/psa/var/log/xferlog

#Change default group for new files and directories in vhosts dir to psacln

<Directory /srv/www/vhosts>
GroupOwner psacln
</Directory>

# Enable PAM authentication
AuthPAM on
AuthPAMConfig proftpd

IdentLookups off
UseReverseDNS off

AuthGroupFile /etc/group

Include /etc/proftpd.include
h1014192:/ #



@Oziris:
Die Liste im Post 14 hatte ich aus WinSCP. :-)

oziris
28.04.09, 23:49
Das dürfte die Doku dazu sein:
http://www.proftpd.org/localsite/Userguide/linked/c572.html

Dann sollten wir nochmal einen Blick in die /etc/proftpd.conf werfen, ob PAM verwendet wird oder wie das eingestellt ist.
cat /etc/proftpd.confIch hoffe, die ist nciht so groß...