HOWTO SCPonly
Die momentane Version von Scponly 4.0 ist nicht als RPM zu haben, also ran an die Befehlskonsole!! Scponly ist ein Programm das es erlaubt SSH verschlüsselten Datentransfer zu ermöglichen ohne dass die Benutzer vollen Zugriff auf Systemdateien haben. Es ermöglicht zusätzlich eine gesicherte Umgebung für jeden Benutzer zu erstellen, so dass dieser sich nur in den ihm zugewiesenen Verzeichnissen bewegen kann. Man spricht hierbei von einer chroot Umgebung oder von einem jail (Gefängnis) für den Benutzer. 1. Scponly downloaden und installieren 1.1 Download und Installation Wie gesagt gibt es für Scponly noch kein RPM, also installieren wir direkt über die Konsole. Dazu sollte man als root Benutzer angemeldet sein oder über root Rechte verfügen. Downloaden: In der Shell (Konsole) eingeben: # wget http://www.sublimation.org/scponly/scponly-4.0.tgz # tar xzf scponly-4.0.tgz # cd scponly-4.0 # ./configure –enabled-chrooted-binary # make && make install Hierbei ist anzumerken, dass diese Variante eine chroot Umgebung anlegt. Es ist auch möglich einfach Benutzer über scponly zuzulassen die nur Zugriff auf ihr Verzeichnis haben und die anderen Systemdateien lesen können. Dies stiftet nicht nur Verwirrung sondern erfüllt wohl auch nicht ganz den Zweck den wir mit einer chroot Umgebung erreichen wollen. Einige Optionen für ./configure: --enable-chrooted-binary Dies ermöglicht eine chroot Umgebung, sprich ein must have !! --enable--rsync-compat Die andere vorher angesprochene Variante, die ermöglicht im jeweiligen Benutzerordner alles zu machen aber die anderen Ordner und Dateien zu sehen. --disable-scp Den Gebrauch von scp Kommandos zum Dateitransfer verbieten. --disable-sftp Den Gebrauch von sftp Kommandos zum Dateitransfer verbieten. --disable-winscp-compat Den Gebrauch von WinSCP (als grafischen Klient) zu verbieten. Nun schauen wir wie unser scponlyc (scponly c = chrooted) Pfad lautet. Dazu ist in der Shell (Konsole) folgendes einzugeben: # which scponlyc Ansonsten wenn wir es wie vorher beschrieben als –enable-rsync.compat installiert haben, muss der Befehl so lauten: # which scponly Danach sollte die Ausgabe ungefähr so aussehen: /usr/local/sbin/scponlyc Oder für which scponly: /usr/local/bin/scponly 2. Jail für Benutzer anlegen (chroot) Dafür begeben wir uns ins scponly Verzeichnis: # cd scponly-4.0 Wir rufen nun das Setup von Scponly auf um Benutzer mit chroot Umgebung anzulegen. # chmod +x setup_chroot.sh # ./setup_chroot.sh Wenn alle Schritte vorher korrekt ausgeführt worden sind sollten wir nun nach dieser Eingabe folgende Ausgabe erhalten. Install for chroot to what directory? /home/user_1 Install for what username? user_1 Setup password for user_1: passwort Re-type password: passwort install: /home/user_1/sbin/chown: No such file or directory ls: /lib/libnss_compat*: No such file or directory creating /home/user_1/incoming directory for uploading files Ausgabe blau Konsolenausgabe, schwarz meine Eingabe…die Fehlermeldung erscheint bei chown erscheint weil es ja scheinbar kein Verzeichnis gibt aber mit folgendem Befehl sieht man dann das neu angelegte Verzeichnis für den chroot user_1. # ls –l /home/user_1/ Nun wird das incoming Verzeichnis angezeigt. So jetzt sollte der SFTP Zugriff unter SSH in einer gesicherten Umgebung via z.B. WinSCP3 möglich sein. Viel Spass !!
