PureFTPd / PureAdmin och puredb, inte rätt installerat?

Konfiguration av nätverk, hur man använder Ubuntu som server, och håller sin dator säker
rylleman
Inlägg: 477
Blev medlem: 23 apr 2007, 16:37
OS: Ubuntu
Utgåva: 12.04 Precise Pangolin LTS
Ort: bagarmossen

PureFTPd / PureAdmin och puredb, inte rätt installerat?

Inlägg av rylleman »

Jag har installerat PureFTPd och PureAdmin men har lite problem jag skulle behöva hjälp med.
För att kunna skapa och använda användare så behöver PureFTPd kompileras med puredb vilket jag gjort efter noterna på PureAdmins hemsida men det verkar inte som om det installerats rätt iaf.
PureAdmins manual säger;
Make sure that pureftpd is compiled with puredb support. If the program pure-pw exists, then pureftpd is correctly compiled.
pure-pw finns så det borde vara rätt installerat.

PureAdmin hittar inte puredb, jag hittar inte puredb, det finns helt enkelt inte på datorn.
Jag når ftpn från annan dator, PureAdmins logg säger att jag ansluter men sen får jag felmeddelandet
[WARNING] Authentication failed for user [testar]
vilket nog beror på att PureAdmin säger att standard lösenordsfil och puredbfil inte hittades.
Kan jag installera puredb separat?, hur gör jag isf?

PureFTPd är senaste från deras hemsida, 1.0.21 medans PureAdmin är det senaste som finns i synaptic, 0.3. (Senaste som finns på deras hemsida är 0.4.2, men jag fick inte det att fungera. Jag tror dock inte versioner av PureAdmin är problemet.)
Användarvisningsbild
Konservburk
Inlägg: 5919
Blev medlem: 07 apr 2007, 22:28

SV: PureFTPd / PureAdmin och puredb, inte rätt installerat?

Inlägg av Konservburk »

Du använder pure-pw för att skapa en auth-fil från en pw-fil:

Kod: Markera allt

pure-pw mkdb auth_fil -f pw_fil
Du talar om vilken auth-fil som ska användas när du startar ftp-servern:

Kod: Markera allt

pure-ftpd -l puredb:/sökväg/till/din/auth_fil
rylleman
Inlägg: 477
Blev medlem: 23 apr 2007, 16:37
OS: Ubuntu
Utgåva: 12.04 Precise Pangolin LTS
Ort: bagarmossen

SV: PureFTPd / PureAdmin och puredb, inte rätt installerat?

Inlägg av rylleman »

Konservburk skrev: Du använder pure-pw för att skapa en auth-fil från en pw-fil:

Kod: Markera allt

pure-pw mkdb auth_fil -f pw_fil
Du talar om vilken auth-fil som ska användas när du startar ftp-servern:

Kod: Markera allt

pure-ftpd -l puredb:/sökväg/till/din/auth_fil
Tack.
Från vilken pw-fil? finns det någon sådan standard eller måste jag skapa en sådan också?
Användarvisningsbild
Konservburk
Inlägg: 5919
Blev medlem: 07 apr 2007, 22:28

SV: PureFTPd / PureAdmin och puredb, inte rätt installerat?

Inlägg av Konservburk »

rylleman skrev: Från vilken pw-fil? finns det någon sådan standard eller måste jag skapa en sådan också?
Det är en vanlig textfil med rader som ser ut ungefär så här:

Kod: Markera allt

user_name:hash:#uid:#gid::/hemkatalog/./::::::::::::

Du kan skapa filen för hand om du vill. Hashen tar du reda på med:

Kod: Markera allt

printf 'lösenordet' | openssl passwd -1 -stdin

Eller så kan du konvertera systemets passwd-fil:

Kod: Markera allt

sudo pure-pwconvert > pw_fil

Eller så kan du använda pure-pw:

Kod: Markera allt

pure-pw useradd user_name -f pw_fil
rylleman
Inlägg: 477
Blev medlem: 23 apr 2007, 16:37
OS: Ubuntu
Utgåva: 12.04 Precise Pangolin LTS
Ort: bagarmossen

