Ergebnis 1 bis 5 von 5

Thema: OpenVPN chroot und auth-user-pass-verify

  1. #1
    IPPF-Fortgeschrittener Avatar von capt_bluebaer
    Registriert seit
    10.05.2007
    Beiträge
    71

    OpenVPN chroot und auth-user-pass-verify

    Hallo,

    mit der jetzigen Version aus dem SVN (3307) und einer zusätzlichen Option "auth-user-pass-verify" bekomme ich mit OpenVPN keine Verbindung.
    Im Log sehe ich immer so etwas:
    Code:
    Wed May  6 16:46:20 2009 us=509874 192.168.100.5:1884 TLS Auth Error: user-pass-verify script failed to execute: /var/tmp/flash/auth-script.sh
    Wed May  6 16:46:20 2009 us=510537 192.168.100.5:1884 TLS Auth Error: Auth Username/Password verification failed for peer
    Wed May  6 16:46:20 2009 us=513545 192.168.100.5:1884 SIGTERM[soft,auth-control-exit] received, client-instance exiting
    Mit der alten Version klappte (freetz-devel-2329) klappte das problemlos.
    Da die chroot-Umgebung in /var/tmp/openvpn läuft habe ich das Authentifizierungs-Script auch nach /var/tmp/openvpn/var/tmp/flash/ kopiert, um es dort auch sichtbar zu haben. Ein Rechte-Problem an dieser Stelle scheidet auch aus, habe sowohl das Script als auch die Directories (openvpnpenvpn) entsprechend ausgestattet.
    Die einzige Möglichkeit, wie ich OpenVPN dazu überreden konnte ist der komplette Verzicht auf chroot und owner oder group müssen root sein. In diesem Falle liegt das auth-script natürlich im realen Verzeichnis /var/tmp/flash.
    Mich wundert die Fehlermeldung "failed to execute", d.h. nicht gefunden oder keine ausreichenden Rechte, aber was mache ich falsch?
    Selbst mit "verb 11" bekomme ich keine weiteren Informationen.
    Irgendwie komme ich jetzt nicht mehr weiter, hat einer von Euch noch 'ne Idee?
    Captain Bluebaer

    FritzBox FON WLAN 7390, 84.04.91freetz-1.2-stable
    callmonitor, dnsmasq, dropbear, iptables, nfsserver, knockd, openvpn, privoxy, stunnel, syslogd, tor, wol, mc, screen
    FritzBox FON WLAN 7170, FW 29.04.70 freetz-devel-3366, WDS Basis
    bluez-utils, callmonitor, dnsmasq, dropbear, iptables, knfs, knockd, openvpn, privoxy, stunnel, syslogd, tor, wol
    FritzBox WLAN 3030, FW 21.04.15ds-0.2.9, WDS Repeater
    dropbear, syslogd
    Provider: Telekom Call & Surf 16 MBit/s

  2. #2
    IPPF-Urgestein
    Registriert seit
    22.04.2007
    Beiträge
    11.052
    Hast Du eine Shell, die das Skript ausführen kann?

  3. #3
    IPPF-Fortgeschrittener Avatar von capt_bluebaer
    Registriert seit
    10.05.2007
    Beiträge
    71
    Hatte ich nicht, aber ein "mount -o bind /bin /var/tmp/openvpn/bin" sowie ein "/bin/sh" statt "/bin/false" als shell in der /etc/passwd für den Benutzer openvpn zeigt die selbe Meldung und bringt mich nicht weiter.
    Kleiner Denkanstoß: Man muß 'mal überlegen ob das auch nicht ein Widerspruch ist: Mit chroot soll ja gerade die Ausführung von Dateien verhindert werden.
    Captain Bluebaer

    FritzBox FON WLAN 7390, 84.04.91freetz-1.2-stable
    callmonitor, dnsmasq, dropbear, iptables, nfsserver, knockd, openvpn, privoxy, stunnel, syslogd, tor, wol, mc, screen
    FritzBox FON WLAN 7170, FW 29.04.70 freetz-devel-3366, WDS Basis
    bluez-utils, callmonitor, dnsmasq, dropbear, iptables, knfs, knockd, openvpn, privoxy, stunnel, syslogd, tor, wol
    FritzBox WLAN 3030, FW 21.04.15ds-0.2.9, WDS Repeater
    dropbear, syslogd
    Provider: Telekom Call & Surf 16 MBit/s

  4. #4
    IPPF-Urgestein
    Registriert seit
    22.04.2007
    Beiträge
    11.052
    Hast Du auch alle Libraries, um die Shell auszuführen?

    Chroot ist nicht grundsätzlich, damit nichts ausgeführt werden kann, sondern um im Fall einer Sicherheitslücke den Einbruch einzudämmen. Inwieweit es sinnvoll ist, ein "vollständiges" chroot zu erstellen, ist eine andere Frage.

  5. #5
    IPPF-Aufsteiger
    Registriert seit
    02.08.2010
    Beiträge
    31
    Im Fall von busybox als Shell-Interpreter fehlen vermutlich nur ein paar Bibliotheken:
    Code:
    [foo@example.com freetz-trunk]$ pwd
    /home/foo/src/freetz-trunk
    [foo@example.com freetz-trunk]$ strings build/modified/filesystem/bin/busybox | grep lib
    /lib/ld-uClibc.so.0
    libc.so.0
    __uClibc_main
    /usr/lib/freetz
    /lib/modules
    [foo@example.com freetz-trunk]$
    Das hier sollte reichen:
    Code:
    root@fritz:/var/mod/root# ROOT_DIR=/var/tmp/openvpn
    root@fritz:/var/mod/root# mkdir -m 755 ${ROOT_DIR}/bin
    root@fritz:/var/mod/root# mkdir -m 755 ${ROOT_DIR}/lib
    root@fritz:/var/mod/root# cp -a /bin/busybox ${ROOT_DIR}/bin/sh
    root@fritz:/var/mod/root# cp /lib/ld-uClibc.so.0 ${ROOT_DIR}/lib/
    root@fritz:/var/mod/root# cp /lib/libc.so.0 ${ROOT_DIR}/lib/
    root@fritz:/var/mod/root# chroot $ROOT_DIR
    
    
    BusyBox v1.19.4 (2012-03-02 21:59:41 CET) built-in shell (ash)
    Enter 'help' for a list of built-in commands.
    
    @fritz:/#
    Hier noch eine komplette Lösung:

    Code:
    mkdir -m 0755 /var/tmp/openvpn/bin
    mkdir -m 0755 /var/tmp/openvpn/lib
    mkdir -m 1777 /var/tmp/openvpn/tmp
    cp -a /bin/busybox /var/tmp/openvpn/bin/sh
    ln /tmp/openvpn/bin/sh /tmp/openvpn/bin/md5sum
    cp /lib/ld-uClibc.so.0 /var/tmp/openvpn/lib/
    cp /lib/libc.so.0 /var/tmp/openvpn/lib/
    touch /var/tmp/openvpn/bin/auth.sh
    chmod 0755 /var/tmp/openvpn/bin/auth.sh
    
    cat > /var/tmp/openvpn/bin/auth.sh << 'EOF'
    #!/bin/sh
    
    case $(/bin/md5sum < $1) in
      ( "f47c75614087a8dd938ba4acff252494  -" ) return 0 ;;
    esac
    
    return 1
    EOF
    Geändert von MV69M7ib (07.03.2012 um 16:12 Uhr)

Ähnliche Themen

  1. OpenVPN chroot problem
    Von SystemR89 im Forum Freetz
    Antworten: 2
    Letzter Beitrag: 21.10.2010, 10:13
  2. OpenVPN Chroot deaktivieren
    Von MikeCC im Forum FRITZ!Box Fon: Modifikationen
    Antworten: 2
    Letzter Beitrag: 16.06.2010, 14:28
  3. (gelöst) Openvpn - auth-user-pass
    Von the_freestyler im Forum Freetz
    Antworten: 7
    Letzter Beitrag: 27.03.2010, 15:59
  4. OpenVPN + chroot + DNS
    Von µRaCoLi im Forum Freetz
    Antworten: 35
    Letzter Beitrag: 26.04.2009, 17:53
  5. OpenVpn mit „auth-user-pass-verify“
    Von MichaK82 im Forum Freetz
    Antworten: 11
    Letzter Beitrag: 16.08.2008, 22:34

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •