# cronjobs werden nicht ausgeführt, jailkit problem?



## Rupertt (24. Sep. 2010)

Hallo,


ich teste gerade die Cron Funktion in ispconfig3. die jobs tauchen in /etc/cron.d auf, werden aber nicht korrekt ausgeführt.
Mir war aufgefallen das kailkit nicht richtig tut, habs aber ignoriert da wir keine shell user haben wollen



```
Sep 24 11:24:01 panel /usr/sbin/cron[25960]: (web1) CMD (/usr/bin/touch /tmp/ichwarhier.txt)
Sep 24 11:24:01 panel /usr/sbin/cron[25961]: (root) CMD (/usr/local/ispconfig/server/server.sh &> /dev/null)
Sep 24 11:24:01 panel jk_chrootsh[25960]: abort, effective user ID is not 0, possibly jk_chrootsh is not setuid root
```
wie kann ich das fixen?


Wenn ich jailkit starte kommt:


```
# /etc/init.d/jailkit restart
Shutting down jk_socketd:                                                                                         done
Starting JAILKIT services. (jk_socketd)version 2.11, no sockets specified in configfile /etc/jailkit/jk_socketd.ini or on commandline, nothing to do, exiting...
startproc:  exit status of parent of /usr/sbin/jk_socketd: 1
                                                                                                                  failed
```


---


Da fällt mir auf:, kann man das mailto global für alle domains anpassen?


```
MAILTO=''

SHELL='/usr/sbin/jk_chrootsh'

*       *       *       *       *       web1    /usr/bin/touch /tmp/ichwarhier.txt
```


----------



## Rupertt (24. Sep. 2010)

ich habe ein chmod u+s auf auf die jdshell gemacht, nun kommt folgender Fehle:


```
Sep 24 12:17:01 panel /usr/sbin/cron[28235]: (web1) CMD (/usr/bin/touch /tmp/ichwarhier.txt)
Sep 24 12:17:01 panel /usr/sbin/cron[28234]: (root) CMD (/usr/local/ispconfig/server/server.sh &> /dev/null)
Sep 24 12:17:01 panel jk_chrootsh[28235]: now entering jail /srv/www/clients/client1/web1 for user web1 (5004)
Sep 24 12:17:01 panel jk_chrootsh[28235]: ERROR: failed to execute shell /bin/bash for user web1 (5004), check the permissions and libraries of /srv/www/clients/client1/web1//bin/bash
```


----------



## Till (24. Sep. 2010)

Jailkit schient nicht richtig installiert zu sein. Ich würde da wie folgt vorgehen:

1) Mach mach die chmod Änderung rückgängig.
2) Installier das aktuelle jailkit bneu (müsste Version 2.12 sein).
3) führ ein ispconfig update durch und wähle dabei dass die Dienste neu konfiguriert werden sollen.
4) Wenn das nichts hilft, dann lösche die komplette Webseite zu der der cronjob gehört und erstelle die Webseite und cronjob neu.


----------



## Rupertt (27. Sep. 2010)

hallo, da hat sich schon einiges geändert:



```
Sep 27 11:34:01 panel /usr/sbin/cron[8779]: (system_u) RELOAD (/etc/cron.d/ispc_chrooted_web4)
Sep 27 11:34:01 panel /usr/sbin/cron[8909]: (web4) CMD (/usr/bin/touch /tmp/ichwarhier.txt)
Sep 27 11:34:01 panel /usr/sbin/cron[8910]: (root) CMD (/usr/local/ispconfig/server/server.sh &> /dev/null)
Sep 27 11:34:01 panel jk_chrootsh[8909]: path /srv/www/clients/client1/web4/./home/web4 is not owned by user 5007
Sep 27 11:34:01 panel jk_chrootsh[8909]: path /srv/www/clients/client1/web4/./home/web4 is not owned by group 5004
Sep 27 11:34:01 panel jk_chrootsh[8909]: abort, path /srv/www/clients/client1/web4/./home/web4 is not owned by 5007
```
aber so ganz run läufts noch nicht

wenn ich das home den user web1 gebe sieht der logeintrag wie folgt aus.
Sollte ispconfig nicht diese rechte automatisch setzen?


