
・Proxmox9.0のインストール後のSSH公開鍵認証への変更とパスワード認証の無効化ついて知りたい。
・具体的な手順を分かりやすく教えてほしい。
こういった疑問に答えます。
本記事の内容
- Proxmox9.0のSSH公開鍵認証に変更しパスワード認証の無効化

この記事を書いている私は、某SIerに勤務しながら、
WEB系エンジニア・インフラエンジニアに憧れて、プログラミングおよびインフラ技術の勉強をしています。
こういった私が、解説していきます。
私が実機で試したコマンドや画像を載せて書いています。
記事の信頼性担保に繋がると思います。
Proxmox9.0の初期設定(その3)SSH公開鍵認証に変更しパスワード認証の無効化
ホストOS側の設定ファイルの変更
/etc/ssh/sshd_config
# Authentication: #LoginGraceTime 2m PermitRootLogin yes #StrictModes yes #MaxAuthTries 6 #MaxSessions 10 PubkeyAuthentication yes ←★★★コメント解除して有効化
設定変更後のSSHの再起動
/etc/init.d/ssh restart
root@a-prxmx01:~# /etc/init.d/ssh restart Restarting ssh (via systemctl): ssh.service.
公開鍵ファイルをホストOSへ配置
/home/ユーザー名/.ssh

TeraTermのSSH SCP機能を使って公開鍵ファイルをアップロード


chmod 700 /home/ユーザー名/.ssh
chmod 600 /home/ユーザー名/.ssh/authorized_keys
TeraTermで接続テスト

従来のパスワード認証を無効化する
必ず、公開鍵認証の接続テストでOKになってから、従来のパスワード認証を無効化してください。
そうでないと、リモートでログインができなくなってしまい、
物理マシンに直接アクセスしたり、
Proxmoxのコンソール画面から直接操作するか、が必要になってしまいます。
そうでないと、リモートでログインができなくなってしまい、
物理マシンに直接アクセスしたり、
Proxmoxのコンソール画面から直接操作するか、が必要になってしまいます。
/etc/ssh/sshd_config
# To disable tunneled clear text passwords, change to "no" here! #PasswordAuthentication yes PasswordAuthentication no ←★★★noに変更 #PermitEmptyPasswords no
# Authentication: #LoginGraceTime 2m #PermitRootLogin yes PermitRootLogin forced-commands-only ←★★★rootユーザーの直接ログインを拒否 #StrictModes yes #MaxAuthTries 6 #MaxSessions 10
設定変更後のSSHの再起動
/etc/init.d/ssh restart
root@a-prxmx01:~# /etc/init.d/ssh restart Restarting ssh (via systemctl): ssh.service.
WinSCPの設定変更

SFTPサーバの設定も追加

sftpサーバ利用時はsudo時にパスワード不要に変更。
/etc/sudoers
# See sudoers(5) for more information on "@include" directives:
@includedir /etc/sudoers.d
satonaka ALL=(ALL:ALL) ALL
satonaka ALL=(ALL:ALL) NOPASSWD: /usr/lib/openssh/sftp-server ←★★★追加