URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 65314
[ Назад ]

Исходное сообщение
"Popa3d, логирование ip адресов  "

Отправлено Test , 02-Апр-06 04:56 
Добрый день. На FreeBSD 5.4 из портов установлен popa3d. Запускается посредством inetd. Логи собираются с помощью syslog-а. Проблема в том, что в логи не попадает информация относительно ip адреса и имени хоста обратившегося на сервер. Если запускать inetd с ключем -l, то в auth.log падает информация о имени хоста. Однако, такой вариант не устраивает, поскольку через inetd запускается много других сервисов и в логах оказывается много лишнего. Подскажите, пожалуйста, как можно уговорить popa3d логировать ip адрес хоста, обратившегося на сервер.

Содержание

Сообщения в этом обсуждении
"Popa3d, логирование ip адресов  "
Отправлено lexleo , 02-Апр-06 20:49 
Как заставить popa3d писать в лог ip-шник юзера
В /etc/hosts.allow в самом начале!!!(man hosts_access;man hosts_options):
# IP в REMOTE_ADDR
  popa3d: ALL : setenv REMOTE_ADDR %a : allow
# имя хоста в REMOTE_ADDR
  popa3d: ALL : setenv REMOTE_ADDR %h : allow


--- pop_auth_old.c   Thu Sep  6 05:52:35 2001
+++ pop_auth.c Mon Oct  7 13:52:18 2002
@@ -6,6 +6,7 @@
#include <unistd.h>
#include <string.h>
#include <syslog.h>
+#include <stdlib.h>

#include "misc.h"
#include "params.h"
@@ -83,7 +84,7 @@
   }
#endif
   syslog(result == AUTH_OK ? SYSLOG_PRI_LO : SYSLOG_PRI_HI,
-       "Authentication %s for %s",
+       "Authentication %s for %s (%s)",
        result == AUTH_OK ? "passed" : "failed",
-       user ? user : "UNKNOWN USER");
+       user ? user : "UNKNOWN USER", getenv("REMOTE_ADDR"));
}


"Popa3d, логирование ip адресов  "
Отправлено Test , 03-Апр-06 16:56 
lexleo,  спасибо тебе добрый человек все работает в лучшем виде. Мне чтобы такой трюк самому осилить знаний бы не хватило :)