回答編集履歴
1
改行位置を変更
answer
CHANGED
@@ -1,14 +1,8 @@
|
|
1
1
|
[ssh2_auth_pubkey_file()](http://php.net/manual/ja/function.ssh2-auth-pubkey-file.php) なんて関数があるんですね。初めて知りました。
|
2
|
-
しくみがわからないのでソースを見てみたら、結局 [libssh2_userauth_publickey_fromfile_ex()](https://www.libssh2.org/libssh2_userauth_publickey_fromfile_ex.html)
|
2
|
+
しくみがわからないのでソースを見てみたら、結局 [libssh2_userauth_publickey_fromfile_ex()](https://www.libssh2.org/libssh2_userauth_publickey_fromfile_ex.html)という関数を呼んでいるだけのようです。この関数には公開鍵が必須です。
|
3
|
-
という関数を呼んでいるだけのようです。この関数には公開鍵が必須です。
|
4
3
|
|
5
|
-
一方、上記のページには libssh2_ で始まる関数が山のようにあって、その中には公開鍵
|
6
|
-
がなくても認証できそうなものもあります。私も詳しくないので想像ですが、公開鍵まで
|
7
|
-
指定して認証する方法だと、相手側の fingerprint(?)まで検証できるので警告を出さなくて済む。
|
4
|
+
一方、上記のページには libssh2_ で始まる関数が山のようにあって、その中には公開鍵がなくても認証できそうなものもあります。私も詳しくないので想像ですが、公開鍵まで指定して認証する方法だと、相手側の fingerprint(?)まで検証できるので警告を出さなくて済む。
|
8
5
|
|
9
|
-
一方、いわゆる ssh クライアントから接続する場合、公開鍵の指定がないので、接続先が
|
10
|
-
初めて接続するサーバーの場合 fingerprint が表示されて、接続の可否が人間に委ねられる。
|
6
|
+
一方、いわゆる ssh クライアントから接続する場合、公開鍵の指定がないので、接続先が初めて接続するサーバーの場合 fingerprint が表示されて、接続の可否が人間に委ねられる。
|
11
7
|
|
12
|
-
ソフトウェアの中で接続する場合、そういうことができないケースがある(たとえば
|
13
|
-
Web アプリであれば、利用者と会話するための tty がないとか)なので、より厳密な
|
14
|
-
公開鍵が必要な API を利用して、確実に接続できるようにしているのではないでしょうか。
|
8
|
+
ソフトウェアの中で接続する場合、そういうことができないケースがある(たとえばWeb アプリであれば、利用者と会話するための tty がないとか)なので、より厳密な公開鍵が必要な API を利用して、確実に接続できるようにしているのではないでしょうか。
|