SV: PureFTPd / PureAdmin och puredb, inte rätt installerat?

Inlägg av rylleman »

Tack. Det visade sig att om jag istället för att i PureAdmin leta efter icke existerande lösenordsfiler skriver in path och filnamn till filerna jag vill skapa så skapar PureAdmin dom...

Nu verkar det dock som om PureFTPd inte startas med stöd för virtuella användare.
Enligt manualen ska jag;
Then, add this switch to your usual pure-ftpd switches:
-l puredb:/path/to/puredb_file
Hittar dock inget bra ställe i init.d/pure-ftpd att stoppa in växeln. Var ska det in?

Kod: Markera allt

#! /bin/sh
#
# pure-ftpd	starts and stops the pure-ftpd ftp daemon

PATH=/sbin:/bin:/usr/sbin:/usr/bin
NAME=pure-ftpd
DESC="ftp server"
: ${SSDAEMONLOGOPTS:="--quiet"}
UPLOADDAEMON=/usr/sbin/pure-uploadscript
UDNAME=pure-uploadscript
UDDESC="ftp upload handler"
WRAPPER=/usr/sbin/pure-ftpd-wrapper

PIDFILE=/var/run/pure-ftpd/pure-ftpd.pid

# try to figure with suffix this script is called,
# $0 might be a symlink pointing to this script
if [ -h $0 ]; then
	ME=`/bin/readlink $0`
else 
	ME=$0
fi

SUFFIX=`basename $ME | sed -ne 's/^pure-ftpd-\(.*\)/\1/p'`
if [ "$SUFFIX" ] ; then
	DAEMON=/usr/sbin/pure-ftpd-$SUFFIX
else
	DAEMON=/usr/sbin/pure-ftpd
fi

export STANDALONE_OR_INETD=inetd
export VIRTUALCHROOT=
test -r /etc/default/pure-ftpd-common && . /etc/default/pure-ftpd-common

if [ "$VIRTUALCHROOT" = "true" ]; then
	if [ "$SUFFIX" ]; then
		SUFFIX="$SUFFIX-virtualchroot"
	else
		SUFFIX="virtualchroot"
	fi
fi

test -x $DAEMON || exit 0
test -x $WRAPPER || exit 0

set -e

if [ ! -e `dirname $PIDFILE` ];then
       mkdir `dirname $PIDFILE`
fi

start_uploadscript() {
	if [ "$UPLOADSCRIPT" -a "$STANDALONE_OR_INETD" != inetd ] && \
		egrep -i '^[ 	]*(yes|1|on)[ 	]*' /etc/pure-ftpd/conf/CallUploadScript > /dev/null 2>&1
	then
		UOPTS=""
		test "$UPLOADUID" && UOPTS="$UOPTS -u $UPLOADUID"
		test "$UPLOADGID" && UOPTS="$UOPTS -g $UPLOADGID"
		echo -n "$1 $UDDESC: "
		start-stop-daemon --start $SSDAEMONLOGOPTS --oknodo \
			--exec $UPLOADDAEMON -- -r "$UPLOADSCRIPT" -B $UOPTS
		echo "$UDNAME."
		
	fi
}

case "$1" in
  start)
	test "$STANDALONE_OR_INETD" = standalone || exit 0
	echo -n "Starting $DESC: "
	start-stop-daemon --start $SSDAEMONLOGOPTS --pidfile "$PIFDILE" \
		--exec $WRAPPER -- $SUFFIX
	start_uploadscript Starting
	;;
  stop)
	echo -n "Stopping $DESC: "
	start-stop-daemon --stop $SSDAEMONLOGOPTS --oknodo \
		--pidfile /var/run/pure-ftpd/pure-ftpd.pid
	start-stop-daemon --stop $SSDAEMONLOGOPTS --oknodo --exec $UPLOADDAEMON
	echo "$NAME."
	;;
  restart|force-reload)
	test "$STANDALONE_OR_INETD" = standalone || exit 0
	echo -n "Restarting $DESC: "
	start-stop-daemon --stop $SSDAEMONLOGOPTS --oknodo \
		--pidfile "$PIDFILE"
	start-stop-daemon --stop $SSDAEMONLOGOPTS --oknodo --exec $UPLOADDAEMON
	sleep 1
	start-stop-daemon --start $SSDAEMONLOGOPTS --pidfile \
		/var/run/pure-ftpd/pure-ftpd.pid --exec $WRAPPER -- $SUFFIX
	start_uploadscript Restarting
	;;
  *)
	N=/etc/init.d/$NAME
	echo "Usage: $N {start|stop|restart|force-reload}" >&2
	exit 1
	;;
