質問: Pythonプロフェッショナルプログラミング(第2版)を参考に、サービスのデプロイをしようとしています。 サーバーはさくらVPSを借りています。 さくらVPSには、Ubuntu14.04をインストールしました。 上記の本の中で、ユーザーの設定をするという箇所があります。 構築やメンテナンスログイン用のユーザーとしてmainteユーザーを、アプリケーション実行専用の直接ログインできないユーザーとしてwwwを作成すると書いてあったので、 ``` useradd -m mainte userad -m www ``` を作りました。 mainteユーザーにはsudo権限を設定し、後の自動化のことを考慮して、パスワードなしでsudoできるようにしました。 具体的には、/etc/sudoers.d/に設定ファイルをおいて、 ``` %mainte ALL=(ALL) NOPASSWD:ALL ``` としました。 その上で、mainteは今後メンテナンスユーザーとして利用していくため、外部からログインできる必要があるので、ssh-keygenで鍵ファイルを作成しました。 ``` sudo su - mainte ssh-keygen -b 2048 ``` これで、/home/mainte/.ssh/に、id_rsaとid_rsa.pubの2つのファイルが生成されました。 この2つのファイルをローカルPCにダウンロードしなければならないのですが、その方法が分かりません。 お分かりの方、ご教示頂ければ幸いです。 よろしくお願いします。
回答: sshクライアント側に秘密鍵、サーバー側に公開鍵を置きます。 なので、普通は、クライアントで鍵ペアを生成して、公開鍵をサーバー側に送ります(移送を安全でない方法で行う場合に漏れても大丈夫なように)。 サーバー側で鍵生成を行う理由は何でしょうか?クライアントでの鍵生成方法が分からないなら調べるべきでしょう。 鍵の初回の移送は、パスワードでのsshログインができるのであれば、scpでコピーでしょうか。 あるいは、sshログインできない状態で、VPS管理画面で作業中なら、クリップボード経由でコピペで移送するのかと思います(コピペが出来ない場合は見ながら打ち込むのでしょうかね)。 > > この2つのファイルをローカルPCにダウンロードしなければならないのですが、 > > > 上に書いた通り、サーバーで鍵生成した後にダウンロードする必要があるのは秘密鍵だけです。