از OpenSSL s_client نصب‌شده که از -proxy پشتیبانی می‌کند استفاده کنید. برای یک endpoint مجاز HTTP CONNECT:

openssl s_client -proxy proxy.example:3128   -connect example.com:443 -servername example.com   -verify_hostname example.com -verify_return_error -showcerts

نشانی پراکسی را جایگزین کنید و نام مقصد موردنظر را به‌صورت یکسان به کار ببرید. برای آزمایش مقصد عمومی از طریق پراکسی انتخابی، نامزدی HTTP را از فهرست پراکسی HTTP انتخاب کنید. -connect هدف را انتخاب می‌کند، -servername برای میزبان مجازی TLS آن SNI می‌فرستد و -verify_hostname هویت را بررسی می‌کند. SNI به‌تنهایی اعتبارسنجی نام میزبان نیست. هنگام تغییر گزینه‌ها راهنمای نسخهٔ نصب‌شده را ببینید.

-showcerts آنچه سرور فرستاده نمایش می‌دهد، نه اینکه زنجیره را مورد اعتماد اعلام کند. -verify_return_error خطاهای اعتبارسنجی را باعث پایان handshake می‌کند؛ در غیر این صورت کلاینت تشخیصی می‌تواند پس از خطا ادامه دهد. برای سرویس خصوصی از مواد CA تأییدشده استفاده کنید و به گواهی تصادفی دانلودشده اعتماد نکنید.

نتیجهمرحله
407احراز هویت پراکسی پیش از TLS مقصد.
مقصد CONNECT رد شدسیاست مقصد پراکسی.
گواهی دریافت شد و تلاش برای اعتبارسنجی انجام شدتبادل TLS مقصد از تونل پذیرفته‌شده.

با OpenSSL 3.x و پراکسی HTTP دارای احراز هویت Basic، گزینه‌های حساب پراکسی s_client را به کار ببرید و اعتبارسنجی مقصد را حفظ کنید.

نقطهٔ پایانی فقط SOCKS رابط پراکسی HTTP مورد استفادهٔ این فرمان را ارائه نمی‌کند. در رهگیری مجاز TLS، گواهی نمایش‌داده‌شده ممکن است توسط همان واسطه صادر شده باشد. پیش از نسبت دادن تفاوت به خرابی وب‌سایت، صادرکننده و ساختار اعتماد موردنظر آن را مقایسه کنید.

مقالات مرتبط