Вопрос: Регистрация SFTP: есть ли способ?


Мне интересно, есть ли способ зарегистрировать команды, полученные сервером. Это могут быть все команды SSH, если они содержат информацию о командах, связанных с передачей файлов.

У меня проблемы с SFTP-клиентом, и создатель запрашивает журналы, но я не могу найти никаких существующих журналов.

Я ищу для входа в систему либо CentOS, либо OS X (хотя я подозреваю, что это возможно, это было бы похоже на обоих).


82
2017-10-11 01:42


Источник




Ответы:


OpenSSH версии 4.4p1 и выше (которые должны включать последнюю версию с CentOS 5) имеют встроенную возможность регистрации SFTP - вам просто нужно ее настроить.

Найдите это в своем sshd_config (в centos, файле / И т.д. / SSH / sshd_config):

Subsystem       sftp    /usr/libexec/openssh/sftp-server

и измените его на:

Subsystem       sftp    /usr/libexec/openssh/sftp-server -l INFO

INFO - это всего лишь один уровень детализации по сравнению с тем, что вы видите по умолчанию, - он содержит подробную информацию о передаче файлов, изменениях разрешений и т. Д. Если вам нужна дополнительная информация, вы можете соответствующим образом настроить уровень журнала. Различные уровни (в порядке детализации):

QUIET, FATAL, ERROR, INFO, VERBOSE, DEBUG, DEBUG1, DEBUG2, and DEBUG3

Все, что связано с VERBOSE, вероятно, больше информации, чем вы ищете, но это может быть полезно.

Наконец, перезапустите службу SSH, чтобы обновить изменения (centos):

systemctl restart sshd

85
2017-10-13 23:21



Я не знал, что вы можете записывать SFTP, вот что мне нужно. Где он хранит журналы? /var/log/auth.log? - Rory
Это зависит от конфигурации вашего syslog. Используя loglevel INFO, большинство по умолчанию syslog.conf помещают эти записи в / var / log / messages. - rvf
Можно ли это сделать, используя внутренний сервер sftp? - Cian
это отлично работает для SFTP, но как насчет SCP? Я не нашел записей в журнале для файла, скопированного с помощью команды scp, хотя журнал был успешным для sftp - Ale
В Ubuntu эти журналы по умолчанию /var/log/auth.log, Добавить -f USER к тому, что Subsystem config, чтобы отправить их в /var/log/syslog, - Throwaway Account 3 Million


Те же самые переключатели для ведения журнала для sftp-сервера также работают для internal-sftp. Вот пример из моего / etc / ssh / sshd_config:

Subsystem   sftp    internal-sftp -f AUTH -l INFO

С сообщением с включенным протоколом уровня INFO начнет отображаться в / var / log / messages (по крайней мере, на основе Distros на основе Red Hat):

May 27 05:58:16 test-server sshd[20044]: User child is on pid 20049
May 27 05:58:16 test-server sshd[20049]: subsystem request for sftp by user test-user
May 27 05:58:16 test-server internal-sftp[20050]: session opened for local user test-user from [192.168.1.1]
May 27 05:58:16 test-server internal-sftp[20050]: received client version 3
May 27 05:58:16 test-server internal-sftp[20050]: realpath "."
May 27 05:58:21 test-server internal-sftp[20050]: opendir "/home/test-user/"
May 27 05:58:21 test-server internal-sftp[20050]: closedir "/home/test-user/"
May 27 05:58:21 test-server internal-sftp[20050]: lstat name "/home/test-user/upload"
May 27 05:58:21 test-server internal-sftp[20050]: realpath "/home/test-user/upload/"
May 27 05:58:21 test-server internal-sftp[20050]: stat name "/home/test-user/upload"
May 27 05:58:24 test-server internal-sftp[20050]: open "/home/test-user/upload/test-file.pdf" flags WRITE,CREATE,TRUNCATE mode 0664
May 27 05:58:25 test-server internal-sftp[20050]: close "/home/test-user/upload/test-file.pdf" bytes read 0 written 1282941

38
2018-05-29 12:42



Я обнаружил, что в моем случае он регистрирует только сеансы sftp для root, но не для моего chrooted пользовательского теста. Я не понимаю, почему, у вас есть идеи? - JohnnyFromBF
Похоже, вам нужно /dev/log в вашей области chroot. Что-то вроде sudo mkdir /chrooted/area/dev, sudo touch /chrooted/area/dev/log, sudo chmod 511 /chrooted/area/dev, sudo chattr +i /chrooted/area/dev, sudo mount --bind /dev/log /chrooted/area/dev/log, Пользователи все равно будут иметь доступ на запись к этому / dev / log, но поскольку это сокет, они не могут нанести большого вреда, если все, к чему у них есть доступ, sftp, - sch
Спасибо за подсказку. Однако я не могу заставить его работать. Не могли бы вы быть более конкретными? - user1092608
FWIW: В ArchLinux Wiki есть хорошее описание того, как включить ведение журнала в среде chroot: wiki.archlinux.org/index.php/SFTP_chroot#Logging - Kaii