インスタンスにSSH接続できない-操作がタイムアウトしました。理由は何ですか?それを解決するにはどうすればよいですか?通常、再起動すると効果が出るまでに時間がかかり、最悪の場合、
更新:それは許可についてではありません-私は通常うまくログインできます。メモリの問題が原因の可能性があります
インスタンスにSSH接続できない-操作がタイムアウトしました。理由は何ですか?それを解決するにはどうすればよいですか?通常、再起動すると効果が出るまでに時間がかかり、最悪の場合、
更新:それは許可についてではありません-私は通常うまくログインできます。メモリの問題が原因の可能性があります
回答:
インスタンスに適切なセキュリティグループを設定しましたか?つまり、ネットワークからインスタンスのポート22へのアクセスを許可するものです。(デフォルトでは、すべてのトラフィックが許可されていません。)
更新:OK、セキュリティグループの問題ではありません。しかし、同じAMIから別のインスタンスを起動してそれにアクセスしようとすると、問題は解決しませんか?たぶん、この特定のEC2インスタンスが何らかの方法でランダムに失敗しただけかもしれません。そのようなことが発生するのは時間の問題です。(推奨記事:Architecting for the Cloud:Best Practices(PDF)、ホワイトペーパー、AmazonのWebサービスエバンジェリスト、Jinesh Varia
ec2-authorize
、あなたが簡単にグループを設定するElasticfox Firefoxの拡張機能を使用することができます。)
同じ問題があり、解決策はローカルコンピューターのIPをアクティブなセキュリティグループのインバウンドルールのリストに追加することでした。下の受信ダイアログで、ポート範囲に22を入力し、ソースフィールドにローカルIP / 32を入力して、ドロップダウンに「カスタムTCPルール」を残します。
接続できるアベイラビリティゾーンと接続できないアベイラビリティゾーンが1つありました。数時間後、私はとても苛立たしくなり、そのアベイラビリティーゾーンのすべてを削除しました。
すべてを構築するために、すべてを確実に作成する必要がありました。これには以下が含まれます:
CIDR: 10.0.0.0/24
Destination: 0.0.0.0/0
Target: <Internet Gateway from earlier>
CIDR: 10.0.0.0/24
Routing Table: <Routing Table from earlier
これをすべて手に入れるには、かなりの手間がかかりました。最も効率的と思われる方法で手順を注文しましたが、次の項目で使用できるようにするには、手順を調整する必要がある場合があります。
私がそうだったようにあなたが熱核に行くことを私は示唆していません。これらの関連付けをチェックして、自分の関連付けが適切であることを確認できるように、これらすべての情報を提供します。
この答えは愚かな人々(私のような)のためのものです。EC2のパブリックDNSは、再起動すると変更される可能性があります。これに気づかず、古いパブリックDNSにSSHで接続しようとすると、接続が停止してタイムアウトになります。これにより、EC2またはセキュリティグループに問題があると思われる可能性があります。いいえ、新しいDNSにSSHで接続するだけです。そして、~/.ssh/config
必要に応じてファイルを更新してください!
接続するには、次のようにsshを使用します。
ssh -i keyname.pem username@xxx.xx.xxx.xx
どこにkeyname.pem
あなたの秘密鍵の名前で、username
お使いのOSのディストリビューションのための正しいユーザ名で、xxx.xx.xxx.xx
パブリックIPアドレスです。
タイムアウトまたは失敗した場合は、以下を確認してください。
TCPポート22とすべてのIPまたはIPの受信ルールがあることを確認してください。ec2メニューのインスタンスオプションでセキュリティグループを見つけることができます。
vpcの新しいサブネットの場合、0.0.0.0 / 0がインターネットゲートウェイターゲットを指すルーティングテーブルに変更する必要があります。vpcにサブネットを作成すると、デフォルトでデフォルトのルーティングテーブルが割り当てられます。これはおそらくインターネットからの着信トラフィックを受け入れません。vpcメニューでルーティングテーブルオプションを編集してから、サブネットを編集できます。
vpcのインスタンスの場合、パブリックElastic IPアドレスを割り当て、それをインスタンスに関連付ける必要があります。外部からプライベートIPアドレスにアクセスすることはできません。ec2メニューでエラスティックIPを取得できます(インスタンスメニューではありません)。
正しいユーザー名を使用していることを確認してください。ec2-user
or root
またはor のいずれかである必要がありubuntu
ます。必要に応じてすべて試してください。
正しい秘密鍵(インスタンスを起動するときにダウンロードまたは選択したもの)を使用していることを確認してください。当たり前のようですが、コピーと貼り付けで2回取得しました。
インスタンスからのコンソール出力を見ましたか?これは、AWSコンソールから実行できます(インスタンス->インスタンスを右クリック->システムログの取得)。EC2インスタンスのネットワークサービスが正常に開始できず、SSH接続がタイムアウトする場合がありました。インスタンスを再起動すると、通常は修正されます。
私がこれを見つけた2時間後
そのssh ip 120.138.105.251/32
AWSインスタンスのIPアドレスではありません
それはあなたのローカルIPではありません 127.0.0.1
それはあなたのローカルIPではありません localhost
しかし、しかし、しかし
そのあなたのあなたのパブリックIPアドレスパソコンあなたがアクセスAWSインスタンスにしようと、そこからは、
考えられる問題は次のとおりです。
最も可能性が高いのは、セキュリティグループがポート22でipへのSSHアクセスを提供するように適切に構成されていないことです。セキュリティ設定の変更では、サーバーを再起動する必要はありません。該当します。
ローカルファイアウォールの設定では、サーバーへのSSHアクセスは許可されていません。(別のインターネット接続を試すことができます。電話/ドングルで試すことができます)
サーバーが正しく起動されていません(その場合、Amazonコンソールでもアクセスチェックは失敗します)。この場合、サーバーを停止して起動する必要があります。
AWS docsでこのヘルプページをチェックしてください:
http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/TroubleshootingInstancesConnecting.html#TroubleshootingInstancesConnectionTimeout おそらくそこに解決策があります。私にとってこの部分は修正を行いました:
【EC2-VPC】サブネットのルートテーブルを確認してください。VPCの外部に向かうすべてのトラフィックをVPCのインターネットゲートウェイに送信するルートが必要です。
https://console.aws.amazon.com/vpc/にあるAmazon VPCコンソールを開きます。
ナビゲーションペインで、[インターネットゲートウェイ]を選択します。VPCにインターネットゲートウェイが接続されていることを確認します。それ以外の場合は、[インターネットゲートウェイの作成]を選択し、指示に従ってインターネットゲートウェイを作成し、インターネットゲートウェイを選択して、[VPCにアタッチ]を選択し、指示に従ってVPCにアタッチします。
ナビゲーションペインで、[サブネット]を選択してから、サブネットを選択します。
(ルートテーブル)タブで、宛先として0.0.0.0/0を使用し、ターゲットとしてVPCのインターネットゲートウェイを使用したルートがあることを確認します。それ以外の場合は、ルートテーブルのID(rtb-xxxxxxxx)を選択してルートテーブルの[ルート]タブに移動し、[編集]を選択して、別のルートを追加し、[宛先]に0.0.0.0/0と入力し、[ターゲット]からインターネットゲートウェイを選択して、保存を選択します。
しかし、上記のリンクがカバーするすべてのオプションをチェックすることをお勧めします。そこに、1つまたは複数の問題が見つかるかもしれません。
オフビル@ted.strauss
の答えを、あなたが選択することができますSSH
し、MyIP
代わりにサードパーティのサイトに移動するのドロップダウンメニューから。
ufwからのsshとポート22を許可し、それを有効にしてstatusコマンドで確認します
sudo ufw allow ssh
sudo ufw allow 22
sudo ufw enable
sudo ufw status
EC2インスタンスでSSHアクセスが機能しない場合は、以下を確認する必要があります。
VPCインスタンスを使用している場合(インスタンスにVPC IDとサブネットIDがアタッチされている場合)、以下を確認します。
0.0.0.0/0
宛先として、インターネットゲートウェイをターゲットとして持つ必要がある、添付されたルートテーブルを確認します。Linuxでは、インスタンスのネットワークのシステムログでルート情報を確認することもできます。例:
++++++++++++++++++++++++++++++++++++++Net device info+++++++++++++++++++++++++++++++++++++++
+--------+------+------------------------------+---------------+-------+-------------------+
| Device | Up | Address | Mask | Scope | Hw-Address |
+--------+------+------------------------------+---------------+-------+-------------------+
| lo | True | 127.0.0.1 | 255.0.0.0 | . | . |
| eth0 | True | 172.30.2.226 | 255.255.255.0 | . | 0a:70:f3:2f:82:23 |
+--------+------+------------------------------+---------------+-------+-------------------+
++++++++++++++++++++++++++++Route IPv4 info+++++++++++++++++++++++++++++
+-------+-------------+------------+---------------+-----------+-------+
| Route | Destination | Gateway | Genmask | Interface | Flags |
+-------+-------------+------------+---------------+-----------+-------+
| 0 | 0.0.0.0 | 172.30.2.1 | 0.0.0.0 | eth0 | UG |
| 1 | 10.0.3.0 | 0.0.0.0 | 255.255.255.0 | lxcbr0 | U |
| 2 | 172.30.2.0 | 0.0.0.0 | 255.255.255.0 | eth0 | U |
+-------+-------------+------------+---------------+-----------+-------+
どこ UG
あなたのインターネットゲートウェイを示すフラグ。
詳細については、Amazonドキュメントでインスタンスへの接続のトラブルシューティングを確認してください。
VPCサブネット内のインスタンスに対してインターネットからのsshアクセスを有効にするには、次のようにします。
インスタンスで作業していたところ、問題はありませんでした。翌日、インスタンスにSSHで接続しようとしたとき、接続タイムアウトと表示されました。
私はこの投稿を試してみましたが、何もうまくいきませんでした。だから私はしました-
上のEdit inbound rules
選択ソース列からMY IP
、それは自動的に(CIDR形式で公開IPアドレスを移入しますXXX.XXX.XXX.XX/32
)。
ローカルIPを指定して@ ted.straussの答えを試しましたが、私の場合は役に立ちませんでした。だから私はMY IPを選択し、それはうまくいきました。
これが誰かを助けることを願っています!