Для автоматического принятия сертификата при подключении к серверу с помощью WinSCP в BAT-файле, вы можете использовать параметр `-hostkey` в командной строке WinSCP. Этот параметр позволяет указать хост-ключ (host key) сервера, и WinSCP не будет запрашивать подтверждения.
Вот что вам нужно сделать:
1. **Получите хост-ключ сервера.** Чтобы получить хост-ключ, вы можете подключиться к вашему серверу через WinSCP GUI, и когда он попросит разрешить ключ, запомнить его и скопировать нужный фрагмент (он будет в виде строки).
2. **Создайте BAT-файл с использованием WinSCP.** Вот пример BAT-файла, который включает автоматическое принятие сертификата:
```batch
@echo off
setlocal
:: Параметры подключения
set HOST=ftp.example.com
set USER=username
set PASSWORD=password
set HOSTKEY="ssh-ed25519 255 SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
:: Путь к WinSCP
set WINSCP_PATH="C:\Program Files (x86)\WinSCP\WinSCP.com"
:: Команда для подключения и выполнения команд
%WINSCP_PATH% /command ^
"open ftp://%USER%:%PASSWORD%@%HOST% -hostkey=%HOSTKEY%" ^
"put your_file.txt /path/to/remote/dir/" ^
"exit"
endlocal
```
В этом примере:
- Замените `ftp.example.com`, `username`, `password` на ваши данные для подключения к FTP-серверу.
- Замените значение `HOSTKEY` на ваш фактический хост-ключ, который вы получили на первом шаге.
- Путь к файлу WinSCP измените в зависимости от того, где у вас установлена программа.
3. **Запустите BAT-файл.** После выполнения этого бат-файла, WinSCP должен автоматически подключиться к серверу и запустить загрузку файла без необходимости подтверждения хост-ключа.
Таким образом, вы сможете избежать подтверждения сертификата при каждом подключении и автоматизировать процесс загрузки файлов.