Я нашел решение expect
ключевое слово с ожидаемым результатом после команды:
start:
send AT+CSQ
expect "OK"
sleep 2
goto start
ChrootDirectory /media/linux/MyHDD/NAS/USERNAME
[...]
sudo chown -R USERNAME:sftp /media/linux/MyHDD/NAS/USERNAME
[...]
sudo chmod -R 777 /media
Функция «ChrootDirectory» требует, чтобы каталог chroot и его родительские каталоги имели определенные права собственности и разрешения:
ChrootDirectory
Specifies the pathname of a directory to chroot(2) to after authentication. At session startup sshd(8) checks that all components of the pathname are root-owned directories which are not writable by any other user or group. After the chroot, sshd(8) changes the working directory to the user's home directory. Arguments to ChrootDirectory accept the tokens described in the TOKENS section.
Есть две проблемы с настройкой каталога chroot:
Во-первых, /media
, /media/linux/MyHDD/NAS/USERNAME
и все промежуточные каталоги не могут быть -или группой -доступными для записи. Они должны быть режима 755, а не 777.
Во-вторых, сам /media/linux/MyHDD/NAS/USERNAME
должен принадлежать пользователю root. Каталоги и файлы внутри него могут принадлежать пользователю, но сам каталог USERNAME
должен принадлежать пользователю root.