esac

exit 0
Användarvisningsbild
Konservburk
Inlägg: 5919
Blev medlem: 07 apr 2007, 22:28

SV: PureFTPd / PureAdmin och puredb, inte rätt installerat?

Inlägg av Konservburk »

rylleman skrev: Tack. Det visade sig att om jag istället för att i PureAdmin leta efter icke existerande lösenordsfiler skriver in path och filnamn till filerna jag vill skapa så skapar PureAdmin dom...
Jag har bara använt pure-ftpd löst utan PureAdmin.  Så jag hade ingen aning om att den kunde ordna filerna åt dig :)

rylleman skrev: Nu verkar det dock som om PureFTPd inte startas med stöd för virtuella användare.
Enligt manualen ska jag;
Then, add this switch to your usual pure-ftpd switches:
-l puredb:/path/to/puredb_file
Hittar dock inget bra ställe i init.d/pure-ftpd att stoppa in växeln. Var ska det in?
Jag är lite osäker... jag har startat min pure-ftpd för hand när jag behöver
den... men aldrig från init.d vad jag kan minnas.

Men efter att ha kollat igenom skriptet så gissar jag att du ska lägga till det
efter --exec $WRAPPER -- $SUFFIX på två ställen (under start och under
restart).
Användarvisningsbild
maths57
Inlägg: 2911
Blev medlem: 22 jun 2007, 15:10
OS: Ubuntu
Utgåva: 22.10 Kinetic Kudu
Ort: Stockholm

SV: PureFTPd / PureAdmin och puredb, inte rätt installerat?

Inlägg av maths57 »

Är det OK om jag flyttar den här tråden till Nätverk och Server istället?
rylleman
Inlägg: 477
Blev medlem: 23 apr 2007, 16:37
OS: Ubuntu
Utgåva: 12.04 Precise Pangolin LTS
Ort: bagarmossen

SV: PureFTPd / PureAdmin och puredb, inte rätt installerat?

Inlägg av rylleman »

maths57 skrev: Är det OK om jag flyttar den här tråden till Nätverk och Server istället?
OK för mig.
rylleman
Inlägg: 477
Blev medlem: 23 apr 2007, 16:37
OS: Ubuntu
Utgåva: 12.04 Precise Pangolin LTS
Ort: bagarmossen

SV: PureFTPd / PureAdmin och puredb, inte rätt installerat?

Inlägg av rylleman »

Nu har jag fått det att fungera!
Satt i evigheter och försökte få in växeln på olika ställen i init.d men utan att lyckas.
Men så efter mångt och länge och otaliga googlingar och forumläsningar hittade jag lösningen.
Init.d ska man inte alls in och fjuttla med utan helt emkelt bara köra "ln -s ../conf/PureDB 50pure" på [/etc/pure-ftpd/auth] för att få pure-ftpd att fatta att den ska använda lösenordsdatabasfilen.

Post #12 i tråden http://ubuntuforums.org/showthread.php?t=9936&page=2 gjorde susen.

Tack för hjälpen Konservburk!
Användarvisningsbild
Konservburk
Inlägg: 5919
Blev medlem: 07 apr 2007, 22:28

SV: PureFTPd / PureAdmin och puredb, inte rätt installerat?

Inlägg av Konservburk »

Det ska jag lägga på minnet.  Bra att veta om jag någonsin får för mig att ha
en mer permanent ftp-server som startas från init.
Skriv svar

Återgå till "Nätverk, säkerhet och servrar"