2017-01-20 20 views
0

У меня есть настольное приложение Windows, откуда мне нужно войти в Linux-сервер для доступа к файлу конфигурации с сервера. Жесткое кодирование имени пользователя и пароля Linux в моем коде не будет идеей gud. Таким образом, у меня есть закрытый ключ в моем локальном и добавление одного и того же ключа к авторизованным ключам сервера Linux и предоставление доступа для чтения только к определенному файлу конфигурации для одного пользователя. (без доступа к другим файлам на сервере Linux для этого конкретного пользователя) это будет правильная идея с точки зрения безопасности? .. Или любая идея, как безопасно входить в Linux-сервер из приложения Windows.Наличие сервера Linux с ключом и закрытым ключом ssh. Ppk в настольном приложении Windows для входа в сервер

+0

Ваш вопрос непонятен. Все, что мы знаем в настоящее время, это то, что вы хотите получить доступ к «конфигурационному» файлу в вашем приложении Windows и что это приложение находится на сервере Linux. Является ли этот файл одинаковым для всех пользователей приложения Windows? Является ли этот файл динамическим? Как часто это меняется? Что делает приложение с конфигурационным файлом? Какую информацию он содержит и как приложение использует эту информацию? Существует много способов сделать этот файл доступным, и я не уверен, что ssh лучше, чем сделать доступный файл через http. Вы можете использовать libssh2 для выполнения операций scp ... см. Https://www.libssh2.org/examples/scp.html – gview

ответ

1

scp построен для этого уже как часть ssh.

Winscp - известный бесплатный клиент scp для окон, которые уже имеют функции сценария и автоматизируют передачи.

См https://winscp.net/eng/docs/guide_automation

Так что да, создать пользователя, который имеет доступ к файлу конфигурации.

Создайте пару ключей и добавьте ключ pub в каталог .ssh, который вы создаете в домашнем каталоге пользователя. Перми для каталога и файла должны быть только владельцы.

Как вы упомянули, клавиша pub должна быть переименована в authorized_keys.

Убедитесь, что вы правильно преобразуете ключ в положение os.

Ключи Openssh и putty находятся в разных форматах, но есть инструменты для каждого, которые позволят вам преобразовать один формат в другой.

На вашем компьютере с Windows необходим секретный ключ, а не публичный.

+0

Спасибо за ваше четкое объяснение .. !! Как я сказал, я наткнулся на winscp. Но вот сценарий: я не хочу копировать какой-либо файл, а я должен читать только файл конфигурации с сервера. Таким образом, обработка входа в систему из моего приложения через пару ключей будет правильным решением в отношении проблем безопасности ??? Или это было бы нарушением ..... ??? Пожалуйста, предложите, если у вас есть другие идеи, а также – Vid

+0

Исправил мой вопрос, поскольку вы сказали, что он должен быть закрытым ключом на местном, а не общественном. **** – Vid

+0

Вам необходимо уточнить свой вопрос. – gview