اشکال زدایی چرا TLS بین openssl و برخی از سایتهای SSL شکست خورده است

سیستم CentOS 5.11 قدیمی که OpenSSL 0.9.8e را اجرا می کند. من قادر به اتصال بیشتر سایت های SSL بدون هیچ مشکلی هستم. با این حال با برخی از سایت های مانند www.looklinux.com، اگر من سعی می کنم برای اتصال من این خطا:

openssl s_client -connect www.looklinux.com:443
CONNECTED(00000003)
27080:error:14077410 : روال SSL: SSL23_GET_SERVER_HELLO: sslv3 هشدار دست دادن شکست: s23_clnt.c: 586:

حالا از انجام
openssl s_client -connect www.google.com:443 | grep -i "پروتکل"
من در پروتکل "پروتکل: TLSv1" را می بینم. و از
https://www.ssllabs.com/ssltest/analyze.html؟d=www.looklinux.com&latest
من می دانم که www.looklinux.com از TLS 1.0، 1.1 و 1.2 پشتیبانی می کند. بنابراین به نظر می رسد سرویس گیرنده و سرور حداقل یک پروتکل سازگار (TLS v1) را به اشتراک بگذارد و این مشکل نیست.

پس از آن، آنچه اشتباه است و چگونه می توانم آن را حل کنم؟

این پست:
https://stackoverflow.com/questions/48983918/authorize-net-gem-tls- سازگاری 1-2
نشان می دهد گاهی نسخه قدیمی OpenSSL سازگار نیست. آیا آسان توضیح دادن این است که OpenSSL قدیمی تر نمی تواند انجام دهد؟ و واقعا چطوری وجود نداره؟ من از "به روز رسانی" آن از طریق ایجاد OpenSSL از منبع مراقب هستم، زیرا دستورالعمل هایی برای ساختن از منبع معمولا اشتباه یا نادیده گرفته می شود، در حالی که یک خواننده متخصص می داند دستورات قرار است باشد، اما می گویم دستورالعمل ها دقیقا به دست آمده و جذب می شوند. بنابراین امیدوارم بتوانم این را فقط با نصب یک گواهینامه اضافی یا چیزی درست کنم.

openssl – ایجاد گواهی بدون کلید خصوصی یا استفاده از USB eToken

با توجه به این موضوع:

ایجاد گواهی بدون کلید خصوصی با OpenSSL

وضعیت بسیار شبیه من است. من یک USB eToken 5110 JC (Aladdin) داریم که دارای خصوصی شخصی غیر قابل قبول است، زیرا هدف اصلی آن است. بنابراین، من می توانم از pkcs11-tool استفاده کنم – module /lib/libeToken.so.9 -l –pin -s -i و کار می کند. libeToken.so.9 توسط SAC 9.1 (Safenet Authentication Tool) ارائه می شود. تا کنون خیلی خوب است

مشکل من این است: من نیاز به تولید گواهینامه ها و امضای آنها با این eToken دارم. من سعی کردم از موتور pkcs11 با openssl استفاده کنم، بدون موفقیت. ممکن است به علت اشتباه (من سعی کردم https://github.com/OpenSC/libp11 چگونه، اما من اشتباهات زیادی داشته ام، و من رها کردن)

من سعی کردم به استفاده از gpg اما من اشتباهات در حالی که یادگیری کارت .

بنابراین من این موضوع جالب را رسیده ام. از آنجا که من می توانم به راحتی گواهی و کلید عمومی را از usb Token صادر کنم، نوک والنتین بوسی به نظر می رسد خوب است، زیرا می توانم openssl x509 -force_pubkey اجرا کنم. آیا تا به حال صحیح است؟

بنابراین، مشکلی برای انجام این کار چیست؟ من می دانم که امضای فرآیند ایجاد یک هش از برخی داده ها و رمزگذاری با یک کلید خصوصی است. هنگامی که برخی از داده ها به شخصی که با امضای آن ارسال می شود، گیرنده بررسی خواهد کرد که الگوریتم هش کردن چیست، سپس یک هش از داده ها با یک الگوریتم مشابه تولید می کند و در مقایسه با داده های هش رمزگشایی شده با کلید عمومی فرستنده، درست است؟

بنابراین هنگام تولید یک گواهی بدون توجه به اینکه آیا داده از CSR یا stdin ساخته شده است، امضای ساخته شده از طریق کلید عمومی تأیید نشانه دیجیتال را تأیید نخواهد کرد، زیرا هر کسی می تواند این کلید عمومی را دریافت کند و از طرف صاحب eToken تولید گواهی کند. 19659002] بنابراین، چه چیزی در حال حاضر؟ چه چیزی اشتباه می گویم؟

آخرین سوال، داده های رمز شده با کلید خصوصی را می توان با کلید عمومی آن لغو کرد و بالعکس. اما من نمی دانستم که با استفاده از همان کلید (از آنجا که کلیدهای assymetric هستند) امکان رمزگذاری و رمزگشایی وجود دارد

openssl – دستیابی SSL به صورت متناوب با 502 انجام نشد

من یک مسئله بسیار عجیب و غریب را تجربه می کنم که در آن سرویس من 502 با پیام خطای دستکاری در سرویس پروکسی من (آپاچی) پاسخ می دهد.

با نگاه کردن به سیاهههای مربوط به خطا:

[Mon Apr 30 20:36:02.626518 2018] [ssl:info] [pid 4386] 
    : ] AH02003: اتصال پروکسی SSL شکست خورده است
    [Mon Apr 30 20:36:02.626557 2018] [ssl:info] [pid 4386]  خطا در کتابخانه SSL: خطا: 14094410: روال SSL: SSL3_READ_BYTES: sslv3 هشدار از دست دادن (هشدار شماره 40 SSL)

    [Mon Apr 30 20:36:02.626567 2018] [ssl:info] [pid 4386]  [ازراهدور: ] AH01998: اتصال به کودک 0 با قطع خاموش (میزبان سرور: پورت) بسته شده است
    [Mon Apr 30 20:36:02.626607 2018] [ssl:info] [pid 4386]  [ازراهدور: ] AH01997: دستکاری اس اس ال نتوانست: ارسال 502

این سیاهههای مربوط به apache من است که به عنوان یک سرویس پروکسی معکوس کار می کند

پس از تحقیق بیشتر، من فکر می کردم این ممکن است برخی از موارد عدم هماهنگی پروتکل باشد، اما پروتکل عاقلانه هیچ مسئله ای وجود ندارد.

من همچنین سعی کردم گرفتن یک tcpdump بر روی مشتری من (آپاچی) و بررسی استفاده از wireshark و من در زیر نتایج:

 TCPdump اسیر تصویر با دستاورد اشتباه

سرور پروکسی من من است: 172.18.0.3 و سرویس پراکنده ip است: 10.xxx

من نمی فهمم که چرا دو مرحله در دست گرفتن SSL شکست خورده است.
من کمی اطمینان دارم که این موضوع قطعا در پروکسی سرور نیست.

سرویس پروکسی من خدمات مبتنی بر جاوا مبتنی بر SAP است

FYI، سرور SNI فعال نیست.

مهمتر از همه، این مسئله مانند 4 بار از 600 درخواست اتفاق می افتد.

هر گونه کمک بسیار قدردانی است. با تشکر از قبل.