Entwicklungsumgebung/Ftp: Unterschied zwischen den Versionen

Aus Delixs
Zur Navigation springen Zur Suche springen
(Die Seite wurde neu angelegt: __NOTOC__ {{Uberarbeiten}} ---- <div align="right">zurück | Hauptseite</div>)
 
 
(12 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
__NOTOC__
__NOTOC__
{{Uberarbeiten}}
{{EditStatus|1|ThorstenStrusch}}  


== FTP-Server ==
=== Installation von pure-ftpd ===
Voreinstellungen für den FTP-Server setzen:
<source lang="text">
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
echo -e " \
pure-ftpd-common  pure-ftpd/ftpwho-setuid boolean false
pure-ftpd-common  pure-ftpd/virtualchroot boolean false
pure-ftpd-common  pure-ftpd/standalone-or-inetd  select  standalone \
" | debconf-set-selections
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
</source>
pure-ftpd als LDAP-Variante installieren:
  aptitude -R install pure-ftpd-{common,ldap} -y
Sicherstellen, dass der inetd sich auch wirklich heraushält:
  sed -i '/STANDALONE_OR_INETD=/{s#inetd#standalone#p}' /etc/default/pure-ftpd-common
  update-inetd --comment-chars '#' --disable tftp
Den LDAP Bereich des pure-ftpd konfigurieren. Schreib dafür die
folgenden Zeilen in die "/etc/pure-ftpd/db/ldap.conf":
<source lang="text">
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LDAPServer localhost
LDAPPort  389
LDAPBaseDN ou=people,ou=accounts,dc=delixs-schule,dc=de
LDAPBindDN cn=admin,dc=delixs-schule,dc=de
LDAPBindPW schule
LDAPFilter (&(objectClass=posixAccount)(uid=\L))
LDAPHomeDir homeDirectory
LDAPVersion 3
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
</source>
Kontrolle mittels:
  # egrep -v '^$|#' /etc/pure-ftpd/db/ldap.conf
Danach ist der Dienst wieder durchzustarten
  service pure-ftpd-ldap restart 
=== Test des FTP-Servers ===
Der Erfolg:
  # lsof -ni:21
  COMMAND    PID USER  FD  TYPE DEVICE SIZE NODE NAME
  pure-ftpd 4085 root    5u  IPv4  13005      TCP *:ftp (LISTEN)
  pure-ftpd 4085 root    6u  IPv6  13007      TCP *:ftp (LISTEN)
Da noch kein Benutzer angelegt ist, folgt nun mmustermann:
  delixs-useradd --user mmustermann --lastname Mustermann \
  --forename Martin --class TEACHER --pass geheim
  delixs-passwd --user mmustermann --pass geheim
Er wird jetzt im LDAP auch gefunden.
Der filter (&(objectClass=posixAccount)(uid=mmustermann))"
wird von pure-ftpd benutzt, daher der Test:
  ldapsearch -x -LLL -b "ou=people,ou=accounts,dc=delixs-schule,dc=de" "(&(objectClass=posixAccount)(uid=mmustermann))"
<source lang="text">
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dn: uid=mmustermann,ou=people,ou=accounts,dc=delixs-schule,dc=de
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: shadowAccount
objectClass: sambaSamAccount
cn: mmustermann
sn: mmustermann
givenName: mmustermann
uid: mmustermann
uidNumber: 1000
gidNumber: 1001
homeDirectory: /home/teacher/mmustermann
loginShell: /bin/bash
gecos: Martin Mustermann,TEACHER
sambaLogonTime: 0
sambaLogoffTime: 2147483647
sambaKickoffTime: 2147483647
sambaPwdCanChange: 0
displayName: mmustermann
sambaSID: S-1-5-21-1217022432-528198597-2225102744-3000
sambaPrimaryGroupSID: S-1-5-21-1217022432-528198597-2225102744-3003
sambaLMPassword: 193130B61A7F81C0AAD3B435B51404EE
sambaAcctFlags: [U]
sambaNTPassword: C2AE1FE6E648846352453E816F2AEB93
sambaPwdLastSet: 1256425561
sambaPwdMustChange: 2120425561
shadowMax: 10000
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
</source>
Ein ftp-login gelingt nicht auf localhost, sondern nur auf die IP Adresse von eth0 oder eth1!
Also musst du deine IP-Adresse herausfinden:
  # ifconfig eth0 | awk '/inet Adresse/{print $2}' | awk -F: '{print $2}'
  172.16.16.154
Einloggen mit ncftp ist jetzt erfolgreich:
  ncftp -ummustermann -pgeheim  172.16.16.154
fertig.
== Das FTP Clientprogramm ==
Das Paket "ncftp" ist zur Dateiübertragung mittels (File Transfer Protocol) vorgesehen. Es erlaubt den Transfer von Dateien zu oder von entfernten Rechnern.
Installation:
  aptitude install ncftp
Einzurichten ist hier nichts.
== Weblinks ==
* http://tuxclouds.org
* http://www.debian-administration.org/article/Setting_up_an_FTP_server_on_Debian




----
----
<div align="right">[[Delixs:Entwicklungsumgebung|zurück]] | [[Hauptseite]]</div>
<div align="right">[[Installation:Entwicklungsumgebung|zurück]] | [[Hauptseite]]</div>
 
Thorsten Strusch 2009
 
[[Kategorie:DebianSqueeze]]

Aktuelle Version vom 28. März 2011, 19:30 Uhr


Diese Seite ist momentan eine Baustelle im Zustand: 1

Wird bearbeitet von: ThorstenStrusch
Hilfe zum Bearbeitungsstatus: Hilfe:Status eines Artikels


FTP-Server

Installation von pure-ftpd

Voreinstellungen für den FTP-Server setzen:

<source lang="text"> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ echo -e " \ pure-ftpd-common pure-ftpd/ftpwho-setuid boolean false pure-ftpd-common pure-ftpd/virtualchroot boolean false pure-ftpd-common pure-ftpd/standalone-or-inetd select standalone \ " | debconf-set-selections ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ </source>


pure-ftpd als LDAP-Variante installieren:

 aptitude -R install pure-ftpd-{common,ldap} -y 

Sicherstellen, dass der inetd sich auch wirklich heraushält:

 sed -i '/STANDALONE_OR_INETD=/{s#inetd#standalone#p}' /etc/default/pure-ftpd-common
 update-inetd --comment-chars '#' --disable tftp

Den LDAP Bereich des pure-ftpd konfigurieren. Schreib dafür die folgenden Zeilen in die "/etc/pure-ftpd/db/ldap.conf":


<source lang="text"> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ LDAPServer localhost LDAPPort 389 LDAPBaseDN ou=people,ou=accounts,dc=delixs-schule,dc=de LDAPBindDN cn=admin,dc=delixs-schule,dc=de LDAPBindPW schule LDAPFilter (&(objectClass=posixAccount)(uid=\L)) LDAPHomeDir homeDirectory LDAPVersion 3 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ </source>

Kontrolle mittels:

 # egrep -v '^$|#' /etc/pure-ftpd/db/ldap.conf

Danach ist der Dienst wieder durchzustarten

 service pure-ftpd-ldap restart  


Test des FTP-Servers

Der Erfolg:

 # lsof -ni:21
 COMMAND    PID USER   FD   TYPE DEVICE SIZE NODE NAME
 pure-ftpd 4085 root    5u  IPv4  13005       TCP *:ftp (LISTEN)
 pure-ftpd 4085 root    6u  IPv6  13007       TCP *:ftp (LISTEN)

Da noch kein Benutzer angelegt ist, folgt nun mmustermann:

 delixs-useradd --user mmustermann --lastname Mustermann \
 --forename Martin --class TEACHER --pass geheim
 delixs-passwd --user mmustermann --pass geheim

Er wird jetzt im LDAP auch gefunden. Der filter (&(objectClass=posixAccount)(uid=mmustermann))" wird von pure-ftpd benutzt, daher der Test:

 ldapsearch -x -LLL -b "ou=people,ou=accounts,dc=delixs-schule,dc=de" "(&(objectClass=posixAccount)(uid=mmustermann))"


<source lang="text"> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ dn: uid=mmustermann,ou=people,ou=accounts,dc=delixs-schule,dc=de objectClass: top objectClass: person objectClass: organizationalPerson objectClass: inetOrgPerson objectClass: posixAccount objectClass: shadowAccount objectClass: sambaSamAccount cn: mmustermann sn: mmustermann givenName: mmustermann uid: mmustermann uidNumber: 1000 gidNumber: 1001 homeDirectory: /home/teacher/mmustermann loginShell: /bin/bash gecos: Martin Mustermann,TEACHER sambaLogonTime: 0 sambaLogoffTime: 2147483647 sambaKickoffTime: 2147483647 sambaPwdCanChange: 0 displayName: mmustermann sambaSID: S-1-5-21-1217022432-528198597-2225102744-3000 sambaPrimaryGroupSID: S-1-5-21-1217022432-528198597-2225102744-3003 sambaLMPassword: 193130B61A7F81C0AAD3B435B51404EE sambaAcctFlags: [U] sambaNTPassword: C2AE1FE6E648846352453E816F2AEB93 sambaPwdLastSet: 1256425561 sambaPwdMustChange: 2120425561 shadowMax: 10000 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ </source>


Ein ftp-login gelingt nicht auf localhost, sondern nur auf die IP Adresse von eth0 oder eth1!


Also musst du deine IP-Adresse herausfinden:

 # ifconfig eth0 | awk '/inet Adresse/{print $2}' | awk -F: '{print $2}'
 172.16.16.154

Einloggen mit ncftp ist jetzt erfolgreich:

 ncftp -ummustermann -pgeheim  172.16.16.154

fertig.


Das FTP Clientprogramm

Das Paket "ncftp" ist zur Dateiübertragung mittels (File Transfer Protocol) vorgesehen. Es erlaubt den Transfer von Dateien zu oder von entfernten Rechnern.

Installation:

 aptitude install ncftp

Einzurichten ist hier nichts.


Weblinks



zurück | Hauptseite

Thorsten Strusch 2009