استفاده از SSL در سرویس دهنده وب tomcat

در این مفاله به آموزش استفاده از SSL برای tomcat خواهیم پرداخت.

 

tomcat-logo

 

برای اینکه ما بتوانیم tomcat را بصورت SSL بالا بیاوریم دو راه دازیم.

راه اول استفاده از java keystore

برای این منظور ما باید فایل های certificate کلید خصوصی و فایل سرتیفیکیت مربوط به CA را داشته باشیم.

بعد از اینکه همه فایل های معرفی شده را جمع آوری کردیم دستور زیر را برای ایجاد فایل jks که همان  java keystore میباشد اجرا میکنیم.

keytool -import -trustcacerts -alias server -file your_site_name.crt -keystore your_site_name.jks

بعد از اینکه فایل jks را ایجاد کردیم نوبت به آن میرسد که مسیر آدرس آن را در فایل تنظیمات وارد ککنیم تا tomcat بتواند certificate را از آن لود کند. برای این منظور فایل زیر را با ویرایشگر باز میکنیم .

<tomcat_home>/config/server.xml

نمونه ای از خطی که باید تغییر کند در زیر آمده است.

keystoreFile=”/home/user_name/your_site_name.jks”

راه دوم تغییر فرمت certificate به p12

برای اینکه ما بتوانیم فرمت certificate را بصورت p12 برای استفاده tomcat تغییر دهیم باید دستور زیر را اجرا کنیم .

openssl pkcs12 -export -in mycert.crt -inkey mykey.key -out mycert.p12 -name tomcat -CAfile myCA.crt -caname <your_CA_name>

توجه کنید که برای اجرای دستور بالا باید بسته مربوط به openssl بر روی سیستم شما نصب شده باشد.

در زیر هر کدام از قسمت ها موجود در دستور بالا را توضیح داده ایم.

mycert.crt ==> همان certificate یا کلید عمومی شما میباشد.

mycert.key ==> همان کلید خصوصی شما میباشد.

mycert.p12 ==> فایلی که در آخر اجرای دستور شما خواهید داست میباشد.

myCA.crt ==> کلید عمومی CA ( کسی که certificate شما را امضا کرده) می باشد.

<your_CA_name> ==> اسم CA شما می باشد.

نکته: شما میتوانید برای گرفتن certificate از let’s encrypt به اینجا و برای ایجاد CSR و گرفتن certificate به اینجا مراجعه کنید.

بعد از اینکه فایل .p12 خود را ایجاد کردید باید فایل تنظیمات سرور tomcat خود را باز کنید و خطوطی مانند زیر را ویرایش کنید.

<Connector port=”443″ protocol=”HTTP/1.1″ SSLEnabled=”true”
maxThreads=”150″ scheme=”https” secure=”true”
clientAuth=”false” sslProtocol=”TLS”
keystoreFile=”/usr/local/nowlearn/ssl/mycert.p12″
keystorePass=”changeit”
keystoreType=”PKCS12″ />

توجه داشته باشید که اگر سکشن معرفی شده در بالا در حالت comment بود آن را از این حالت با پاک کردن <– –!> از ابتدا و انتهای سکشن خارج کنید.

توجه داشته باشید که برای هر دو مرحله بالا باید در هنگام تولید فایل های jks و p12 برای فایل خود پسورد بگذارید تا بدرستی کار کند.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *