При входе на сервер Win2008SP2 (не R2) через SSH я столкнулся со странной проблемой с правами доступа к каталогам. Когда я открываю локальную оболочку cygwin на сервере, я могу сделать это:
myUser@myServer ~
$ cd /cygdrive/c/Windows/System32/inetsrv/
myUser@myServer /cygdrive/c/Windows/System32/inetsrv
$ cd config
myUser@myServer /cygdrive/c/Windows/System32/inetsrv/config
$
У меня нет проблем с доступом к каталогу config при использовании локальной оболочки cygwin. «myUser» также имеет все необходимые разрешения для доступа к каталогу. Фактически myUser - это локальный администратор на машине.
Вывод списка разрешений для папки config через локальную оболочку cygwin показывает следующий результат:
4 drwx------+ 1 SYSTEM SYSTEM 0 Aug 2 09:38 config
Но когда я вхожу на сервер с помощью SSH-клиента (в данном случае Putty), я сталкиваюсь со следующей проблемой:
myUser@myServer ~
$ cd /cygdrive/c/Windows/System32/inetsrv/
myUser@myServer /cygdrive/c/Windows/System32/inetsrv
$ cd config
-bash: cd: config: Permission denied
Он также не перечисляет надлежащие разрешения через SSH:
0 drwxr-x--- 1 ???????? ???????? 0 Aug 2 09:38 config
Когда я смотрю на запущенные процессы на сервере с помощью диспетчера задач (с подключением к удаленному рабочему столу), он показывает, что все процессы bash.exe выполняются под учетной записью myUser, поэтому я не понимаю, почему я не могу получить доступ этот конкретный каталог через SSH, но у вас нет проблем с доступом к нему в локальной оболочке cygwin.
Я использую OpenSSH 5.9p1-1. Я не уверен, что это за версия Cygwin ... Я использовал последнюю версию setup.exe (версия 2.738) Cygwin, но я не могу найти какой-либо другой номер версии, связанный с Cygwin.
Я сомневаюсь, что это связано с SSH / Cygwin, потому что, когда я подключаюсь с сервера Win2008SP2 к моей локальной машине Win7 через SSH (используя те же версии OpenSSH / Cygwin), я могу получить доступ к / cygdrive / c / Windows / System32 / inetsrv / config без проблем.
Кто-нибудь знает, в чем может быть проблема?
Оказалось, что это связано с тем, что служба ssh на сервере работает как локальный пользователь sshd_server. Несмотря на то, что я вошел в систему с пользователем домена с достаточными привилегиями, доступ к каталогу был заблокирован (по причинам, которые мне не ясны) из-за sshd_user, под которым работала служба.
Решением было запустить службу ssh под учетной записью домена, у которой были достаточные права для доступа к папке, и тогда это сработало. Я не совсем доволен этим решением и хотел бы услышать пари