Как может я ssh к удаленному серверу с автоматизированным паролем и никаким ключом?

Вы могли бы думать о полномочиях окон, где все обычно имеют "обходное пересечение, проверяющее" право, которое пропускает регистрации полномочий родительских папок.

Кроме установки 755/751 или размещения файлов в общедоступном каталоге, Вы могли также поместить своего пользователя BDST в hadoop группу и установить hadoop корневой каталог на 750 или 710.

2
31.07.2014, 08:14
3 ответа
[1186090] Первая команда изменит права доступа к любым ранее существовавшим файлам/директориям. Команда [1186513]-d[1186514] во второй команде критична для установки разрешений по умолчанию для любых каталогов, которые, в свою очередь, предоставят набор ACL по умолчанию для любых файлов в этих каталогах.

  1. ПРИМЕЧАНИЕ:[1186516] Что в обоих случаях команды будут выполняться рекурсивно с помощью переключателя [1186517]-R[1186518].
  2. Что касается переключателя [1186519]-d[1186520], то со страницы руководства [1186521]setfacl[1186522]:
  3. Этот отрывок также довольно хорошо объясняет:

Существует два типа ACL: доступ к ACL и ACL по умолчанию. Доступ к ACL - это список контроля доступа к определённому файлу или каталогу. ACL по умолчанию может быть связан только с каталогом; если файл в каталоге не имеет ACL доступа, он использует правила ACL по умолчанию для каталога. ACL по умолчанию являются необязательными.

Источник: [1186970]8.2. Установка ACL доступа[1186971].

Пример

Скажем, у меня есть структура директории.

Теперь давайте установим права доступа, используя первую команду [1186527]setfacl[1186528] в вашем вопросе:

Что приводит к следующему:

Без выполнения команды [1186529]-dR[1186530] здесь новые каталоги не будут покрыты вашими ACL:

Но если мы удалим эту директорию и запустим [1186531]setfacl -dR .... [1186532] и повторим эту операцию выше:

Теперь разрешения выглядят совсем по-другому:

А теперь наш только что созданный каталог получит эти разрешения "по умолчанию":

Имея эти разрешения на [1186533]dir2[1186534], вы можете использовать [1186537]sshpass[1186538], если вы являетесь единственным пользователем вашей системы. Но это определенно очень плохая идея. Каждый может получить ваш пароль, если у него есть доступ в оболочку к вашей машине.

Как только вы не сможете обменяться открытыми ключами. Я предлагаю вам использовать [1186539] ожидайте [1186540]. Вам нужно обезопасить файл [1186541]exp[1186542], содержащий ваш пароль. Он будет храниться на жестком диске, поэтому каждый пользователь, имеющий sudo или root доступ, может взломать его. Но, по крайней мере, это действительно более безопасно, чем [1186543]sshpass[1186544].

- Вот как это сделать

2
27.01.2020, 21:54

EDIT По ссылке, которую я использовал в качестве ссылки, можно найти дополнительные опции. Если установлен [1186549]sshpass[1186550], можно автоматизировать ssh-соединение, чтобы не вводить пароль для каждой машины:

1. Установите

sshpass

Это замечательная маленькая программа, позволяющая передавать пароль [1186553]ssh[1186554] в качестве параметра командной строки. Очевидно, что это не очень безопасное решение, и я настоятельно рекомендую вам прочитать раздел "Вопросы безопасности" в [1186555]man sshpass[1186556]. В любом случае, вероятно, оно доступно в репозиториях вашего дистрибутива, на системах, основанных на Debian, его можно установить с помощью

=IF(I1=1,(IF(A2=A1,1,0)),(IF(A2=A1,0,1)))

. Я не могу проверить, так как у меня нет машины, основанной на RedHat, но, насколько я могу судить по поиску [1186557] здесь [1186558], он должен быть установлен на Fedora с помощью

После его установки можно просто запустить

  • Опция [1186559]-e [1186560] сообщает [1186561]sshpass[1186562], чтобы получить пароль от переменной [1186563]SSHPASS[1186564]. Это немного более безопасно, чем задавать его в качестве параметра с помощью опции [1186565]-p[1186566].
  • ВАЖНО:
  • Это произойдет беззвучно, если сервер, к которому вы подключаетесь, неизвестен, если его открытый ключ не хранится на вашей машине. Если кажется, что это не работает, просто подключите один раз ([1186567]ssh[1186568] или [1186569]scp[1186570]) к удаленному компьютеру и примите его открытый ключ. Скрипт

References

scp для автоматизации scp в сети

3
27.01.2020, 21:54

Как уже описано в других ответах, я также использую sshpass, но я комбинирую его с командой read, чтобы сохранить свой пароль во временной переменной среды. Таким образом, мой пароль нигде не пишется в чистом виде. Вот однострочная команда, которую я использую:

read -s PASS; sshpass -p $PASS ssh <user>@<host adress>

После этого вы должны ввести свой пароль (на экране ничего не появляется )а затем нажатие ввода откроет соединение.

1
27.01.2020, 21:54

Теги

Похожие вопросы