fail2ban auf OpenVZ Host

Wer seinen CentOS-basierten OpenVZ-Host mit fail2ban absichern möchte, kann sehr einfach in das Problem rennen, dass fail2ban sich nicht (neu-)starten lässt, weil das Initscript bereits eine fail2ban-Instanz findet. Dass diese sich in einer VE befinden könnte, spielt hierbei keine Rolle. Um das Problem zu beheben, habe ich die Funktion getpid() in der /etc/rc.d/init.d/fail2ban derart modifiziert, dass die envID jeder gefundenen fail2ban-PID überprüft wird. Alles was nicht zu CT0 (sprich nicht zum Host) gehört, wird ignoriert.

getpid() {
    pids=`ps -eo pid,comm | grep fail2ban- | awk '{ print $1 }'`
    for pid in $pids; do
        if [ $( grep ^envID /proc/${pid}/status | grep -o '[0-9]\+' ) = 0 ]; then
            break
        else
            pid=""
        fi
    done
}