Não tenho certeza sobre o registro do SCP . Eu dei uma olhada nisso. Todo scp
faz é chamar scp
na outra extremidade em um modo ligeiramente diferente. sshd
deve ser capaz de registrar o que é exec. De o código , parece que sshd
precisa de LogLevel=DEBUG
para escrever o exec, mas isso não está saindo para mim no DEBUG ou em qualquer nível superior (6.1p1). Infelizmente, uma vez que sshd
tenha executado algo, o binário em execução pode fazer o que quiser embaixo, então ajudaria se o binário também implementasse o registro em log. Não há registro em log real em scp
, de modo que seria necessário um remendo de alguns tipos.
Isso imediatamente leva meu cérebro a escrever um invólucro para scp
para pelo menos obter alguma informação.
mv /usr/bin/scp /usr/bin/scp.ori; touch /usr/bin/scp; chmod 755 /usr/bin/scp;
Em seguida, coloque o seguinte em /usr/bin/scp
#!/bin/sh
logger -i -p auth.info "scp ran with [$*]"
/usr/bin/scp.ori "$@"
O script seria apagado pelos lançamentos e é um pouco desonesto. Você só vê realmente um lado do comando scp que pode ser um pouco breve (por exemplo, scp -r user@host:/home/user/ ./
é -r -f /home/matt/
no host)
Também é importante notar que se as pessoas tiverem acesso ao shell, elas poderão copiar o que quiserem sem usar scp ou sftp.
< end edit >
É possível forçar um Subsytem
para um login. O seguinte é para membros do grupo sftponly
que eu quero ser capaz apenas de acessar um local chroot específico para que seus usuários tenham um shell de /usr/sbin/nologin
. Eu não acho que você vai precisar de mais de ForceCommand
em sshd config.
Subsystem sftp internal-sftp
Match group sftponly
ChrootDirectory /pub/user/%u
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp
PasswordAuthentication yes
Espero que você possa anexar seu registro e você esteja ausente.