Отказано в доступе к серверу cvs через ssh - PullRequest
2 голосов
/ 28 декабря 2010

Я не могу создать новый проект, импортировав java-проект через eclipse на мой cvs-сервер через Интернет.

Я создал каталог с именем root с именем / priv / cvs /.Затем я назвал "cvs -d / priv / cvs / init".Я создал пользователя с именем cvs и группы с именем cvs.Хранилище принадлежит cvs и группе cvs.

Затем я создал пользователя "ben", и его единственная группа - cvs.Я «привязал» пользователя «ben» к доступу только к функциональности cvs, не разрешая доступ к серверу через ssh с паролем, только с помощью открытого ключа, который добавлен в его домашнюю директорию на сервере в файле authorized_keys2.

контекст авторизованных ключей2 выглядит следующим образом:

no-port-forwarding,no-X11-forwarding,command="/usr/bin/cvs server" ssh-rsa [public_key_content] rsa-key

Подключение к серверу работает довольно хорошо.Eclipse запрашивает парольную фразу для закрытого ключа для подключения к серверу.Аутентификация работает, и eclipse может запускать команды cvs.

Но при импорте моего проекта с помощью Team-> Share Project.Я получаю сообщение об ошибке:

The server reported an error: Permission denied
projectname: cvs server: cannot open /priv/cvs/CVSROOT/config: Permission denied
projectname: Cannot access /priv/cvs/CVSROOT

Право доступа для корня cvs (/ priv / cvs /) установлено на 770. Это означает, что владелец, который является cvs, и участники группы в группе cvsразрешено чтение и запись.

Почему я получаю разрешение отказано?

Когда я устанавливаю папку на 777, что означает чтение / запись на ВСЕ, тогда это работает.Но я не хочу этого.Я хочу, чтобы пользователи cvs могли читать / писать в эту папку?Есть ли что-то, что я неправильно понял в правилах доступа?

Одна вещь, которую я забыл: все файлы и каталог в / priv / cvs chmodded для cvs: cvs и все папки в / priv / cvs / были chmodded для 775 (читать все, писать владельцем / группой).

1 Ответ

2 голосов
/ 28 декабря 2010

Eclipse, вероятно, использует непривилегированного пользователя для доступа к серверу.Проверьте журналы сервера на наличие неудачных попыток доступа и используйте представление CVS Repository в Eclipse, чтобы определить доступ к хранилищу.

Team / Share - неправильный способ сделать начальную проверку из CVS в Eclipse;он предназначен для Eclipse для получения информации CVS из существующих / рабочих каталогов проекта.

...