ssh를 통해 Amazon EC2 인스턴스에있는 서버에 HTTP POST를 어떻게 수행합니까?


0

http://0.0.0.0:8000 에서 수신 대기하는 서버 가 있지만 Amazon 인스턴스에 있습니다.

외부 컴퓨터에서을 사용하여 HTTP POST 요청을하려면 curl어떻게해야합니까? 즉, 서버 수신을 API로 사용하고 싶습니다. ssh를 통해하고 싶기 때문에 이것은 다른 경우와 다릅니다.


1
도움을 주셔서 감사합니다 Attie, 네, 이것이 의미하는 것입니다
anon

" 듣기0.0.0.0:8000 "는 " 모든 인터페이스에서 듣기 "를 의미 하므로 공용 IP에서 통신 할 수 있습니까? (SSH에 사용하는 것과 동일)
Attie

예, Attie는 서버를 시작할 때 no port specified, defaulting to port 8000ec2 인스턴스에 있다고 말합니다 . 내가 할 싶습니다 curl -XPOST"외부 장치"에서
익명

SSH를 사용할 수 있다고 가정합니까? curlSSH에 사용한 것과 동일한 IP를 사용해 보셨습니까 ?
Attie

아니요, 예를 들어 주시겠습니까?
anon

답변:


0

당신이 실행하려는 경우 curl 터널 출력을 통해 EC2 인스턴스와 ssh다음을 시도 :

ssh ${USERNAME}@${EC2_INSTANCE_IP} curl -s http://localhost:8000/

터미널에서 직접 결과를 볼 수 있습니다 ( 의 출력 -s을 억제 curl합니다).

이와 같은 명령을 실행할 수 있습니다 curl. 특별한 것은 없습니다 .

이것이 작동 하면 올바른 엔드 포인트와 함께 및 / 또는 curl사용할 매개 변수를 변경할 수 있습니다 .-X POST-d


그러나이 주소는 실제로 " 모든 인터페이스에서 수신 대기 "를 의미 0.0.0.0하는 " 특별한 "주소입니다 . 따라서 인바운드 규칙을 올바르게 구성하지 않으면 누구나 서버에 접속하여 서버를 공격 할 수 있습니다 .curl http://${EC2_INSTANCE_IP}:8000/


Amazon 인스턴스에서이를 구성하는 방법에 대한 참조가 있습니까? 인스턴스 연결 실패, 시간 초과
anon

EC2에 대한 인바운드 규칙과 관련하여 다른 질문을하고 싶을 수 있습니다. 기본 SSH가 먼저 작동하도록 한 다음 돌아와서 " SSH를 통해 사용curl "을 시도하십시오 .
Attie

이 링크는 다음과 같이 도움이 될 수 있습니다. Linux 인스턴스에 대한 인바운드 트래픽 권한 부여
Attie
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.