Ядро Linux с grsec + Java / Apache Tomcat
У меня есть 64-битный выделенный сервер Debian Linux. В ядре применен патч grsec.
В основном я использую этот сервер для запуска Apache Tomcat (6.0.26, Java 6), и все выглядит нормально.
Единственная проблема заключается в том, что когда я запускаю Tomcat, я получаю несколько из них:
grsec: From xxx.xxx.xxx.xxx: Segmentation fault occurred at 00007fefe04e4000 in /home/t/jre1.6.0_20/bin/java[java:22403] uid/euid:1001/1001 gid/egid:1001/1001, parent /sbin/init[init:1] uid/euid:0/0 gid/egid:0/0
grsec: more alerts, logging disabled for 10 seconds
Тогда никаких журналов ошибок больше. Все отлично.
Ядро это:
Linux 2.6.32.2-xxxx-grs-ipv4-64 #1 SMP Tue Dec 29 14:41:12 UTC 2009 x86_64 GNU/Linux
И веб-приложение работает нормально.
Таким образом, при запуске Tomcat возникают ошибки сегментации, но, похоже, все работает нормально.
Это касается? Должен ли я перейти на ядро без grsec?
2 ответа
Известно, что Java не очень хорошо играет вместе с grsec.
Вам, по крайней мере, придется использовать chpax против двоичного файла Java, но переключение на не-grsec ядро - лучший вариант.
Я также принимаю OVH, и у меня есть куча этого:
20 июля, 07:29:25 nsxxxxxx ядро: grsec: с xxxx: ошибка сегментации произошла в 00007f0e17e3e300 в /usr/lib/jvm/java-6-sun-1.6.0.17/jre/bin/java[java:4177] uid/euid:1011/1011 gid/egid:1011/1011, parent /sbin/init[init:1] uid/euid:0/0 gid/egid:0/0
20 июля, 07:29:25 nsxxxxxx ядро: grsec: с xxxx: ошибка сегментации произошла в 0000000000000008 в /usr/lib/jvm/java-6-sun-1.6.0.17/jre/bin/java[java:30441] uid/euid:1011/1011 gid/egid:1011/1011, parent /sbin/init[init:1] uid/euid:0/0 gid/egid:0/0
20 июля, 07:29:25 nsxxxxxx ядро: grsec: с xxxx: ошибка сегментации произошла в 0000000000000008 в /usr/lib/jvm/java-6-sun-1.6.0.17/jre/bin/java[java:30441] uid/euid:1011/1011 gid/egid:1011/1011, parent /sbin/init[init:1] uid/euid:0/0 gid/egid:0/0
20 июля, 07:30:00 ядро nsxxxxxx: grsec: начиная с xxxx: ошибка сегментации произошла в 0000000000000008 в /usr/lib/jvm/java-6-sun-1.6.0.17/jre/bin/java[java:30620] uid/euid:1011/1011 gid/egid:1011/1011, parent /sbin/init[init:1] uid/euid:0/0 gid/egid:0/0
20 июля, 07:30:02 ядро nsxxxxxx: grsec: начиная с xxxx: ошибка сегментации произошла в 0000000000000008 в /usr/lib/jvm/java-6-sun-1.6.0.17/jre/bin/java[java:30620] uid/euid:1011/1011 gid/egid:1011/1011, parent /sbin/init[init:1] uid/euid:0/0 gid/egid:0/0
20 июля, 07:30:02 ядро nsxxxxxx: grsec: начиная с xxxx: ошибка сегментирования произошла в 000000000000001c в /usr/lib/jvm/java-6-sun-1.6.0.17/jre/bin/java[java:30672] uid/euid:1011/1011 gid/egid:1011/1011, parent /sbin/init[init:1] uid/euid:0/0 gid/egid:0/0
20 июля, 07:30:14 ядро nsxxxxxx: grsec: начиная с xxxx: ошибка сегментации произошла в 0000000000000008 в /usr/lib/jvm/java-6-sun-1.6.0.17/jre/bin/java[java:30683] uid/euid:1011/1011 gid/egid:1011/1011, parent /sbin/init[init:1] uid/euid:0/0 gid/egid:0/0
20 июля, 07:30:14 ядро nsxxxxxx: grsec: начиная с xxxx: ошибка сегментации произошла в 0000000000000008 в /usr/lib/jvm/java-6-sun-1.6.0.17/jre/bin/java[java:30683] uid / euid: 1011/1011 gid / egid: 1011/1011, родительский /sbin/init[init:1] uid/euid:0/0 gid/egid:0/0 ...
Кажется, что смена ядра на не GRSEC может сработать.