SFTP no se inicia cuando se utiliza un script personalizado a través de ForceCommand en Win32 SSH

SFTP no se inicia cuando se utiliza un script personalizado a través de ForceCommand en Win32 SSH

Escribí un script para enviar una alerta por correo electrónico cuando un usuario inicia sesión a través de SSH. Se activa mediante ForceCommand. Esto funciona bien al abrir ventanas de terminal, pero SFTP no funciona (el registro de Bitvise dice "canal SFTP abierto" pero no aparece ninguna ventana SFTP). ¿Me falta algo en el archivo de script?

Desde sshd_config:

#Run command at login
ForceCommand c:\ProgramData\ssh\login.bat

Aquí está el script (login.bat)

@echo off

REM For colored text; see :colorEcho below
SETLOCAL EnableDelayedExpansion
for /F "tokens=1,2 delims=#" %%a in ('"prompt #$H#$E# & echo on & for %%b in (1) do     rem"') do (
  set "DEL=%%a"
)

ipconfig /all
echo:
REM Get current date and time
For /f "tokens=2-4 delims=/ " %%a in ('date /t') do (set mydate=%%c-%%a-%%b)
For /f "tokens=1-2 delims=/:" %%a in ('time /t') do (set mytime=%%a%%b)
call :colorEcho a0 "User %LOGNAME% connected to %COMPUTERNAME% from %SSH_CONNECTION% at %mydate%_%mytime%"
REM Send alert that user has connected.
c:\BatchFiles\EmailMessage\EmailMessage.exe -s "New Connection to %COMPUTERNAME%" -b "User %LOGNAME% connected to %COMPUTERNAME% from %SSH_CONNECTION% at %mydate%_%mytime%"
echo:
echo:

REM Send original command from SSH so shell will start
cmd %SSH_ORIGINAL_COMMAND%

REM This provides for colored text
:colorEcho
echo off
<nul set /p ".=%DEL%" > "%~2"
findstr /v /a:%1 /R "^$" "%~2" nul
del "%~2" > nul 2>&1i

¡Gracias!

información relacionada