1

Как мы знаем, пароль должен быть введен при переключении пользователя [ Имя пользователя: тест, Пароль: тест ]

[user1@hosts ~] $ su test
Password: 
[test@hosts ~]$ 

Теперь я хочу создать скрипт оболочки (пример: login.sh), чтобы переключать пользователя без ввода пароля.

Мой сценарий оболочки:

su - test
test   # The password of user test

Но это все еще требует ввода пароля.

Как сценарий оболочки может принять пароль? Заранее спасибо!!

1 ответ1

1

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

Что использует ssh

Файл псевдонима в user1:

alias tt="ssh test@127.0.0.1"

И присмотритесь к id1rsa.pub пользователя user1, чтобы проверить авторизованные ключи пользователя: user1:

  • user1: создать открытый ключ ssh: rsa_id.pub

    $ ssh-keygen -t rsa

    нажмите да, если спрашиваете ...

  • загрузите открытый ключ пользователя user1 в каталог test (для этого шага необходимо ввести пароль):

    $ scp id_rsa.pub test@127.0.0.1:/home/test

  • добавьте rsa_id.pub в .ssh/authorized_keys

    $ su - тест

    пароль

    $ cd $ cat rsa_id.pub >> .ssh/authorized_keys

    $ chmod 644 .ssh/authorized_keys

Затем переключите пользователя с помощью tt

$ tt
Last login: Mon Jan 28 20:27:34 2013 from localhost
[test@host ~]$

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .