намагається авторизуватися автоматично на сервері за допомогою sudo ssh cmd у скрипті [закрито]


-1

Я новачок у сценарії Shell. Я хочу увійти на сервер за допомогою сценарію. Звичайна команда, яку я використовую, - & gt; sudo ssh. коли я спробував покласти це в файл формату txt і спробував запустити, він кидає помилку "не може виконати". Я адміністратор і у мене є кореневий доступ. Будь-яка допомога буде високо оцінений.


Добре, моя робота полягає в тому, щоб увійти до вихідного і цільового серверів. Я хочу написати скрипт, в якому він повинен попросити мене увійти в вихідний сервер після того, як я введу, що він повинен увійти в цей сервер. Те ж саме до сервера призначення.
tom1989

Відповіді:


1

Додайте це до верхньої частини файлу, щоб оболонка знала, який інтерпретатор використовувати.

#! /bin/sh

Також переконайтеся, що файл виконується:

chmod +x yourScript

Також немає необхідності в sudo з ssh. Використовуйте лише ssh

ssh user@machine

Якщо потрібно передати пароль, я рекомендую sshpass

apt-get install sshpass
sshpass -p<password> ssh user@machine

коли я спробував з ssh user @ машиною він просить пароль, то я sudo також, але не пощастило. Я думаю, я повинен запустити цю команду, як корінь. Порадьте, будь ласка.
tom1989

0

Створіть пару ключів з ssh-keygen.Щоб встановити довіру між двома користувачами на двох машинах, потрібно додати вміст ~ / .ssh / id_rsa.pub на вашу машину в ~ / .ssh / authorized_keys на дистанційному комп'ютері та chmod це лише користувач. Тепер ви маєте можливість ввійти без пароля.

Потім, щоб використовувати sudo віддалено, потрібно налаштувати щось інше у файлі sudoers на цій машині з visudo:

За замовчуванням: user! Requiretty

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.