ฉันมี VPC 10.0.0.0/16
ด้วยอินเทอร์เน็ตเกตเวย์และเครือข่ายย่อยสองเครือข่าย 10.0.100.0/24
และ 10.0.200.0/24
ในเขตความพร้อมใช้งานเดียวกัน อนุญาตกลุ่มความปลอดภัยเดียว tcp/22
ขาเข้าจาก 0.0.0.0/0
และทุกอย่างขาออก ฉันยังมีอินเทอร์เฟซเครือข่ายสองอินเทอร์เฟซที่เชื่อมโยงกับกลุ่มความปลอดภัย หนึ่งอินเทอร์เฟซในแต่ละเครือข่ายย่อย แต่ละอินเทอร์เฟซเครือข่ายมีที่อยู่ IP ยืดหยุ่นของตัวเอง มีตารางเส้นทางสำหรับแต่ละเครือข่ายย่อยที่ชี้ 0.0.0.0/0
ไปยังอินเทอร์เน็ตเกตเวย์
นี่คือปัญหาที่ฉันเผชิญ: ฉันมีอินสแตนซ์ EC2 ที่จับคู่กับอินเทอร์เฟซเครือข่ายทั้งสอง แต่ทำได้เฉพาะ SSH จากอินเทอร์เน็ตผ่านอินสแตนซ์ที่จับคู่กับ eth0
.
นี่คือการกำหนดค่า:
$ uname -a
Linux ip-10-0-100-70 5.4.0-1045-aws #47-Ubuntu SMP อังคารที่ 13 เมษายน 07:02:25 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
$ ไอพี
1: จริง: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN กลุ่มเริ่มต้น qlen 1,000
ลิงค์ / ย้อนกลับ 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 ขอบเขตโฮสต์เลย
valid_lft ตลอดไป reserved_lft ตลอดไป
inet6 :: โฮสต์ขอบเขต 1/128
valid_lft ตลอดไป reserved_lft ตลอดไป
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9001 qdisc fq_codel สถานะกลุ่ม UP เริ่มต้น qlen 1,000
ลิงค์/อีเธอร์ 02:88:59:6e:78:c0 brd ff:ff:ff:ff:ff:ff
inet 10.0.100.70/24 brd 10.0.100.255 ขอบเขต global dynamic eth0
valid_lft 1806 วินาทีที่ต้องการ_lft 1806 วินาที
ลิงค์ขอบเขต inet6 fe80::88:59ff:fe6e:78c0/64
valid_lft ตลอดไป reserved_lft ตลอดไป
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9001 qdisc fq_codel สถานะกลุ่ม UP เริ่มต้น qlen 1,000
ลิงค์/อีเธอร์ 02:7d:b2:d4:b5:ea brd ff:ff:ff:ff:ff:ff
inet 10.0.200.118/24 brd 10.0.200.255 ขอบเขต global dynamic eth1
valid_lft 1807 วินาทีที่ต้องการ_lft 1807 วินาที
ลิงค์ขอบเขต inet6 fe80::7d:b2ff:fed4:b5ea/64
valid_lft ตลอดไป reserved_lft ตลอดไป
เส้นทาง $ ip
ค่าเริ่มต้นผ่าน 10.0.100.1 dev eth0 proto dhcp src 10.0.100.70 เมตริก 100
ค่าเริ่มต้นผ่าน 10.0.200.1 dev eth1 proto dhcp src 10.0.200.118 เมตริก 200
10.0.200.0/24 dev eth1 ลิงก์ขอบเขตเคอร์เนลโปรโต src 10.0.200.118
10.0.200.1 dev eth1 proto dhcp ขอบเขตลิงก์ src 10.0.200.118 เมตริก 200
10.0.100.0/24 dev eth0 ลิงก์ขอบเขตเคอร์เนลโปรโต src 10.0.100.70
10.0.100.1 dev eth0 proto dhcp ขอบเขตลิงก์ src 10.0.100.70 เมตริก 100
$ กฎไอพี
0: จากการค้นหาทั้งหมดในท้องถิ่น
32766: จากหลักการค้นหาทั้งหมด
32767: จากค่าเริ่มต้นการค้นหาทั้งหมด
$ sudo ufw สถานะโดยละเอียด
สถานะ: ไม่ได้ใช้งาน
$ ss -nlput
สถานะ Netid Recv-Q Send-Q ที่อยู่ในระบบ:ที่อยู่พอร์ตเพียร์:กระบวนการพอร์ต
UDP UNCONN 0 0 127.0.0.53%lo:53 0.0.0.0:*
udp UNCONN 0 0 10.0.200.118%eth1:68 0.0.0.0:*
udp UNCONN 0 0 10.0.100.70%eth0:68 0.0.0.0:*
tcp LISTEN 0 4096 127.0.0.53%lo:53 0.0.0.0:*
tcp ฟัง 0 128 0.0.0.0:22 0.0.0.0:*
tcp ฟัง 0 128 [::]:22 [::]:*
ดังนั้นดูเหมือนว่าอินเทอร์เฟซเครือข่ายได้รับการกำหนดค่าอย่างถูกต้องและ SSH daemon กำลังฟังบนอินเทอร์เฟซทั้งหมด SSH daemon ทำงานได้อย่างถูกต้องเพราะฉันเชื่อมต่อผ่าน SSH แล้ว eth0
. และอินเทอร์เฟซทั้งสองดูเหมือนจะส่งทราฟฟิกไปยังอินเทอร์เน็ตได้ดี:
$ ping -I eth0 -c 5 1.1.1.1
PING 1.1.1.1 (1.1.1.1) จาก 10.0.100.70 eth0: 56(84) ไบต์ของข้อมูล
64 ไบต์จาก 1.1.1.1: icmp_seq=1 ttl=38 เวลา=11.5 ms
64 ไบต์จาก 1.1.1.1: icmp_seq=2 ttl=38 เวลา=11.5 ms
64 ไบต์จาก 1.1.1.1: icmp_seq=3 ttl=38 เวลา=11.5 ms
64 ไบต์จาก 1.1.1.1: icmp_seq=4 ttl=38 เวลา=11.6 ms
64 ไบต์จาก 1.1.1.1: icmp_seq=5 ttl=38 เวลา=11.5 ms
--- 1.1.1.1 สถิติการปิง ---
ส่ง 5 แพ็กเก็ต ได้รับ 5 แพ็กเก็ต สูญเสียแพ็กเก็ต 0% เวลา 4007ms
rtt นาที/เฉลี่ย/สูงสุด/mdev = 11.470/11.515/11.567/0.031 มิลลิวินาที
$ ping -I eth1 -c 5 1.1.1.1
PING 1.1.1.1 (1.1.1.1) จาก 10.0.200.118 eth1: 56(84) ไบต์ของข้อมูล
64 ไบต์จาก 1.1.1.1: icmp_seq=1 ttl=38 เวลา=11.7 ms
64 ไบต์จาก 1.1.1.1: icmp_seq=2 ttl=38 เวลา=11.8 ms
64 ไบต์จาก 1.1.1.1: icmp_seq=3 ttl=38 เวลา=11.7 ms
64 ไบต์จาก 1.1.1.1: icmp_seq=4 ttl=38 เวลา=11.8 ms
64 ไบต์จาก 1.1.1.1: icmp_seq=5 ttl=38 เวลา=11.8 ms
--- 1.1.1.1 สถิติการปิง ---
ส่ง 5 แพ็กเก็ต, 5 แพ็กเก็ตที่ได้รับ, การสูญเสียแพ็กเก็ต 0%, เวลา 4008ms
rtt นาที/เฉลี่ย/สูงสุด/mdev = 11.705/11.755/11.829/0.042 มิลลิวินาที
แต่เชื่อมต่อไม่ได้:
$ ssh -i ~/.ssh/cert.pem ubuntu@3.<redacted> # EIP สำหรับ eth0
ยินดีต้อนรับสู่ Ubuntu 20.04.2 LTS (GNU/Linux 5.4.0-1045-aws x86_64)
...
$ ssh -i ~/.ssh/cert.pem ubuntu@52.<redacted> # EIP สำหรับ eth1
ssh: เชื่อมต่อกับโฮสต์ 52 <redacted> พอร์ต 22: การดำเนินการหมดเวลา
ฉันตั้งค่า Netflow บน eth1
อะแดปเตอร์เครือข่ายใน AWS และสามารถดูการรับส่งข้อมูล:
2 840416055907 eni-07cc18b6f1b89378e <redacted> 10.0.200.118 54268 22 6 9 576 1623280724 1623280761 ยอมรับ ตกลง
ดังนั้นฉันจึงรู้สึกว่าระบบปฏิบัติการกำลังลดการรับส่งข้อมูล แต่ไม่มีการกำหนดค่าไฟร์วอลล์และ SSH daemon กำลังฟังบนอินเทอร์เฟซทั้งหมด ฉันยังลองใช้ tailing logs /var/log/{syslog,auth.log,kern.log} และ dmesg แต่ไม่มีอะไรปรากฏขึ้นในขณะที่ฉันพยายามเชื่อมต่อ
ฉันหวังว่าฉันจะพลาดอะไรไปง่ายๆ เพราะตอนนี้ฉันกำลังขาดทุนอยู่นิดหน่อย ความช่วยเหลือใด ๆ ที่จะได้รับการชื่นชมมาก!