我创建了一个ansible代码来创建用户并添加各自的ssh密钥,这些密钥可以成功运行。但是,当尝试访问服务器时,它会要求输入密码。
服务器为127.0.0.1 or localhost
Ansible脚本
tasks:
- include_vars: users.yml
- name: Create user
user:
name: "{{item.username}}"
with_items: "{{ users }}"
- name: Adding SSH key
authorized_key:
user: "{{ item.username }}"
key: "{{ lookup ('file', 'keys/'+ item.username + '.key.pub') }}"
with_items: "{{ users }}"
我试图通过三种方式进行连接:
1. ssh user@localhost - Asking for password
2. ssh -vvv user@localhost - Asking for password
3. ssh-copy-id user@localhost - Asking for password
如果我在设置时进入ssh配置文件,将密码标志设置为no而不是运行anisble脚本,那么下一步将给出权限问题,这是有效的情况,因为该时间用户的公共密钥将不会被配置。
我正在寻找的解决方案是,一旦通过ansible脚本为用户设置了ssh密钥,他就必须能够使用ssh密钥无密码登录。
NOTE :- The server is localhost/127.0.01 not any remote server ( I am learning so not using remote server)