```
Sep 27 11:44:01 panel /usr/sbin/cron[9322]: (web4) CMD (/usr/bin/touch /tmp/ichwarhier.txt)
Sep 27 11:44:01 panel /usr/sbin/cron[9323]: (root) CMD (/usr/local/ispconfig/server/server.sh &> /dev/null)
Sep 27 11:44:01 panel jk_chrootsh[9322]: now entering jail /srv/www/clients/client1/web4 for user web4 (5007)
Sep 27 11:44:01 panel jk_chrootsh[9322]: ERROR: failed to execute shell /bin/bash for user web4 (5007), check the permissions and libraries of /srv/www/clients/client1/web4//bin/bash
```
in /etc/passwd siehts so aus:


```
web1:x:5004:5004::/srv/www/clients/client1/web1/./home/web1:/bin/false
web2:x:5005:5004::/srv/www/clients/client1/web2:/bin/false
web3:x:5006:5004::/srv/www/clients/client1/web3/./home/web3:/bin/false
web4:x:5007:5004::/srv/www/clients/client1/web4/./home/web4:/bin/false
```

wenn ich die site lösche und neu anlege:

```
Sep 27 12:09:01 panel jk_chrootsh[10698]: path /srv/www/clients/client1/web9 is not owned by user 0
Sep 27 12:09:01 panel jk_chrootsh[10698]: path /srv/www/clients/client1/web9 is not owned by group 0
Sep 27 12:09:01 panel jk_chrootsh[10698]: abort, /srv/www/clients/client1/web9 is not a safe chroot jail.
```


----------



## Till (27. Sep. 2010)

> Sollte ispconfig nicht diese rechte automatisch setzen?


Hab es gerade mal bei mir getestet und da stimmen die Rechte. Hast Du die Webseite auch komplett gelöscht und neu erstellt? Das Jail wird nur einmalig angelegt wenn ein web neu ist und dann er erste neue SSH User mit jail angelegt. Anlegen eines neuen ssh users bei bestehendem Web ändert nicht das jail.


----------



## Rupertt (27. Sep. 2010)

ich habe gerade mal alles gelöscht, auch alle user und website.
Am Anfang gab es kein ./home, dieses wird erst beim ersten aufruf von jailkit oder dem ispconfig cronjob angelegt.
Und dies wird als der user root angelgt:


```
[root@panel 12:25:57:/srv/www/clients/client4]
# l
total 12
drwxr-xr-x 3 root      root      4096 Sep 27 12:25 ./
drwxr-xr-x 4 ispconfig ispconfig 4096 Sep 27 12:25 ../
drwxr-x--x 6 web10     client4   4096 Sep 27 12:25 web10/
lrwxrwxrwx 1 root      root        31 Sep 27 12:25 blabla.de -> /srv/www/clients/client4/web10//
```


```
[root@panel 12:25:57:/srv/www/clients/client4]
# cd web10/
```


```
[root@panel 12:26:05:/srv/www/clients/client4/web10]
# l
total 24
drwxr-x--x 6 web10 client4 4096 Sep 27 12:25 ./
drwxr-xr-x 3 root  root    4096 Sep 27 12:25 ../
drwxr-x--x 2 web10 client4 4096 Sep 27 12:25 cgi-bin/
lrwxrwxrwx 1 web10 client4   35 Sep 27 12:25 log -> /var/log/ispconfig/httpd/blabla.de/
drwxr-x--x 2 web10 client4 4096 Sep 27 12:25 ssl/
drwxrwxrwx 2 web10 client4 4096 Sep 27 12:25 tmp/
drwx--x--- 4 web10 client4 4096 Sep 27 12:25 web/
```


```
[root@panel 12:26:05:/srv/www/clients/client4/web10]
# l
total 36
drwxr-xr-x 9 root  root    4096 Sep 27 12:29 ./
drwxr-xr-x 3 root  root    4096 Sep 27 12:25 ../
drwxr-x--x 2 web10 client4 4096 Sep 27 12:25 cgi-bin/
drwxr-xr-x 2 root  root    4096 Sep 27 12:29 etc/
drwxr-xr-x 3 root  root    4096 Sep 27 12:29 home/
lrwxrwxrwx 1 web10 client4   35 Sep 27 12:25 log -> /var/log/ispconfig/httpd/blabla.de/
drwxr-x--x 2 web10 client4 4096 Sep 27 12:25 ssl/
drwxrwxrwx 2 web10 client4 4096 Sep 27 12:25 tmp/
drwxr-xr-x 3 root  root    4096 Sep 27 12:29 var/
drwx--x--- 4 web10 client4 4096 Sep 27 12:25 web/
[root@panel 12:30:26:/srv/www/clients/client4/web10]
#
```
ein chown auf den richtigen User gibt wieder:

