Назад | Перейти на главную страницу

Как выполнить скрипт на sftp-подключении?

Я запускаю ssh-сервер на своей машине и ограничиваю доступ определенных пользователей к sftp только с помощью internal-sftp и ChrootDirectory. Что мне нужно, так это способ выполнить скрипт перед удалением пользователей. Фактически, цель состоит в том, чтобы смонтировать зашифрованную файловую систему при подключении клиента и размонтировать ее при закрытии. Спасибо заранее.

Если вы не хотите взламывать код openssh, вам нужно использовать внешний сервер sftp. Если вы это сделаете, то просто оберните его оберткой. Например: в sshd_config

Subsystem       sftp    /usr/local/bin/sftp-server

В /usr/local/bin/sftp-server:

#!/bin/sh
mount_special_fs
chroot /my/secret/stuff /usr/libexec/openssh/sftp-server
umount_special_fs

Это мощь можно обернуть обертку sshd и запускаем обертку из inetd но запуск sshd из inted не рекомендуется, так как запускается медленно.

Вы также можете использовать pam_script, модуль pam для выполнения скрипта из модуля аутентификации pam. Вы можете добавить его в конфигурацию pam sshd. URL: http://linux.die.net/man/5/pam_script