Sätt upp en ftp-server i Debian

En ftp-server kan vara bra många olika sätt, kanske vill du att du skall komma åt dina filer även om du inte är hemma, eller vill dela med dig av dina bilder till kompisar utan att använda moln-tjänster där du måste dela ut ditt egna lösenord etc etc etc. glFTPD är förmodligen en av världens mest kraftfulla och pålitliga ftp-daemons och det finns otroligt många tillägg att installera.

(Guiden förutsätter att den körs på Debian mini-install med root rättigheter, körs den på annan version är det vid vissa kommandon tvunget att köra med prefixet “sudo” (mellanslag) kommando)


Att installera:
apt-get install cryptsetup dmsetup sshfs zip unzip gcc g++ make cpp openssl tcl8.4 curl ftp xinetd lynx
(detta tar hem nödvändiga dependencies(beroenden) för att fortsätta med installation av glFTPD och Zipscript samt kryptering. Om du får ett felmeddelanden om att du inte är root, lägg till sudo för apt-get)
Gå till homedir (cd ~), kör: wget http://www.glhelp.org/files/glftpd-LNX_2.01.tgz
(detta tar hem glftpd i packat format till din hemkatalog (~))

När ovanstående är klart, packa upp med hjälp av ”tar -zxvf glftpd-LNX_2.01.tgz” gå till katalogen glftpd-LNX_2.01 genom att skriva cd glftpd-LNX_2.01 och sedan ./installgl.sh för att påbörja installationen av glFTPD v2.01. (“./<cmd>” anger att filen ska exekveras, man kan även använda sig av “sh <cmd>” för samma effekt på filer med .sh-filändelse) Följ instruktionerna på skärmen.
(Om det skulle dyka upp problem här, kör apt-get install openbsd-inetd och kör sedan om installationen.) Redigera /etc/glftpd.conf för att matcha dina settings (t.ex. site name etc).

Nedanstående steg är valfria och behövs inte för att få igång en ftp-server, men de lägger till lite extra lyx i vardagen 🙂
Installation av ZipScript (optional):
wget http://www.pzs-ng.com/unstable/project-zs-ng_r2532.tar.gz

När pzs-ng zipscript är installerat*, redigera glftpd.conf (nano /etc/glftpd.conf) å skriv in följande sist i dokumentet:

calc_crc *
post_check /bin/zipscript-c *
cscript DELE post /bin/postdel
cscript RMD post /bin/datacleaner
cscript SITE[:space:]NUKE post /bin/cleanup
cscript SITE[:space:]UNNUKE post /bin/postunnuke
cscript SITE[:space:]WIPE post /bin/cleanup

site_cmd RESCAN EXEC /bin/rescan
custom-rescan !8 *

cscript RETR post /bin/dl_speedtest

site_cmd AUDIOSORT EXEC /bin/audiosort
custom-audiosort !8 *

Ett zipscript kontrollerar filer i samband med en .sfv-fil, så att alla filer har korrekt CRC-matchning, bra att använda om det är så att det saknas filer eller man har problem med att packa upp filerna senare.

För mer info: http://tech-newbie.blogspot.com/2008/04/glftpd-and-zipscript-install-guide.html

Psxc-imdb (optional, kollar film mot imdb och skapar imdb-katalog i filmkatalogen):
Efter installationen av zipscript, kör nano /glftpd/ftp-data/logs/psxc-imdb.tmp å skriv # sen avsluta.
Kör chmod 777 -R /glftpd/ftp-data/logs

Kryptering
dmesg|grep MB|sort|uniq — kommando för att se diskarna i systemet t.ex. sda1, sdb1 etc.

cfdisk /dev/xxx (xxx är id-namnet på disken) skapar partition
välj New, sedan Write och sen Exit.

cryptsetup luksFormat /dev/xxxx (skriv YES, sedan valfritt cryptpass 2ggr),
(skapar en krypterad /dev/xxxx, där xxxx är id-namnet på disken, t.ex. sdb1)
sen cryptsetup luksOpen /dev/xxxx <namn>
mkfs.ext3 /dev/mapper/<namn>
Skapa script för automount:
nano cryptmount.sh
skriv in följande:
#!/bin/sh

cryptsetup luksOpen /dev/xxxx namn
#cryptsetup luksOpen /dev/xxxx namn2
#mount /dev/mapper/namn /glftpd/site/sektion
mount /dev/mapper/namn /mnt/namn
#mount /dev/mapper/namn2 /mnt/namn2

#t.ex:
cryptsetup luksOpen /dev/sdb1 sdb1
tune2fs -m 0 /dev/mapper/sdb1
mount /dev/mapper/sdb1 /mnt/sdb1 (notera: /mnt/sdb1 måste existera först, skapa katalog (mkdir /mnt/sdb1))
mount –bind /mnt/sdb1 /glftpd/site/musik

(tune2fs -m 0 gör att den inte sparar 5% av utrymmet till root, något som bara används på rootfilsystemet. Behöver bara köras en gång)

Överkurs: lista diskar med UUID, som är ett unikt sätt att identifiera diskarna istället för /dev/xda som kan byta namn: ls -l /dev/disk/by-uuid/ — mountas sedan med “mount /dev/disk/by-uuid/<uuid>

För att få en krypterad /glftpd del, skapa katalogen (mkdir /glftpd), mounta sedan en dekryptera en volym där, exempel: (GÅR INTE ATT GÖRA OM DET BARA FINNS EN PARTITION/EN DISK)
cryptsetup luksOpen /dev/sda3 sda3
mount /dev/mapper/sdc1 /mnt/sdc1
mount –bind /mnt/sdc1 /glftpd

KLART! 🙂

Advertisements
By slacker666 Posted in Linux

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s