質問: ### 前提・実現したいこと ※IT新人でgitやssh初心者ですお手柔らかにお願いします。 **全体の流れ** リモートリポジトリに(bitbucket)にあるプロジェクトを本番環境に(Pull)デプロイしたいです。 ### 発生している問題・エラーメッセージ 下記のエラーが発生しました Permission denied (publickey). fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists. ### 試したこと ローカル(win)では ユーザ名/.ssh の中に bitbucket というフォルダを作成し、その中に id_rsa id_rsa.pub があり、公開鍵の方はすでにbitbucketに登録してあります。 また ユーザ名/.ssh の階層のconfigファイルには下記を記載し保存しました。 ``` Host bitbucket.org HostName bitbucket.org IdentityFile ~/.ssh/bitbucket/id_rsa ``` 上記を作成後、git pullをローカルで行ったときにPWを求められなくなりました。 これと同様に本番環境にあるプロジェクトにおいて git pull origin maseter をしたときにpwを求められないようにしたい(ssh接続)したいのですが、どのように鍵を作成し、どの階層に配置し、どこにその設定を格納すればよいでしょうか? 本番環境はrootユーザで操作しており、etc/.sshの中にいくつかキーらしき物が格納されており、lsコマンドで確認すると ``` ssh_host_ed25519_key sshd_config . ssh_host_ecdsa_key ssh_host_rsa_key ssh_host_rsa_key.pub ssh_config .. ssh_host_ecdsa_key.pub ssh_host_ed25519_key.pub moduli ``` 上記が入っており、ssh_configにローカルのconfigに書いてあった内容を書くものなのかそこも見当がついていません。ご教授よろしくお願いします。 ### 補足情報(言語/FW/ツール等のバージョンなど) 開発環境:Vagrant + VirtualBox / Homestead 言語:php-7.1.14 (NTS) フレームワーク:Laravel5.5 (LTS) サーバー:nginx DB:MySQL
回答: rootの鍵は、/root/.ssh フォルダに置き、/root/.ssh/config に一般ユーザ同様記載すればよいです。 ただし、/etc/sshd_config でrootによるログインが禁止されている場合があります。