|
|||||||
| Registrieren | Hilfe | Benutzerliste | Interessengemeinschaften | Kalender | Suchen | Heutige Beiträge | Alle Foren als gelesen markieren |
![]() |
|
|
LinkBack | Themen-Optionen | Ansicht |
|
#1
|
|||
|
|||
|
Bisher habe ich hier keine Debian korrekte Anleitung gefunden. Deswegen hier mal eine Anleitung, wie man das richtig mit debian macht:
Installation der Debian Helper apt-get install debian-builder Source und Abhängigkeiten holen apt-get build-dep openssh-server apt-get source openssh-server Erst einmal in das Verzeichnis wechseln und bauen dpkg-buildpackage Dann Patchen - Datei chroot-51.patch Code:
--- orig/session.c 2009-05-19 16:46:39.000000000 +0200
+++ session.c 2009-05-19 16:38:07.000000000 +0200
@@ -91,6 +91,8 @@
#include "monitor_wrap.h"
#include "sftp.h"
+#define CHROOT
+
#if defined(KRB5) && defined(USE_AFS)
#include <kafs.h>
#endif
@@ -1451,6 +1453,11 @@
void
do_setusercontext(struct passwd *pw)
{
+#ifdef CHROOT
+ char *user_dir;
+ char *new_root;
+#endif /* CHROOT */
+
char *chroot_path, *tmp;
#ifdef WITH_SELINUX
@@ -1500,6 +1507,25 @@
exit(1);
}
endgrent();
+#ifdef CHROOT
+ user_dir = xstrdup(pw->pw_dir);
+ new_root = user_dir + 1;
+
+ while((new_root = strchr(new_root, '.')) != NULL) {
+ new_root--;
+ if(strncmp(new_root, "/./", 3) == 0) {
+ *new_root = '\0';
+ new_root += 2;
+
+ if(chroot(user_dir) != 0)
+ fatal("Couldn't chroot to user's directory %s",user_dir);
+ pw->pw_dir = new_root;
+ break;
+ }
+
+ new_root += 2;
+ }
+#endif /* CHROOT */
# ifdef USE_PAM
/*
* PAM credentials may take the form of supplementary groups.
@@ -1691,7 +1717,6 @@
display_loginmsg();
#endif /* HAVE_OSF_SIA */
}
-
#ifdef USE_PAM
if (options.use_pam && !options.use_login && !is_pam_session_open()) {
debug3("PAM session not opened, exiting");
patch –I chroot-51.patch session.c Erneut Bauen ./debian/rules clean ./debian/rules build ./debian/rules binary Das dann im übergeordneten Ordner entstandene openssh-server*.deb installieren. dpkg -i ../openssh-server*.deb Für ISPConfig ist weiter nichts zu tun - in /etc/passwd sollten Benutzer mit Shell Zugriff am Ende mit /./ versehen sein, was den chroot Patch veranlasst in das "Gefängnis" zu wechseln. Grüße, Andreas Geändert von sirrus (25.05.2009 um 01:14 Uhr). |
![]() |
| Themen-Optionen | |
| Ansicht | |
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 10:17 Uhr.










Linear-Darstellung
