Я пытаюсь настроить git на Synology NAS через ssh. Я создал пользователя git, установил аутентификацию по секретному ключу и установил пакет git. Я могу успешно войти в систему, используя закрытые ключи, и сделать так, чтобы git in /opt /bin работал локально (на NAS).
Чтобы это работало, я изменил /etc /ssh /sshd_config, чтобы иметь:
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
PermitUserEnvironment yes
Но я все еще не могу заставить его работать удаленно.
Кажется, проблема в пути, используемом ssh, когда я выполняю удаленные команды. Я могу подтвердить это, потому что, когда я делаю
ssh gitowner@nas.home echo \$PATH
я получил
/usr/bin:/bin:/usr/sbin:/sbin:/usr/syno/bin
который отличается от интерактивной оболочки, которая дает мне:
PATH='/opt/bin:/opt/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/syno/bin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/syno/bin:/usr/syno/sbin:/usr/local/bin:/usr/local/sbin'
Я создал .ssh/environment со следующим содержанием
PATH='/opt/bin:/opt/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/syno/bin:/usr/syno/sbin:/usr/local/bin:/usr/local/sbin'
но это все еще не решает проблему. Похоже, его содержимое не читается.
Я попытался с разрешениями файла среды, установленными в -rw ------- и -rw-r - r--, но также безрезультатно.
Что еще мне может не хватать sshd(?) в конфигурации, которая мешает ему читать пользовательскую среду?