Linux

如何在 Centos QCOW2 Image 中使用 SSH 啟用基於密碼的身份驗證?

  • January 14, 2021

我需要在私有伺服器(一種裸機伺服器)上部署 CentOs 雲映像。因此,我下載了 CentOS 雲映像,並通過執行以下命令virt-customize啟用 SSH 並使用密碼驗證對其進行自定義。build_script.sh

distro=$1
config_dir=$2
if [[ -z $distro ]]; then
 echo "USAGE: $0 image_path config_dir"
 exit 0
fi
if [[ -z $config_dir ]]; then
 echo "USAGE: $0 image_path config_dir"
 exit 0
fi
sudo virt-customize --install openssh-server -a $distro
sudo virt-customize --install openssh-clients -a $distro 
sudo virt-customize --run-command 'systemctl enable sshd' -a $distro 
sudo virt-customize --mkdir /var/ssh/ -a $distro
sudo virt-customize --copy-in $config_dir/sshd_config:/etc/ssh/ -a $distro
sudo virt-customize --run-command 'systemctl start sshd' -a $distro 

看起來sshd_config

ClientAliveInterval 360
ClientAliveCountMax 0
PermitEmptyPasswords no
PermitRootLogin no
PasswordAuthentication yes

在部署和啟動之前,我已經手動驗證了sshd_config 這些值,但是,當它啟動時,配置更改PasswordAuthenticatin yesPasswordAuthentication no. 是什麼改變了這一點,我無法調試。提前感謝您的幫助。

要允許使用 ssh 進行控制台連接(無需密碼登錄),您需要添加以下命令。您的問題將得到解決。

virt-customize -a /img/$VM_NAME.qcow2  --run-command 'echo PermitRootLogin yes >> /etc/ssh/sshd_config'

引用自:https://serverfault.com/questions/1011338