Difference between revisions of "SFTP chroot + rsync"
Line 2: | Line 2: | ||
ChrootDirectory PLUS et traditionelt chroot. - en lyn-guide, nej nok nærmere notater. | ChrootDirectory PLUS et traditionelt chroot. - en lyn-guide, nej nok nærmere notater. | ||
+ | |||
+ | Lavet fordi jeg skulle bruge en backup server som kunne modtage backups via rsync og man kunne hente filerne ned igen via [[FileZilla]]. | ||
==SSH server== | ==SSH server== | ||
Line 16: | Line 18: | ||
Herfra skal alle homefolders både ha root som owner og group for at virke. | Herfra skal alle homefolders både ha root som owner og group for at virke. | ||
− | ==Klargør gruppe== | + | ===Klargør gruppe=== |
addgroup sftponly | addgroup sftponly | ||
− | ==Opret bruger== | + | ===Opret bruger=== |
adduser user01 | adduser user01 | ||
addgroup sftponly | addgroup sftponly | ||
chown root:root /home/user01 | chown root:root /home/user01 | ||
− | ==Opret chroot miljø med bash og rsync== | + | ===Opret chroot miljø med bash og rsync=== |
mkdir /home/user01/bin | mkdir /home/user01/bin | ||
cp /usr/bin/rsync /home/user01/bin/ | cp /usr/bin/rsync /home/user01/bin/ | ||
Line 42: | Line 44: | ||
Jeg har brugt ldd til at liste dependencies for bash og rsync, samme procedure kan bruges hvis andre programmer skal med. | Jeg har brugt ldd til at liste dependencies for bash og rsync, samme procedure kan bruges hvis andre programmer skal med. | ||
− | ==Opret mappe brugeren kan gemme filer i== | + | ===Opret mappe brugeren kan gemme filer i=== |
Da SSH bestemmer at en ChrootDirectory SKAL ejes af root, skal brugeren have en undermappe med skriverettigheder | Da SSH bestemmer at en ChrootDirectory SKAL ejes af root, skal brugeren have en undermappe med skriverettigheder | ||
mkdir /home/user01/files | mkdir /home/user01/files | ||
Line 49: | Line 51: | ||
Samme procedure kan bruges hvis det er en webserver, så lav en html mappe. | Samme procedure kan bruges hvis det er en webserver, så lav en html mappe. | ||
− | ==Rsync== | + | ===Rsync=== |
rsync --progress /mappe/filer user01@server:/files | rsync --progress /mappe/filer user01@server:/files | ||
+ | |||
+ | |||
+ | ==SSH Authorized Keys== | ||
+ | Til at kunne lave automatisk backup kan vi ikke bruge interaktive passwords, derfor bruger vi keys. Og da vi ikke har et helt normalt setup, skal der laves et par ændringer. |
Revision as of 16:12, 18 February 2013
af Tommy d. 18. feb.
ChrootDirectory PLUS et traditionelt chroot. - en lyn-guide, nej nok nærmere notater.
Lavet fordi jeg skulle bruge en backup server som kunne modtage backups via rsync og man kunne hente filerne ned igen via FileZilla.
Contents
SSH server
/etc/ssh/sshd_config
#Subsystem sftp /usr/lib/openssh/sftp-server Subsystem sftp internal-sftp Match group sftponly ChrootDirectory /home/%u X11Forwarding no AllowTcpForwarding no # ForceCommand internal-sftp
Herfra skal alle homefolders både ha root som owner og group for at virke.
Klargør gruppe
addgroup sftponly
Opret bruger
adduser user01 addgroup sftponly chown root:root /home/user01
Opret chroot miljø med bash og rsync
mkdir /home/user01/bin cp /usr/bin/rsync /home/user01/bin/ cp /bin/bash /home/user01/bin/
mkdir /home/user01/lib cp /lib/libncurses.so.5 /home/user01/lib/ cp /lib/libdl.so.2 /home/user01/lib/ cp /lib/libc.so.6 /home/user01/lib/ cp /lib/libacl.so.1 /home/user01/lib/ cp /lib/libpopt.so.0 /home/user01/lib/ cp /lib/libattr.so.1 /home/user01/lib/
mkdir /home/user01/lib64 cp /lib64/ld-linux-x86-64.so.2 /home/user01/lib64/
Jeg har brugt ldd til at liste dependencies for bash og rsync, samme procedure kan bruges hvis andre programmer skal med.
Opret mappe brugeren kan gemme filer i
Da SSH bestemmer at en ChrootDirectory SKAL ejes af root, skal brugeren have en undermappe med skriverettigheder
mkdir /home/user01/files chown user01:user01 /home/user01/files
Samme procedure kan bruges hvis det er en webserver, så lav en html mappe.
Rsync
rsync --progress /mappe/filer user01@server:/files
SSH Authorized Keys
Til at kunne lave automatisk backup kan vi ikke bruge interaktive passwords, derfor bruger vi keys. Og da vi ikke har et helt normalt setup, skal der laves et par ændringer.