旅行中にホテルからSSHでサーバーに接続するのは本当に安全ですか?


13

旅行中にホテルからSSHを使用してサーバーに接続するのは本当に安全ですか?

サーバー
-CentOS 7
-RSAキーによる認証のみ-パスワード認証が拒否されました
-非標準ポート

ワークステーション
-Ubuntu 14-
ユーザーパスワード
-RSAキーを使用するためのパスワード(標準的な方法)

たぶん、USBスティックに秘密RSAキーの半分を保持し、接続する前に(スクリプトによって)自動的にこの半分を〜/ .ssh / private_keyに追加することをお勧めしますか?

インターネットは、ホテル内のWIFI、または賃貸アパート内のケーブルを介して接続されます。

UPD
最初は不明でした。ここで2つの側面でセキュリティを意味します。

  1. 信頼できないネットワークを介したSSH接続のみのセキュリティ。
  2. SSH接続に必要なキーを使用したコンピューターのセキュリティ-盗難にあった場合、サーバーを保護する方法...

RSAキーの半分は何ですか?sshホストキーの公開部分は?ユーザーsshキーの秘密部分の半分?
-andol

もちろん、私の秘密RSAキーの半分:)そしてサーバーに接続する前にこの半分を〜/ .ssh / private_keyに追加するスクリプトによって自動的に。
セルゲイセロフ

Linuxを実行しているため、ほとんどの人よりもすでに安全です。最新バージョンを実行しているため、より強力な暗号をサポートするOpenSSHの新しいバージョンが必要です。tecmint.com/5-best-practices-to-secure-and-protect-ssh-serverフォローした後、stribika.github.io / 2015/01/04 / secure-secure- shell.html-

3
@chicksは、「Linuxを実行しているため、ほとんどの人よりも安全です」と言うのは愚かなことです。SSHは、Linux、Unix(Mac)、Windowsのいずれで実行されているかにかかわらず、SSHです。そして、最近の歴史におけるLinuxの非常に深刻なセキュリティ上の欠陥の多くを指摘することができました(Heartbleed、誰か?)。言っておくが、実際の質問や問題から注意をそらすので、愚かなOSの炎の戦争を彼らが属するサイドラインに任せましょう。ありがとう!;-)
クレイグ

2
@chicksそれが私が伝えようとしていたことだと思う。すべてのOSで多くのセキュリティ問題が発生しており、Microsoftは数年前に「信頼できるコンピューティング*」イニシアチブを開始して以来、大きな進歩を遂げました。敬意を表して);
クレイグ

回答:


25

したがって、明示的に信頼されていない接続を介してssh接続を確立することについて。

以前の接続から〜/ .ssh / known_hostsエントリがすでにあると仮定すると、はい、ネットワークが安全であるかどうかを心配せずに接続できるはずです。sshホストキーを検証する他の手段がある場合も同じです。

サーバーに一度も接続したことがない場合、またはsshホストキーを確認する他の方法がない場合は、接続に使用するネットワークについてさらに注意する必要があります。


ありがとうございました!!パブリックwi-fiを介してもSSHでサーバーに接続するのは安全ですか?
セルゲイセロフ

7
実は、この答えはに適用されるすべてのリモート・サーバにsshをしたい状況と任意のパスの一部は、新しくインストールしたローカルホストまたはクロスリンクケーブルで離れてのssh-INGから何かので、実質的に(あなたの完全な制御下にありません)
ハーゲンフォンアイゼン

6
クライアントがホストキーを知らない場合、パスワード認証を使用すると完全なMITM攻撃が可能になることに注意してください。ただし、キーベースの認証が使用されている場合、攻撃者はサーバーになりすますことができます。攻撃者は実サーバーに対しても認証できません。その場合、攻撃者が説得力のあるサーバーのなりすましを提供することは困難であるため、手遅れになる前に何かが間違っていることに気付くことができるかもしれません。要するに、公開鍵認証はパスワード認証よりもはるかに安全です
カスペルド

2
@kasperd:接続しているクライアントでエージェント転送が有効になっている場合、公開キー認証でも完全なMITMエクスペリエンスを提供できます。ただし、公開キー認証は、通常のパスワードよりも、いつでも間違いなく望ましいです。
-andol

1
@kasperd:まあ、誰かがエージェント転送を発見しただけで、それを完全に理解していないことを簡単に想像できます。人々はあらゆる種類のクレイジーなことをします:
andol

11

質問の2番目の部分では、ノートブックが盗まれることを心配しているようです。また、パスワードなしでサーバーにSSHでログインするための秘密鍵も盗まれているようです。

これは、「暗号化された」秘密鍵を「パスフレーズ」で保存することで簡単に解決できます(秘密鍵の問題)。最初に暗号化し、ssh-keygenユーティリティで生成しながら、最後にパスフレーズを指定することで生成プロセス、または既に暗号化されていない場合は、ssh-keygenユーティリティと-pオプションを使用します。キーが暗号化されると、ログインするたびに、関連するパスフレーズを入力するように求められます。正しい場合は、すべてが正常に続行されます。

また、sshクライアントを起動するたびにパスフレーズを入力したくない場合は、ssh-agentを使用できます。暗号化されていない秘密鍵をメモリ内で追跡できます。暗号化されたキーを保持するファイルを指すssh-addを実行するだけで、パスフレーズを要求した後、キーはssh-agentによって管理されるセットに追加されます。その後、SSHクライアントがパスフレーズで保護されたキーを要求するたびに、ssh-agentは関連する暗号化されていない秘密キーをsshクライアントに透過的に提供します。したがって、あなたにとっては、インタラクティブに入力する必要はありません。

ssh-agentは多数のキーを管理できることに注意してください。明らかにssh-add、ログイン/起動時にノートブック/デスクトップを「調整」してユーティリティを起動(ssh-agentのキーのセットに追加)できます。

また、誰かがあなたのラップトップを盗む必要があり、あなたの秘密鍵は、おそらくあなたが配るつもりだだけで「機密」コンテンツではありません:ください、ノート、今日のLinuxデスクトップディストリビューションで、それはだと非常に暗号化された「に頼るセットアップノートブックに簡単に"ファイルシステム(/homeスターターとして、ただし/必要に応じて全体)。それで、これも考慮してください。

上記のすべては、明らかに、ないないであなたがいる場合は適用しないでくださいに依存しているあなた自身のノートブック。


PS:異なる媒体上の暗号化されていない秘密キーの両半分を格納するために、あなたの可能性に関しては:私は強くあなたをアドバイスしませ暗号化されていない形式で機密性の高いコンテンツの2枚を維持することが非常にあるように、2つを維持するよりも、はるかに悪い、これを行うために暗号化されたコンテンツ全体の完全なコピー!


5

質問の最初の部分は、以前の回答で既に回答されています。2番目のパートでは、pam_google_authenticatorを使用してsshログインに2番​​目の要素を追加することをお勧めします。それはかなり簡単なセットアップであり、どんなディストリビューションでも設定できます。持ち歩いている秘密鍵が盗まれた場合、google-authenticatorからのTOTPワンタイムパスワードなしではサーバーにログインできません。

https://www.howtoforge.com/tutorial/secure-ssh-with-google-authenticator-on-centos-7

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