在 GCP 上附加新的 /home 分区时,sshd 不会获取授权密钥文件

在 GCP 上附加新的 /home 分区时,sshd 不会获取授权密钥文件

我需要在 GCP 上创建一台 RHEL 机器,并为 /home、/tmp 和 /var 设置单独的分区。如果我在物理机器上安装,我会在安装操作系统时简单地对磁盘进行分区,但我似乎无法在 GCP 虚拟机上解决这个问题。我:

  • 通过选择现有 RHEL VM 并使用“创建类似”功能在 GCP 上实例化了新的 RHEL VM
  • 使用以下方式在 GCP 上创建新磁盘gcloud compute disks create acas-home --size 200 --type pd-ssd
  • 将其连接到我的虚拟机gcloud compute instances attach-disk <my-vm-name> --disk acas-home
  • 格式化sudo mkfs.ext4 -m 0 -E lazy_itable_init=0,lazy_journal_init=0,discard /dev/sdb
  • 将新分区挂载到临时文件夹中,然后将原始 .ssh 文件夹复制到其中,以导入 authorized_keys 文件
  • 使用以下行将新磁盘添加到 /etc/fstabUUID=<MY_UUID_VALUE> /home ext4 discard,defaults,nofail 0 2
  • 使用以下方式安装磁盘sudo mount -a
  • 重新启动 sshdsudo systemctl restart sshd.service

此后,我无法通过 ssh 进入服务器。我尝试删除 authorized_keys 文件并创建一个新文件,但无济于事。我还尝试将另一个授权密钥文件添加到 sshd_config 并填充它,使用以下行,但它也无法获取它:

AuthorizedKeysFile  .ssh/authorized_keys /etc/ssh/authorized_keys 

我究竟做错了什么?

答案1

您能否尝试以下操作官方文档并通过 gcloud 建立连接:

gcloud compute ssh --project=PROJECT_ID --zone=ZONE VM_NAME

您可以在官方文档中找到有关如何排查 GCP 中的 SSH 问题

答案2

您可能忘记恢复新创建的分区的 SELinux 上下文。

restorecon -rv /home

相关内容