openssl errno 104 หมายความว่า SSLv2 ถูกปิดใช้งานหรือไม่


10

ฉันต้องการตรวจสอบว่าเซิร์ฟเวอร์ของฉันปิดการใช้งาน SSLv2 หรือไม่ ฉันทำสิ่งนี้โดยพยายามเชื่อมต่อจากระยะไกลด้วย openssl ด้วยคำสั่งเชลล์ต่อไปนี้

openssl s_client -connect HOSTNAME:443 -ssl2

วรรณกรรมส่วนใหญ่ที่ฉันพบบนอินเทอร์เน็ตบอกว่าถ้าฉันเห็นบางสิ่งบางอย่างที่คล้ายกับข้อผิดพลาดต่อไปนี้ SSLv2 ถูกปิดใช้งานอย่างถูกต้อง

29638:error:1407F0E5:SSL routines:SSL2_WRITE:ssl handshake failure:s2_pkt.c:428:

ฉันได้รับข้อผิดพลาดด้านบนเมื่อเชื่อมต่อกับเซิร์ฟเวอร์ Ubuntu ที่ปิดใช้งาน SSLv2 ใน Apache Apache แต่เมื่อฉันเชื่อมต่อกับเซิร์ฟเวอร์ Windows Server 2008 R2 ของฉันด้วย SSLv2 ที่ปิดใช้งานในรีจิสทรีฉันได้รับผลลัพธ์และข้อผิดพลาดดังต่อไปนี้

CONNECTED(00000003)
write:errno=104

ฉันไม่พบวรรณกรรมที่อธิบายผลลัพธ์และข้อผิดพลาดนี้ หากใครสามารถอธิบายให้ฉันถ้าและทำไมผลลัพธ์และข้อผิดพลาดนี้หมายความว่า SSLv2 ถูกปิดใช้งานอย่างถูกต้องฉันจะขอบคุณมัน

ขอบคุณ!

คำตอบ:


11

อย่างน้อยบน Linux, 104 ECONNRESETสำหรับ "การรีเซ็ตการเชื่อมต่อโดยเพียร์" - กล่าวอีกนัยหนึ่งการเชื่อมต่อถูกบังคับให้ปิดด้วยแพ็คเก็ต TCP RST ไม่ว่าจะส่งโดยเซิร์ฟเวอร์หรือหลอกลวงโดยตัวกลาง

ฉันจะลองใช้ Wireshark / tshark บนเซิร์ฟเวอร์ Ubuntu เพื่อดูว่าอะไรได้รับการส่งจริง หาก RST เป็นจริงอาจเป็นไปได้ว่ากระบวนการ httpd เสียชีวิต - ตรวจสอบไฟล์บันทึกและdmesgในกรณี


ทดสอบ Qualys เซิร์ฟเวอร์ SSLเว็บไซต์สามารถแสดง SSL / TLS รุ่นสนับสนุนโดยเว็บเซิร์ฟเวอร์ของคุณ (น่าเสียดายที่มันไม่ได้รบกวน TLS SNI ... )


ดังนั้นฉันสงสัยว่าถ้าแพ็คเก็ต TCP RST ถูกส่งจาก Windows Server 2008 R2 เมื่อลูกค้าพยายามที่จะเชื่อมต่อกับ SSLv2 เมื่อเซิร์ฟเวอร์มี SSLv2 คนพิการ
เดวิด

ไฟร์วอลล์ของคุณมักจะเป็นตัวกลางหนึ่งที่ส่งแพ็กเก็ต RST แต่ถ้านั่นไม่ใช่ปัญหาบางครั้งการบังคับใช้ SSL3 ด้วย-ssl3ตัวเลือกหรือการใช้-servernameตัวเลือกสามารถผ่านพ้นไปได้
Amit Naidu

-2

อาจมีความไม่ตรงกันระหว่าง ciphers ที่เซิร์ฟเวอร์ของคุณรองรับและที่รองรับโดยเซิร์ฟเวอร์ของผู้รับ


2
คนเรายืนยันสิ่งนี้ได้อย่างไร ใครบางคนแก้ไขมันได้เมื่อพวกเขาได้รับการยืนยันแล้ว? ฉันรู้คำตอบสำหรับคำถามเหล่านี้เป็นการส่วนตัว แต่คนอื่น ๆ อาจไม่รู้จักด้วยเหตุที่พวกเขาให้เหตุผลในคำถามนี้
Ramhound

-2

ฉันมีข้อผิดพลาดเดียวกันและเกี่ยวข้องกับอินเตอร์เฟส MTU การตั้งค่าส่วนต่อประสานไคลเอ็นต์กับ MTU เป็น 1492 (เป็น 1500) แก้ไขข้อผิดพลาดนี้ให้ฉัน


1
สิ่งนี้อาจแก้ไขปัญหาของคุณได้ แต่ปัญหาของคุณไม่เกี่ยวข้องกับความเข้ากันได้เข้ารหัส SSL และ / หรือการกำหนดค่า แม้ว่าคำตอบนี้อาจช่วยแก้ปัญหาของคุณได้ แต่ก็ไม่สามารถใช้ได้กับปัญหาของผู้เขียนเนื่องจากไม่เกี่ยวข้องกับคำถามนี้
Ramhound
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.