```
Sep 27 12:36:01 panel /usr/sbin/cron[12089]: (web10) CMD (/srv/www/clients/client4/web10/touch /tmp/ichwarhier.txt)
Sep 27 12:36:01 panel jk_chrootsh[12089]: path /srv/www/clients/client4/web10/etc/ is not owned by user 0
Sep 27 12:36:01 panel jk_chrootsh[12089]: path /srv/www/clients/client4/web10/etc/ is not owned by group 0
Sep 27 12:36:01 panel jk_chrootsh[12089]: abort, /srv/www/clients/client4/web10 is not a safe chroot jail.
```
wen ich das etc wieder root gebe:


```
Sep 27 12:39:01 panel /usr/sbin/cron[12192]: (web10) CMD (/srv/www/clients/client4/web10/touch /tmp/ichwarhier.txt)
Sep 27 12:39:01 panel /usr/sbin/cron[12193]: (root) CMD (/usr/local/ispconfig/server/server.sh &> /dev/null)
Sep 27 12:39:01 panel jk_chrootsh[12192]: now entering jail /srv/www/clients/client4/web10 for user web10 (5004)
Sep 27 12:39:01 panel jk_chrootsh[12192]: ERROR: failed to execute shell /bin/bash for user web10 (5004), check the permissions and libraries of /srv/www/clients/client4/web10//bin/bash
```

in /etc/cron.d finden sich immer noch die alten cronjobs, wurden anscheinend nicht gelöscht


----------



## Rupertt (27. Sep. 2010)

wie muss den die jailkit config aussehehn?
Da gibs ja einige Dateien in  /etc/jailkit

Das hier steht in der jk_init:



```
DEFAULT]
[#relax_home_group=1
skip_injail_passwd_check=1
injail_shell=/bin/bash
env = TERM, PATH
```
wenn ich den punkt injail_shell änder schlägt sich das auf die FEhlermeldund nieder, also sucht jailkit im home des webnutzers nacht /bin/bash, aber dies ist ja quatsch.

Ein manueller aufruf von jailkit gibt:


```
# jk_init -v -j /srv/www/clients/client5/web11/ editors basicshell extendedshell netutils ssh sftp scp
/srv/www/clients/client5
/srv/www/clients
ERROR: /srv/www/clients is not owned by root:root!

ERROR: jail directory editors is not safe
```


----------



## Rupertt (8. Nov. 2010)

Hallo,

ich habe mich wieder dieses Problems angenommen, da ich schon chroot user benötige.

Ich habe das jailkit auf die aktuelle VErsion geupdated und den ispconfig auf meine webserver im multiserversetup geupdated und die den dienst jailkit neu konfigurtieren lassen.

in der /etc/passwd wird alles korrekt angelegt,


```
me_sshtest:x:5011:5011::/srv/www/clients/client18/web37/./srv/www/clients/me_sshtest:/usr/sbin/jk_chrootsh
```
auch wenn ich mich einlogge sieht der logeintrag gut aus:


```
Nov  8 11:06:27 panelweb sshd[27238]: Accepted keyboard-interactive/pam for me_sshtest from 192.168.1.30 port 63782 ssh2
Nov  8 11:06:27 panelweb jk_chrootsh[27245]: now entering jail /srv/www/clients/client18/web37 for user me_sshtest (5011)
```

Kann man dies noch weiter debuggen?


----------



## Rupertt (8. Nov. 2010)

teilweise scheint das jetzt zu funktionieren,
nur für user die bereits engelegt wurde graift das jchroot nicht,
auch macht er beim anlegen komische sachen,
ich habe diese beiden User direkt nacheinander angelegt


```
bbnm_ssh:x:5007:5006::/srv/www/clients/client5/web27/./srv/www/clients/bbnm_ssh:/usr/sbin/jk_chrootsh

sjb_ssh:x:5010:5014::/srv/www/clients/client21/web31:/bin/false
```

UPS:  mein Fehler, ich hatte in den eigenschaften des Kunden unter  "SSH-Chroot Optionen" None und Jailkit angeklickt.


----------

