CentOS7からUbuntu22.04へGitlabを移行したときにSSHでの接続の違いに関して詰まったのが以下の2つの部分でした。
SSHで有効な鍵がRSAではなくなっている
公式的には ED25519
などを使うことを推奨しているため、以下の方法で鍵を作成してそちらを投入する方法。
$ ssh-keygen -t ed25519
今まで設定してきているRSA鍵をどうしても使いたい場合はこちらの設定を /etc/ssh/sshd_config
に追記してsshを再起動する方法を行う。
/etc/ssh/sshd_config
PubkeyAcceptedAlgorithms=+ssh-rsa
今後のセキュリティ上の問題としてRSAを許可することはお勧めされないと思われる。
GITユーザのログインが制限されている
auth.log
にて以下のようなエラーが発生している場合には
auth.log
User git not allowed because account is locked
git
ユーザのログインが制限されているため、以下のような作業を行う。
- パスワードを設定する
# usermod -p '*' git
- gitのSSHログインを制限するために
/etc/ssh/sshd_config
に以下の設定を追記する
/etc/ssh/sshd_config
Match User git
PasswordAuthentication no