내 인스턴스에 SSH를 사용할 수 없습니다. 작업 시간이 초과되었습니다. 그 이유는 무엇이며 해결하려면 어떻게해야합니까? 재부팅은 일반적으로 적용하는 데 오랜 시간이 걸리며 상황을 악화시킬 수 있습니다.
업데이트 : 권한에 관한 것이 아닙니다. 정상적으로 로그인 할 수 있습니다. 기억력 문제 때문인 것 같습니다
답변
인스턴스에 적절한 보안 그룹을 설정 했습니까? 즉, 네트워크에서 인스턴스의 포트 22 로의 액세스를 허용하는 것입니다. (기본적으로 모든 트래픽이 허용되지 않습니다.)
업데이트 : 보안 그룹 문제가 아닙니다. 그러나 동일한 AMI에서 다른 인스턴스를 시작하고 이에 액세스하려고하면 문제가 지속됩니까? 이 특정 EC2 인스턴스가 어떤 식 으로든 무작위로 실패했을 수 있습니다. 그런 일이 발생하는 것은 시간 문제 일뿐입니다. (권장 자료 : Architecting for the Cloud : Best Practices (PDF), Amazon의 웹 서비스 전도사 인 Jinesh Varia의 논문. 특히 “Design for failure and nothing will fail”섹션을 참조하십시오.)
답변
나는 같은 문제가 있었고 해결책은 내 로컬 컴퓨터의 IP를 활성 보안 그룹의 인바운드 규칙 목록에 추가하는 것이 었습니다. 아래 인바운드 대화 상자에서 포트 범위에 22를 입력 하고 소스 필드에 로컬 IP / 32를 입력하고 드롭 다운에 ‘custom tcp rule’을 남겨 둡니다.
답변
파괴하고 새로 만들기
연결할 수있는 가용성 영역과 연결할 수없는 영역이 있습니다. 몇 시간 후 너무 답답해서 해당 가용성 영역의 모든 항목을 삭제했습니다.
모든 것을 다시 구축하기 위해 모든 것을 만들어야했습니다. 여기에는 다음이 포함됩니다.
- VPC 생성
CIDR: 10.0.0.0/24
- 인터넷 게이트웨이 생성
- 인터넷 게이트웨이 를 VPC에 연결
- 라우팅 테이블 생성
- 추가 항로 에 라우팅 테이블
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이 인터넷 게이트웨이 target 을 가리키는 라우팅 테이블로 변경해야합니다 . vpc에서 서브넷을 만들 때 기본적으로 인터넷에서 들어오는 트래픽을 허용하지 않는 기본 라우팅 테이블을 할당합니다. vpc 메뉴에서 라우팅 테이블 옵션을 편집 한 다음 서브넷을 편집 할 수 있습니다.
탄력적 IP
vpc의 인스턴스의 경우 퍼블릭 탄력적 IP 주소 를 할당하고 이를 인스턴스와 연결해야합니다. 사설 IP 주소는 외부에서 접근 할 수 없습니다. ec2 메뉴 (인스턴스 메뉴 아님)에서 탄력적 IP를 얻을 수 있습니다.
사용자 이름
올바른 사용자 이름을 사용하고 있는지 확인하세요 . ec2-user
또는 root
또는 중 하나 여야합니다 ubuntu
. 필요한 경우 모두 시도해보십시오.
개인 키
올바른 프라이빗 키 (인스턴스를 시작할 때 다운로드하거나 선택하는 키)를 사용하고 있는지 확인합니다 . 당연한 것 같지만 복사 붙여 넣기가 두 번 나왔습니다.
답변
인스턴스의 콘솔 출력을 보셨습니까? AWS 콘솔을 통해이 작업을 수행 할 수 있습니다 (인스턴스-> 인스턴스를 마우스 오른쪽 버튼으로 클릭-> 시스템 로그 가져 오기). EC2 인스턴스의 네트워크 서비스가 올바르게 시작되지 않아 SSH 연결 시간이 초과되는 경우가있었습니다. 인스턴스를 다시 시작하면 일반적으로 문제가 해결되었습니다.
답변
2 시간 후 나는 이것을 발견했다
참고로 ssh ip 120.138.105.251/32
-
aws 인스턴스 IP 주소가 아닙니다.
-
그것은 당신의 지역 IP가 아닙니다
127.0.0.1
-
그것은 당신의 지역 IP가 아닙니다
localhost
그러나 그러나
그것의 당신의 당신의 공용 IP 주소를 개인 컴퓨터가 있는 당신은 액세스 AWS 인스턴스에 노력
- 이동 https://www.whatismyip.com/ 에서 어떤 IP 주소를 넣어 SSH