É possível criptografar / ofuscar a senha em um script de ftp usando o Windows ftp?

1

Eu tenho um script copiando arquivos usando o Windows ftp. (Arquivo em lote)

A senha lá está em texto claro. É possível ofuscar ou criptografar essa senha?

Como é um servidor em uma fábrica, não posso simplesmente instalar novos programas, como o WinSCP. Eu tenho que tentar ftp primeiro ou dizer aos meus superiores que não é possível assim.

(Eu entendo que usar ftp não é uma maneira segura de copiar arquivos, pois este sftp tem que ser usado)

    
por nostromo 28.06.2018 / 14:58

1 resposta

2

O que você está tentando fazer é o que eu ouvi ser chamado de "segurança pela obscuridade" ...

Você pode passar a senha de um processo que executa o arquivo em lote e bloquear esse processo para que nenhuma conta possa ler a partir dele que tenha acesso a essa máquina e talvez use EFS para a pasta em que está, se você puder ou talvez bit locker criptografa o disco rígido que o script reside.

Portanto, no lote, você teria SET ftpPass=%~1 e, em seguida, com Agendador de Tarefas ou o que estiver bloqueado que o executa, passe a senha como o primeiro argumento como C:\Folder\FTPScript.bat "MyPassword" so em o script eles só veriam %ftpPass% .

Exemplo de script em lote

@ECHO ON

SET ftpPass=%~1
SET ftphost=<hostname>
SET ftpusr=<username>
SET ftptmpfile=%temp%\temp_MyFTPJob.ftp
IF EXIST "%ftptmpfile%" DEL /Q /F "%ftptmpfile%"


:ftp
ECHO open %ftphost%> %ftptmpfile%
ECHO %ftpusr%>> %ftptmpfile%
ECHO %ftpPass%>> %ftptmpfile%
ECHO prompt                          >> %ftptmpfile%
ECHO binary                          >> %ftptmpfile%
ECHO mput "C\folder\path\*.txt"      >> %ftptmpfile%
ECHO dir                             >> %ftptmpfile%
ECHO bye                             >> %ftptmpfile%
ftp -s:%ftptmpfile%
IF EXIST "%ftptmpfile%" DEL /Q /F "%ftptmpfile%"
EXIT

Mais recursos

Windows 10: Tarefas agendadas com bloqueio / desbloqueio de estação de trabalho não acionadas

    
por 28.06.2018 / 16:43

Tags