LINUX.ORG.RU
решено ФорумAdmin

Нстройка sftp логов

 , , ,


0

1

Всем привет,

Подскажите, пожалуйста, никто не сталкивался с настройкой логов для протокола SFTP на ubuntu22?

Имею такие конфиги, сам сервер SFTP работает я подключаюсь, а логи не cыпятся в директорию /var/log/sftp.log

Заранее спасибо, за предложения.

cat /etc/ssh/sshd_config


Subsystem sftp /usr/lib/openssh/sftp-server

Match User test

ForceCommand internal-sftp -f LOCAL7 -l INFO

PasswordAuthentication yes

ChrootDirectory /var/sftp

PermitTunnel no

AllowAgentForwarding no

AllowTcpForwarding no

X11Forwarding no

cat /etc/rsyslog.d/60-sftp.conf

# Create socket within chrooted directories to allow for logging

$AddUnixListenSocket /var/sftp/dev/log

# Parse the data logged at level INFO and facility LOCAL7 into /var/log/sftp.log

LOCAL7.info /var/log/sftp.log

# Report logins and logoffs

:syslogtag,startswith,"sftp-server" /var/log/sftp.log



Последнее исправление: troy856 (всего исправлений: 3)

У тебя ChrootDirectory указано, сокет для логов должен быть доступен из него тоже.

$AddUnixListenSocket /var/sftp/uploads/dev/log

А надо /var/sftp/dev/log (если я правильно понял что делает эта опция).

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 1)
Ответ на: комментарий от firkax

А надо /var/sftp/dev/log (если я правильно понял что делает эта опция).

Если вы имеете ввиду установить данную директорию в ChrootDirectory, то так не работает, точнее он вообще не подключается к sftp

ChrootDirectory  /var/sftp/dev/log

troy856
() автор топика
Ответ на: комментарий от troy856

Какую директорию, ты о чём? Зачем ты бездумно что-то копипастишь?

После chroot фтп-демон находится в указанной там директории, и ему оттуда должен быть доступен /dev/log.

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 1)
Ответ на: комментарий от firkax

Какую директорию, ты о чём? Зачем ты бездумно что-то копипастишь?

так ты конкретней ответ выдавай...

в «ChrootDirectory» если ты выше пролистаешь, то там я и указал тот самый сокет на /dev/log и соответствующие права дал.

тобишь указан /var/sftp в ней подкаталоги /uploads - для загрузки файлов внутри sftp и /dev/log - тот самый сокет

troy856
() автор топика
Ответ на: комментарий от troy856

Зачем ты вместо директории туда вписал сокет? ChrootDirectory это та директория, которая будет видна как «/» для залогиненого юзера. Этот же самый юзер должен видеть сокет по пути «/dev/log». Надо настроить syslog чтоб он создал там этот сокет.

А я вижу ты уже исправил в стартовом сообщении:

$AddUnixListenSocket /var/sftp/dev/log

И так теперь работает? (rsyslog наверно надо перезапустить чтобы его настройки применились).

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 5)
Ответ на: комментарий от firkax

Не поверишь, не работает, я сделал restart rsyslog и sshd навсякий

он да, создал мне сокет /dev/log

srw-rw-rw- 1 root root 0 сен 30 20:45 /var/sftp/dev/log
подключился по sftp, вижу каталоги /uploads и /dev но логи так и не сыпятся в /var/log/sftp

заметил ещё это в выхлопе rsyslog

action 'action-7-builtin:omfile' suspended (module 'builtin:omfile'), next retry is Sat Sep 30 20:45:49 2023, retry nbr 0. There should be messages before this one giving the reason for suspension. [v8.2112.0 try https://www.rsyslog.com/e/2007 ]

troy856
() автор топика
Ответ на: комментарий от troy856

А в других логах что-нить есть про sftp? Он может туда писать ошибки, из-за которых не пишет логи подключений.

И что пишет ls -al /var/sftp/dev?

Subsystem sftp /usr/lib/openssh/sftp-server

Лучше заменить на Subsystem sftp internal-sftp, хотя скорее всего это не относится к проблеме.

И ещё - файл /var/log/sftp.log существует?

ls -al /var/log/sftp.log

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 2)
Ответ на: комментарий от firkax

Кажется вкурил, я создал файл /var/log/sftp.log а про права ё забыл... выставил так:

chown syslog:adm /var/log/sftp.log

после рестарта и ошибка фиксанулась и по логами ура начал сыпать, а /dev/log нельзя убрать из поля видимости sftp для клиентов? и ещё спасибо тебе за помощь!

troy856
() автор топика
Последнее исправление: troy856 (всего исправлений: 1)
Ответ на: комментарий от troy856

/dev/log нельзя убрать из поля видимости sftp для клиентов?

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

Если вместо openssh использовать другой sftp-сервер то может быть и можно, но что-то к ним доверия меньше в плане безопасности.

firkax ★★★★★
()