Учетная запись пользователя, автоматически заполняющаяся dead.letter файлом

Как Chris упомянул, слой 16 указывает, что сервер не имеет на самом деле sync'd с сервером. Только, чтобы быть бесспорными, Вы действительно перезапускали сервисы ntp, правильно? (service ntpd restart) Я не пытаюсь инсинуировать, что Вы пропускаете легкий материал, но я всегда делаю!

Можно ли отправить вывод еще нескольких команд, чтобы помочь диагностировать?

ntpq -p на клиенте и сервере. Должен показать, какие серверы это настроило, а также статистика для тех серверов.
ntpdc -c monlist на сервере. Должен показать соединенным клиентам.

Кроме того, так как Вы не упоминали ОС, я работаю с командами стиля RHEL. Сообщите мне, есть ли у Вас что-то другое.

РЕДАКТИРОВАНИЕ после дальнейшей информации
Хорошо, видя Ваш вывод, вот Ваша проблема: у Вас нет слоя 1 сервером. На самом деле "Луна" использует, это - локальные часы. Это сообщает о себе как слой 16 серверов. Для Вашей ссылки сервер Stratum1 имел бы локальный GPS или атомные часы. У Вас есть один из тех? Иначе Луна должна синхронизироваться, это - часы с ДРУГИМ сервером ntp. Если это не будет иметь доступа к сети, то необходимо будет уклониться от его слоя. (Это требует, чтобы Вы не заботились слишком много в 'истинное' время. Который Вы не делаете, но кто-либо еще читающий это должен отметить это.)

На Луне добавьте следующую строку к своему ntp.conf файлу: fudge 127.127.1.0 stratum 10. Это заставит его сообщить о своих локальных часах как о слое 10. Который заставит все другие серверы использовать его по своему локальному слою 16 часов.

- Christopher Karel

2
задан 24 March 2012 в 16:57
3 ответа

Есть ли у этого пользователя дерево веб-контента, обслуживаемое веб-сервером этой системы?

Проверьте его дерево контента на предмет CGI или чего-то, что обрабатывает отправку GET / POST. Я предполагаю, что у них установлено какое-то стандартное веб-программное обеспечение - инструмент для верстки страниц или что-то вроде WordPress. Некоторые сторонние организации используют некоторую дыру в безопасности в этом веб-программном обеспечении, чтобы попытаться отправить почту из этой системы. Их эксплойт работает некорректно или, по крайней мере, не всегда, поэтому некоторая / вся исходящая почта не работает; локальный агент почтового транспорта помещает почту в dead.letter пользователя.

Я здесь в затруднительном положении ... но я бы сначала посмотрел именно здесь.

3
ответ дан 3 December 2019 в 09:21

Если я правильно помню, у меня был случай, когда это было вызвано сломанным скриптом cron много лет назад, поэтому проверьте users crontab .

1
ответ дан 3 December 2019 в 09:21

Вот сценарий, который вы можете запустить для файла dead.letter и, возможно, поймать процесс, его создающий.

#! /bin/bash

if [ $# -eq 0 ]; then
        echo "Syntax: $(basename $0) <file_to_watch>"
        exit 1
fi

FILE_TO_WATCH=$1
LOGFILE=/var/tmp/$(basename $0).$(date +"%Y-%m-%d").log
SLEEP_DELAY=5

if [ ! -e $LOGFILE ]; then
        echo -e "DATE                   COMMAND     PID      USER   FD      TYPE     DEVICE SIZE/OFF       NODE NAME" > $LOGFILE
fi

echo "Starting lsof tail job with PID $$"
echo "lsof output will be appended to $LOGFILE"

while true; do
        if [ -e $FILE_TO_WATCH ]; then
                lsof $FILE_TO_WATCH | sed 1d | sed -e "s/^/$(date +"%Y-%d-%m %H:%M:%S    ")/" >> $LOGFILE 2>/dev/null
                sleep $SLEEP_DELAY
        fi
done

Не стесняйтесь изменять переменные, например, чтобы сделать задержку более агрессивной. Если вы хотите запустить его в качестве фонового задания, просто назовите его так:

nohup script.sh /path/to/dead.letter &

Сценарий будет отображать PID, который он использует для вашего удобства, чтобы вы могли убить его.

РЕДАКТИРОВАТЬ: Согласно вашему комментарию, похоже, что файл не удерживается открытым процессом достаточно долго, чтобы вы могли его поймать. Еще вы можете попробовать установить флаг неизменяемости в файле dead.letter в надежде, что он будет генерировать ошибки в / var / log / messages или другом журнале. Неизменяемые файлы нельзя изменить даже с правами root.

Выполните следующие действия:

# rm -f dead.letter
# touch dead.letter
# chattr +i dead.letter
# lsattr dead.letter
----i---------- dead.letter

Затем попробуйте прикоснуться к нему еще раз с root. Вы получите это:

2
ответ дан 3 December 2019 в 09:21

Теги

Похожие вопросы