Изменить расположение файла журнала sshd на CentOS?

14

Как изменить расположение sshdфайла журнала в CentOS? sshdжурналы /var/log/messagesвместо /var/log/secure. Как я могу изменить настройки, чтобы sshdперестать отправлять журналы /var/log/messages?

Jidrick
источник
1
Вы продолжаете писать /var/log/message, это действительно место? Это вообще /var/log/messages.
SLM
1
@slm здесь это было /var/log/messages, возможно ОП имеет как ;-)
Энтон
В моей системе Ubuntu журнал SSH находится в/var/log/auth.log
Эрик Ван

Ответы:

18

Пожалуйста, напишите ваше sshd_configчто-то еще, казалось бы, до. Система CentOS всегда входит в систему /var/log/secure.

пример

$ sudo tail -f /var/log/secure
Feb 18 23:23:34 greeneggs sshd[3545]: pam_succeed_if(sshd:auth): requirement "uid >= 1000" not met by user "root"
Feb 18 23:23:36 greeneggs sshd[3545]: Failed password for root from ::1 port 46401 ssh2
Feb 18 23:23:42 greeneggs unix_chkpwd[3555]: password check failed for user (root)
Feb 18 23:23:42 greeneggs sshd[3545]: pam_succeed_if(sshd:auth): requirement "uid >= 1000" not met by user "root"
Feb 18 23:23:43 greeneggs sshd[3545]: Failed password for root from ::1 port 46401 ssh2
Feb 18 23:23:48 greeneggs sshd[3545]: Accepted password for root from ::1 port 46401 ssh2
Feb 18 23:23:48 greeneggs sshd[3545]: pam_unix(sshd:session): session opened for user root by (uid=0)
Feb 18 23:24:05 greeneggs sshd[3545]: Received disconnect from ::1: 11: disconnected by user
Feb 18 23:24:05 greeneggs sshd[3545]: pam_unix(sshd:session): session closed for user root
Feb 18 23:27:15 greeneggs sudo:     saml : TTY=pts/3 ; PWD=/home/saml ; USER=root ; COMMAND=/bin/tail /var/log/secure

Это контролируется через /etc/ssh/sshd_config:

# Logging
# obsoletes QuietMode and FascistLogging
#SyslogFacility AUTH
SyslogFacility AUTHPRIV
#LogLevel INFO

А также содержание /etc/rsyslog.conf:

# Log anything (except mail) of level info or higher.
# Don't log private authentication messages!
*.info;mail.none;authpriv.none;cron.none                /var/log/messages

# The authpriv file has restricted access.
authpriv.*                                              /var/log/secure

Ваша проблема

В одном из ваших комментариев вы упомянули, что ваш rsyslogdконфигурационный файл был назван /etc/rsyslog.config. Это неправильное имя для этого файла, и, скорее всего, это причина того, что ваша запись испорчена. Измените имя этого файла на, /etc/rsyslog.confа затем перезапустите службу ведения журнала.

$ sudo service rsyslog restart
SLM
источник
Спасибо, мне интересно, если закомментировано "SyslogFacility AUTHPRIV". Как sshd узнает, какие настройки по умолчанию? Сохранены ли настройки по умолчанию в каком-либо месте, которое вы можете редактировать?
Джидрик
Значения по умолчанию указаны в исходном коде, который использовался для компиляции sshdисполняемого файла. Если вы хотите переопределить значения по умолчанию, вы можете указать параметры sshdкомандной строки или отредактировать файл конфигурации.
Марк Плотник
@MarkPlotnick - да, как это обычно делается в файлах конфигурации (как показано выше), значения по умолчанию отображаются в файле конфигурации, но затем комментируются. Так sshбыло скомпилировано так, чтобы LogLevelбыло установлено INFOпо умолчанию. Чтобы переопределить его, вам нужно раскомментировать эту строку и затем изменить ее значение.
SLM
3

sshdФункция системного журнала по умолчанию есть AUTH, поэтому он будет зарегистрирован в системном журнале /var/log/messages.

Сделать sshd запись в новый файл, вы можете изменить его средство syslog на что-то другое, а затем сконфигурировать syslog для записи этого нового средства в новый файл, то есть:

В sshd_config добавьте эту строку:

SyslogFacility AUTHPRIV

Тогда в syslog.conf:

authpriv.* /var/log/secure
cuonglm
источник
@ Джидрик - с твоей коробкой что-то не так. Похоже, что сломанные и пропавшие вещи.
SLM
@Jidrick: вы можете проверить другие, как rsyslog?
Cuonglm
@Gnouc - SyslogFacility AUTHPRIVэто уже значение по умолчанию для RH дистрибутивов. Они переопределяют это как часть упаковки.
SLM
@Gnouc Да, но изменение этого, похоже, не работает.
Джидрик
@Jidrick - изменить имя файла /etc/rsyslog.configна /etc/rsyslog.conf.
SLM