У меня есть экземпляр Fedora 14 на Amazon EC2, и я хочу сделать http-запрос от этого экземпляра к другому в той же группе безопасности Amazon. Когда я использую wget, чтобы сделать запрос, он работает нормально. Однако, когда я использую HTTP-клиент Apache, работающий через JBoss 6, я получаю

HttpClient ConnectException: Connection refused

JBoss запускается не как root, а как пользователь "jboss". Я подозреваю, что это проблема SELinux. Я вошел как root и позвонил

setsebool -P httpd_can_network_connect 1

а также

setsebool -P httpd_can_network_relay 1

Но все равно не повезло. Любые советы будут высоко ценится.

С уважением

1 ответ1

0

Во-первых, дважды проверьте, что SELinux на самом деле является виновником, проверив журнал аудита в /var/log/audit/audit.log . Должно быть сообщение с type=AVC связанным с JBoss.

Затем вы можете использовать это сообщение вместе с инструментом audit2allow для авторизации заблокированного доступа. Чтобы авторизовать все, что заблокировано для любого двоичного файла с именем jboss в нем, запустите это как root:

grep jboss /var/log/audit/audit.log | audit2allow -M jboss
semodule -i jboss.pp

Однако лучше разрешить только определенные необходимые разрешения. Чтобы сделать это, скопируйте и вставьте соответствующие строки из своего журнала аудита в новый файл, и cat , что audit2allow вместо этого.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .