Ubuntu verwendet Ansible zur Steuerung des Servers: Lösung für SSH- und Sudo-Berechtigungsprobleme

Host-Umgebung: Ubuntu 20.04.5 LTS, Ansible 2.13.8

1. ssh Remote-Anmeldung nicht möglich (basierend auf SSH-Schlüsselverbindung)

Fehler:Daten konnten nicht an den Remote-Host „172.xxx.xxx.xxx“ gesendet werden. Stellen Sie sicher, dass dieser Host über ssh erreichbar ist: ssh: connect to host 172.xxx.xxx.xxx port 22: Connection timed out
Analyse: Die kontrollierte Maschine (Server) vertraut möglicherweise nicht dem öffentlichen Schlüssel der steuernden Maschine (Ubuntu)
Lösung:

代码片的命令Gleichmäßig verteilter Rückhalteschreibtisch (ubuntu) Oberhalb der Linie.

# 生成ssh key,一路回车,默认生成在/user/.ssh目录下id_rsa和id_rsa.pub
ssh-keygen

# 将公钥拷贝到被控机 (服务器)
# user 在 sudo 组内,否则,user 变为 root(user为对应服务器的用户名)
ssh-copy-id user@172.xxx.xxx.xxx

# 执行以上语句,并输入密码,会在被控机(服务器)生成一个文件/user/.ssh/authorized_keys
# 之后再连接被控机(服务器)就不需要密码了

Zweitenssudo 权limit问题

Hinweis:Sudo-Passwort fehlt
Analyse: Wenn ein Benutzer den Superbefehl sudo verwendet, wird er oder sie nach einem Passwort gefragt. Zu diesem Zeitpunkt muss vermieden werden, nach einem Passwort zu fragen.
Lösung:

代码片的命令Alle werden auf der gesteuerten Maschine (Server) ausgeführt.

# 在被控机目录 /etc/sudoers.d 目录上新建一个名为 user 的文件
# user为对应服务器的用户名
cd /etc/sudoers.d
sudo vim user

# 如遇到权限问题进入不了目录则换为 root 用户并执行上边两条命令
su

# 创建完 user 文件 进入 vim 界面,输入以下内容
# user为对应服务器的用户名
user ALL=(ALL) NOPASSWD:ALL

# 保存文件内容退出文件,大功告成!

Weitere Informationen:
https://cloud.tencent.com/developer/article/1685073
https://stackoverflow.com/questions /25582740/missing-sudo-password-in-ansible

おすすめ

転載: blog.csdn.net/Double_Horse/article/details/131021023