SSHキーを設定しようとしていますが、手順が明確ではありません


1

私が見つけたすべてのSSHチュートリアルまたは説明は、2つのコンピュータまたはサーバが関与していることを真ん中に忘れているようです。

リモートサーバーでホストされているWebサイトを作成しようとしています。 Webサイトにアクセスできるようにキーを生成しました。今私は私のコンピュータからウェブサイトにアクセスする必要があります。

だから私はこれらの鍵を持っていて、それらを機能させるためにそれらで何をするべきかわからない。どのチュートリアルや説明でも、自分のコンピュータシステム用のキーを生成し、それらを存在しないファイルに保存する必要があると述べています。それだけでは意味がないだけでなく、その目的のためにすでに生成されているWebサイトへの鍵を使って私のコンピュータからリモートサーバーにアクセスすることには何の関係もないようです。明らかに何らかの情報が失われています。誰かが私がするべきことを説明してもらえますか?

それは単純であるべきであるように思えます、しかしどこに私はどこの鍵を置きますか、そしてどのように私は接続を開始しますか? 私は何年も前からLinuxで端末を使ってきました。あなたは私が私の睡眠中にこれを知っていると思うだろうが、私は知らない。

回答:


1

あなたはいつも ペア キーの数:A 非公開 秘密にしておくべき鍵 パブリック 他の人が見ることを許可されています。

そのため、Webサイトにリモートからアクセスできるようにするためのキーについては、これらのキーによって識別されます。 君は (彼らはあなたのアイデンティティを証明します)。これは秘密鍵がそのまま残るべきであることを意味します きみの 公開鍵は 遠い コンピューター。

具体的には、 id_rsa (プライベート)と id_rsa.pub (パブリック)。キー。両方をそのままに .ssh コンピュータのホームディレクトリにあるディレクトリ(通常は、そのディレクトリにcdした後に作成します)。の id_rsa キーは自動的に ssh あなたのアイデンティティとして、 id_rsa.pub キーは無視されますが、必要な場合はどこにあるかわかります。

リモート側では、 .ssh ログインしたいアカウントのディレクトリ authorized_keys このファイルには、公開鍵のリストが1行に1つずつ含まれています。このファイルは sshd 誰がこのアカウントへの接続を許可されているかを調べるため。

そのファイルを編集してあなたのローカルのコンテンツを追加してください。 id_rsa.pub 改行するか、ファイルが存在しない場合、またはキーを1つだけ含める場合は、ローカルのコピーをコピーします。 id_rsa.pubauthorized_keys

それでおしまい。もちろん、このプロセスを自動化するスクリプトを使用することもできますが、これが結局のところです。


はい、私はウェブサイト設定ページのguiでそれをしました。公開鍵と秘密鍵を入手しました。私が見つけたすべての指示が私のowmコンピュータで生成されたキーから自分のコンピュータにアクセスすることについて話しているので、私はただそれらを使う方法を知りません。
DiesLaughing

その答えは、どのようにしてその鍵を生成したとしても、一対の鍵を使って他のコンピュータにアクセスする方法を説明しています。 id_rsa あなたのコンピュータで、そして公開鍵を authorized_keys 他のコンピュータ上のファイル。あなたは質問でウェブサイトについて言及しませんでした、そして私はあなたの鍵を生成するためにランダムなウェブサイトを使うことをお勧めしません(ウェブサイトを所有する人は誰でもあなたの秘密鍵を知っているので)。このWebサイトがリモートコンピュータを所有している人によって提供されている場合は、自動的に公開鍵が authorized_hosts
dirkt

とにかく、質問がそのウェブサイトに依存するならば、質問に詳細を加えてください。
dirkt

私はとてもばかげていると感じます。私が最初に試したとき、私はそれを正しくしました。それから私は自分自身とそれがうまくいかなかったときに私がmanページを理解していた方法を二次的に推測しました。私は自分のウェブサイトがまだ共有ホスティングにあることを忘れていました。私は専用サーバーに移動する必要がありました、そしてそれはどちらの方向からもうまく働きます。
DiesLaughing

0

デフォルトではあなたのSSHキーはフォルダに保存されます /home/[youruser]/.ssh/。 SSH接続を使用するには、次の方法があります。

ssh [username]@[server] -i ~/.ssh/id_rsa -p [port-number-of-ssh]

使用例 ssh dies@dies.com -i ~/.ssh/id_rsa -p 22

あるいは、キーの検証を無視するためのパラメータを使用して、接続のキーとタイプパスワードを無視することもできます。例を参照してください。

ssh dies@dies.com -o PubkeyAuthentication=no -p 22

幸運を祈ります。


ありがとう。 Home / user / .sshは私が探していたものの大部分でした。
DiesLaughing

0

仮定、serverAとserverBの両方で同じユーザーログイン名。 serverAからserverBにログインします。

serverAで、まだ行っていない場合は、SSH鍵ペアを生成します。

ssh-keygen -t rsa -N ''

serverAで次のコマンドを実行して、serverAからserverBにSSH接続するときにパスワードの入力を求められないように権限を設定します。

ssh-copy-id serverB

パスワードの入力を求められます。

ssh-copy-idコマンドが成功した場合は、パスワードの入力を要求されずにserverAからserverBにsshできることを確認してください。

ssh serverB

あなたがserverBに入ったら、それで終わりです。

お役に立てれば


キーはWebサイトの管理者パネルでグラフィカルインターフェイスによって生成されました。それからそれは私のコンピュータに秘密鍵を保存するように言った。どこでも私はそれ以上の情報を私のコンピューターでキーを生成するように言って探しましたが、私はウェブサーバーがそれらをどのように認識するかを知ることができませんでした。私は、ホストされているWebサイトへのグラフィカルアクセスを制限しているので(サーバーの管理者ではありません)、多分これは私にとってとても混乱しています。そのサーバー上のWebサイト用にインストールしたデータベースへの完全な管理者アクセス権のみがあります。
DiesLaughing

これは私がインターネット上で見ているシナリオを単純化し、便利な端末を持っていてファイルがどこにあるのかを知っているのでウェブホストがそれをすることを期待する方法よりずっと簡単であることを明確にしたかっただけです。リモートサーバー私はその側では完全に制御できません。非常に役立ちます。ありがとう。
DiesLaughing

残念ながら許可は拒否されています。
DiesLaughing
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.