13 অ্যাপাচি ওয়েব সার্ভার সুরক্ষা এবং কঠোর টিপস


আমরা সবাই অ্যাপাচি ওয়েব সার্ভারের সাথে খুব পরিচিত, এটি ওয়েবে আপনার ওয়েব ফাইল বা আপনার ওয়েবসাইট হোস্ট করার জন্য একটি খুব জনপ্রিয় ওয়েব সার্ভার। এখানে কয়েকটি লিঙ্ক রয়েছে যা আপনাকে আপনার লিনাক্স বাক্সে অ্যাপাচি ওয়েব সার্ভারটি কনফিগার করতে সহায়তা করতে পারে।

  1. অ্যাপাচি ওয়েব সার্ভার ইনস্টল করুন
  2. আপনার ওয়েবসাইটটি আপনার লিনাক্স বাক্সে সেটআপ করুন

এই টিউটোরিয়ালে এখানে আমি আপনার ওয়েব সার্ভারটি সুরক্ষিত করার জন্য কয়েকটি প্রধান টিপস কভার করব। আপনি আপনার ওয়েব সার্ভারে এই পরিবর্তনগুলি প্রয়োগ করার আগে আপনার অ্যাপাচি সার্ভারের কিছু বেসিক থাকা উচিত।

  1. ডকুমেন্টের রুট ডিরেক্টরি:/var/www/html বা/var/www
  2. www
  3. প্রধান কনফিগারেশন ফাইল: /etc/httpd/conf/httpd.conf (আরএইচইএল/সেন্টস/ফেডোরা) এবং /etc/apache2/apache2.conf (ডেবিয়ান/উবুন্টু)
  4. ডিফল্ট HTTP পোর্ট: 80 টিসিপি
  5. li
  6. ডিফল্ট HTTPS পোর্ট: 443 টিসিপি
  7. li
  8. আপনার কনফিগারেশন ফাইল সেটিংস এবং বাক্য গঠন পরীক্ষা করুন: httpd -t
  9. ওয়েব সার্ভারের লগ ফাইল অ্যাক্সেস করুন:/var/লগ/httpd/অ্যাক্সেস_লগ
  10. ত্রুটি ওয়েব সার্ভারের লগ ফাইলগুলি:/var/লগ/httpd/ত্রুটি_লগ

1. ত্রুটি থেকে অ্যাপাচি সংস্করণ এবং ওএস পরিচয় কীভাবে আড়াল করবেন

আপনি যখন সোর্স বা ইয়ামের মতো অন্য কোনও প্যাকেজ ইনস্টলার সহ অ্যাপাচি ইনস্টল করেন, এটি ত্রুটিগুলিতে আপনার সার্ভারের অপারেটিং সিস্টেমের নামের সাথে আপনার সার্ভারে ইনস্টল হওয়া আপনার অ্যাপাচি ওয়েব সার্ভারের সংস্করণ প্রদর্শন করে। এটি আপনার সার্ভারে ইনস্টল থাকা অ্যাপাচি মডিউলগুলি সম্পর্কিত তথ্যও দেখায়।

উপরের ছবিতে, আপনি দেখতে পাচ্ছেন যে অ্যাপাচি আপনার সার্ভারে ইনস্টল হওয়া ওএসের সাথে এর সংস্করণটি দেখাচ্ছে। এটি আপনার ওয়েব সার্ভারের পাশাপাশি আপনার লিনাক্স বাক্সের জন্যও একটি বড় সুরক্ষা হুমকি হতে পারে। এ্যাপাচি বিশ্বগুলিতে এই তথ্যগুলি প্রদর্শন না করতে প্রতিরোধ করতে, আমাদের অ্যাপাচি প্রধান কনফিগারেশন ফাইলে কিছু পরিবর্তন করতে হবে।

ভিএম এডিটর দিয়ে কনফিগারেশন ফাইলটি খুলুন এবং এটি "সার্ভারসাইনচার" অনুসন্ধান করুন, এটি ডিফল্টরূপে। আমাদের এই সার্ভার স্বাক্ষরটি বন্ধ করতে হবে এবং দ্বিতীয় সারির "সার্ভারটোকেনস প্রোড" প্রতিটি পৃষ্ঠার অনুরোধে সার্ভারের প্রতিক্রিয়া শিরোনামে কেবল অ্যাপাচিকে পণ্য হিসাবে ফিরিয়ে আনতে অ্যাপাচিকে বলে, এটি ওএস, বড় এবং ছোট সংস্করণ তথ্যকে দমন করে।

# vim /etc/httpd/conf/httpd.conf (RHEL/CentOS/Fedora)
# vim /etc/apache2/apache2.conf (Debian/Ubuntu)
ServerSignature Off
ServerTokens Prod
# service httpd restart (RHEL/CentOS/Fedora)
# service apache2 restart (Debian/Ubuntu)

2. ডিরেক্টরি তালিকা অক্ষম করুন

ডিফল্টরূপে অ্যাপাচি সূচক ফাইলের অভাবে ডকুমেন্ট রুট ডিরেক্টরিতে থাকা সমস্ত বিষয়বস্তু তালিকাভুক্ত করে। নীচের চিত্রটি দেখুন।

নির্দিষ্ট ডিরেক্টরিতে কনফিগারেশন ফাইলের বিকল্প নির্দেশাবলী ব্যবহার করে আমরা ডিরেক্টরি তালিকা বন্ধ করতে পারি। তার জন্য আমাদের httpd.conf বা apache2.conf ফাইলটিতে একটি এন্ট্রি করা দরকার।

<Directory /var/www/html>
    Options -Indexes
</Directory>

৩. নিয়মিতভাবে অ্যাপাচি আপডেট করে রাখুন

অ্যাপাচি বিকাশকারী সম্প্রদায় সুরক্ষা ইস্যুতে ধারাবাহিকভাবে কাজ করছে এবং নতুন সুরক্ষা বিকল্পগুলির সাথে এর আপডেট হওয়া সংস্করণ প্রকাশ করছে। সুতরাং এটি সর্বদা আপনার ওয়েব সার্ভার হিসাবে অ্যাপাচি এর সর্বশেষতম সংস্করণ ব্যবহার করার পরামর্শ দেওয়া হয়।

অ্যাপাচি সংস্করণটি পরীক্ষা করতে: আপনি নিজের বর্তমান সংস্করণটি httpd -v কমান্ড দিয়ে পরীক্ষা করতে পারেন।

# httpd -v
Server version: Apache/2.2.15 (Unix)
Server built:   Aug 13 2013 17:29:28

আপনি নিম্নলিখিত কমান্ড দিয়ে আপনার সংস্করণ আপডেট করতে পারেন।

# yum update httpd
# apt-get install apache2

আপনি যদি নির্দিষ্ট কোনও ওএস বা কার্নেলের সাথে কাজ করে এমন কোনও নির্দিষ্ট অ্যাপ্লিকেশন চালনা না করেন তবে আপনার কার্নেল এবং ওএসকে সর্বশেষ স্থিতিশীল রিলিজগুলিতে আপডেট করার পরামর্শ দেওয়া হয়।

৪. অপ্রয়োজনীয় মডিউলগুলি অক্ষম করুন

কোনও ওয়েব আক্রমণের শিকার হওয়ার সম্ভাবনা অপ্রত্যাশিত হওয়া সর্বদা ভাল। সুতরাং বর্তমানে ব্যবহার করা হচ্ছে না এমন সমস্ত মডিউল অক্ষম করার পরামর্শ দেওয়া হচ্ছে। নিম্নলিখিত কমান্ডটি ব্যবহার করে আপনি ওয়েব সার্ভারের সমস্ত সংকলিত মডিউল তালিকাভুক্ত করতে পারেন।

# grep LoadModule /etc/httpd/conf/httpd.conf

# have to place corresponding `LoadModule' lines at this location so the
# LoadModule foo_module modules/mod_foo.so
LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule auth_digest_module modules/mod_auth_digest.so
LoadModule authn_file_module modules/mod_authn_file.so
LoadModule authn_alias_module modules/mod_authn_alias.so
LoadModule authn_anon_module modules/mod_authn_anon.so
LoadModule authn_dbm_module modules/mod_authn_dbm.so
LoadModule authn_default_module modules/mod_authn_default.so
LoadModule authz_host_module modules/mod_authz_host.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule authz_owner_module modules/mod_authz_owner.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
LoadModule authz_dbm_module modules/mod_authz_dbm.so
LoadModule authz_default_module modules/mod_authz_default.so
LoadModule ldap_module modules/mod_ldap.so
LoadModule authnz_ldap_module modules/mod_authnz_ldap.so
LoadModule include_module modules/mod_include.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule logio_module modules/mod_logio.so
LoadModule env_module modules/mod_env.so
LoadModule ext_filter_module modules/mod_ext_filter.so
....

উপরে মডিউলগুলির তালিকা রয়েছে যা ডিফল্টরূপে সক্ষম হয় তবে প্রায়শই প্রয়োজন হয় না: মোড_ইম্যাপ, মোড_নোক্লাউনড, মোড_ইনফো, মোড_উজারডির, মোড_আউটআইন্ডেক্স। নির্দিষ্ট মডিউলটি অক্ষম করতে, আপনি সেই লাইনের শুরুতে একটি "#" sertোকাতে এবং পরিষেবাটি পুনরায় শুরু করতে পারেন।

5. অ্যাপাচি পৃথক ব্যবহারকারী এবং গোষ্ঠী হিসাবে চালান

একটি ডিফল্ট ইনস্টলেশন সহ অ্যাপাচি ব্যবহারকারীর সাথে বা ডেমন দ্বারা এটি প্রক্রিয়া চালায়। সুরক্ষার কারণে এপাচে তার নিজস্ব অ-সুবিধাযুক্ত অ্যাকাউন্টে চালানোর পরামর্শ দেওয়া হয়। উদাহরণস্বরূপ: HTTP- ওয়েব।

# groupadd http-web
# useradd -d /var/www/ -g http-web -s /bin/nologin http-web

এখন আপনাকে নতুন অ্যাপ্লিকেশনটির সাথে চালানোর জন্য অ্যাপাচিকে বলতে হবে এবং এটি করার জন্য আমাদের /etc/httpd/conf/httpd.conf এ একটি এন্ট্রি করে সার্ভিসটি পুনরায় চালু করতে হবে।

ভিট এডিটর দিয়ে /etc/httpd/conf/httpd.conf খুলুন এবং “ব্যবহারকারী” এবং “গোষ্ঠী” কীওয়ার্ডটি অনুসন্ধান করুন এবং সেখানে আপনাকে ব্যবহারের জন্য ব্যবহারকারীর নাম এবং গোপনীয়তার উল্লেখ করতে হবে।

User http-web
Group http-web

6. ডিরেক্টরিগুলিতে অ্যাক্সেস সীমাবদ্ধ করতে মঞ্জুরি দিন এবং অস্বীকার করুন

আমরা httpd.conf ফাইলটিতে "অনুমতি দিন" এবং "অস্বীকার করুন" বিকল্পগুলির সাহায্যে ডিরেক্টরিগুলিতে অ্যাক্সেসকে সীমাবদ্ধ করতে পারি। এখানে এই উদাহরণে, আমরা নিম্নলিখিত ডিরেক্টরিটি httpd.conf ফাইলে সেট করে তার জন্য মূল ডিরেক্টরিটি সুরক্ষিত করব।

<Directory />
   Options None
   Order deny,allow
   Deny from all
</Directory>

  1. বিকল্পগুলি "কিছুই নয়" - এই বিকল্পটি ব্যবহারকারীদের কোনও বিকল্প বৈশিষ্ট্য সক্ষম করতে দেয় না
  2. আদেশ অস্বীকার করুন, অনুমতি দিন - এটি সেই আদেশ যা "" অস্বীকার করুন "এবং" অনুমতি দিন "নির্দেশিকা প্রক্রিয়াকরণ করা হবে। এখানে এটি প্রথমে "অস্বীকার" এবং পরবর্তী "অনুমতি" দেবে
  3. সব থেকে অস্বীকার করুন - এটি রুট ডিরেক্টরিতে প্রত্যেকের অনুরোধ অস্বীকার করবে, কেউ রুট ডিরেক্টরি অ্যাক্সেস করতে সক্ষম হবে না

7. অ্যাপাচি সুরক্ষিত করার জন্য মোড_সিকিউরিটি এবং মোড_ভ্যাসিভ মডিউলগুলি ব্যবহার করুন

সুরক্ষার দিক থেকে এই দুটি মডিউল "মোড_সিকিউরিটি" এবং "মোড_ডেসিভ" অ্যাপাচি-র খুব জনপ্রিয় মডিউল।

যেখানে মোড_সিকিউরিটি আমাদের ওয়েব অ্যাপ্লিকেশনগুলির জন্য ফায়ারওয়াল হিসাবে কাজ করে এবং সত্যিকারের ভিত্তিতে ট্র্যাফিক নিরীক্ষণের অনুমতি দেয়। এটি আমাদের ওয়েবসাইট বা ওয়েব সার্ভারকে বর্বর বাহিনীর আক্রমণ থেকে রক্ষা করতে সহায়তা করে। আপনি নিজের ডিফল্ট প্যাকেজ ইনস্টলারগুলির সহায়তায় আপনার সার্ভারে কেবল মোড_সিকিউরিটি ইনস্টল করতে পারেন।

$ sudo apt-get install libapache2-modsecurity
$ sudo a2enmod mod-security
$ sudo /etc/init.d/apache2 force-reload
# yum install mod_security
# /etc/init.d/httpd restart

mod_evasive খুব দক্ষতার সাথে কাজ করে, এটি প্রক্রিয়া করতে একটি অনুরোধ নেয় এবং এটি খুব ভালভাবে প্রক্রিয়া করে। এটি ডিডিওএসের আক্রমণকে যতটা ক্ষতির কাজ থেকে বিরত রাখে। মোড_সেসিভের এই বৈশিষ্ট্যটি এটি HTTP ব্রুট ফোর্স এবং ডস বা ডিডস আক্রমণ পরিচালনা করতে সক্ষম করে। এই মডিউলটি তিনটি পদ্ধতিতে আক্রমণ সনাক্ত করে।

  1. প্রতি সেকেন্ডে কয়েকবার যদি এতগুলি অনুরোধ একই পৃষ্ঠায় আসে
  2. যদি কোনও শিশু প্রক্রিয়া 50 টিরও বেশি একসাথে অনুরোধ করার চেষ্টা করে
  3. যদি কোনও আইপি যদি অস্থায়ীভাবে কালো তালিকাভুক্ত হয় তবে নতুন অনুরোধ করার চেষ্টা করছে

Mod_evasive সরাসরি উত্স থেকে ইনস্টল করা যেতে পারে। এখানে, আমাদের কাছে এই মডিউলগুলির একটি ইনস্টলেশন এবং সেটআপ গাইড রয়েছে যা আপনাকে আপনার লিনাক্স বাক্সে এই অ্যাপাচি মডিউলগুলি সেট আপ করতে সহায়তা করবে।

  1. মোড_সিকিউরিটি এবং মোড_ভ্যাসিভ
  2. ব্যবহার করে অ্যাপাচি সুরক্ষিত করুন

8. সিম্বলিক লিঙ্কগুলির অ্যাপাচি অনুসরণ করে অক্ষম করুন

ডিফল্টরূপে অ্যাপাচি সিফলিঙ্কগুলি অনুসরণ করে, আমরা বিকল্পের নির্দেশনা সহ ফলোসিমলিংকের সাহায্যে এই বৈশিষ্ট্যটি বন্ধ করতে পারি। এবং এটি করার জন্য আমাদের প্রধান কনফিগারেশন ফাইলে নিম্নলিখিত এন্ট্রি করা দরকার।

Options -FollowSymLinks

এবং, যদি কোনও নির্দিষ্ট ব্যবহারকারীর বা ওয়েবসাইটটির ফলোসিমলিংকগুলি সক্ষম করার প্রয়োজন হয় তবে আমরা সেই ওয়েবসাইট থেকে কেবল ".htaccess" ফাইলটিতে একটি বিধি লিখতে পারি।

# Enable symbolic links
Options +FollowSymLinks

দ্রষ্টব্য: ".htaccess" ফাইলের ভিতরে পুনরায় লেখার নিয়ম সক্ষম করতে "AllowOverride All" ফাইলটি বিশ্বব্যাপী মূল কনফিগারেশনে উপস্থিত থাকতে হবে।

9. সার্ভার সাইড অন্তর্ভুক্ত এবং সিজিআই এক্সিকিউশন বন্ধ করুন

প্রয়োজন না থাকলে আমরা সার্ভারের দিকটি (Mod_inc समावेश) এবং সিজিআই এক্সিকিউশনটি বন্ধ করতে পারি এবং এটি করার জন্য আমাদের মূল কনফিগারেশন ফাইলটি পরিবর্তন করতে হবে।

Options -Includes
Options -ExecCGI

আমরা ডিরেক্টরি ট্যাগ সহ একটি বিশেষ ডিরেক্টরিতে এটি করতে পারি। এখানে এই উদাহরণে, আমরা "/ var/www/html/ওয়েব 1" ডিরেক্টরিটির জন্য অন্তর্ভুক্ত এবং সিজি ফাইলের মৃত্যুদন্ড বন্ধ করছি।

<Directory "/var/www/html/web1">
Options -Includes -ExecCGI
</Directory>

এখানে বিকল্পের নির্দেশনা দিয়ে কিছু অন্যান্য মান চালু বা বন্ধ করা যেতে পারে।

  1. সমস্ত বিকল্প - একবারে সমস্ত বিকল্প সক্ষম করতে। এটি ডিফল্ট মান, আপনি যদি অ্যাপাচি কনফ ফাইল বা .htaccess এ স্পষ্টভাবে কোনও মান নির্দিষ্ট করতে না চান তবে
  2. বিকল্পগুলি নওেক্সেক - এই বিকল্পটি কোনও কমান্ড বা সিজিআই ফাইলগুলিতে এক্সিকিউট করার অনুমতি ব্যতীত সার্ভার সাইডকে অন্তর্ভুক্ত করতে সক্ষম করে
  3. বিকল্প মাল্টিভিউগুলি - মোড_নিগোটিয়েশন মডিউল সহ সামগ্রী মাল্টিভিউগুলিকে আলোচনার অনুমতি দেয়
  4. বিকল্পগুলি সিমলিঙ্কসআইফোনওয়্যার ম্যাচ - এটি ফলোসিমলিংকের অনুরূপ। তবে, এটি কেবল তখনই অনুসরণ করবে যখন মালিকটি লিঙ্কযুক্ত এবং মূল ডিরেক্টরিতে এটি লিঙ্ক করা আছে তার মধ্যে একই হবে same

10. অনুরোধের আকার সীমাবদ্ধ করুন

ডিফল্টরূপে এইচটিটিপি অনুরোধের মোট আকারের উপরে অ্যাপাচি-র কোনও সীমা নেই un আমরা ডিরেক্টরি ট্যাগ সহ একটি অ্যাপাচি নির্দেশিকার "লিমিটরেক্সটবডি" এর অনুরোধের আকার সীমাবদ্ধ করতে পারি।

আপনি অনুরোধ সংস্থায় অনুমোদিত 0 (আনলিমিটেড) থেকে 2147483647 (2 গিগাবাইট) পর্যন্ত বাইটে মান সেট করতে পারেন। আপনি আপনার সাইটের প্রয়োজন অনুসারে এই সীমাটি সেট করতে পারেন, মনে করুন আপনার কাছে এমন কোনও সাইট রয়েছে যেখানে আপনি আপলোডের অনুমতি দেন এবং আপনি কোনও নির্দিষ্ট ডিরেক্টরিতে আপলোডের আকার সীমাবদ্ধ করতে চান।

এখানে এই উদাহরণে, ব্যবহারকারীর আপলোডগুলি একটি ডিরেক্টরি যা ব্যবহারকারীদের দ্বারা আপলোড করা ফাইল থাকে। আমরা এর জন্য 500 কে সীমাবদ্ধতা রাখছি।

<Directory "/var/www/myweb1/user_uploads">
   LimitRequestBody 512000
</Directory>

১১. ডিডিওএস আক্রমণ এবং কঠোরতা রক্ষা করুন

ঠিক আছে, এটা সত্য যে আপনি নিজের ওয়েবসাইটকে ডিডোস আক্রমণ থেকে সম্পূর্ণরূপে রক্ষা করতে পারবেন না। এখানে কয়েকটি নির্দেশনা রয়েছে যা আপনাকে এটিতে নিয়ন্ত্রণ রাখতে সহায়তা করতে পারে।

  1. টাইমআউট: এই নির্দেশিকাটি আপনাকে সার্ভারের ব্যর্থ হওয়ার আগে নির্দিষ্ট ইভেন্টগুলি শেষ হওয়ার জন্য কতটা সময় অপেক্ষা করবে তা সেট করতে দেয়। এর ডিফল্ট মান 300 সেকেন্ড। ডিডিওএস আক্রমণগুলির অধীন এমন সাইটগুলিতে এই মানটি কম রাখাই ভাল। এই মানটি সম্পূর্ণরূপে আপনি যেভাবে আপনার ওয়েবসাইটে পাচ্ছেন অনুরোধের উপর নির্ভর করে। দ্রষ্টব্য: এটি সিজিআই স্ক্রিপ্টগুলির সাথে সমস্যা তৈরি করতে পারে
  2. ম্যাক্সক্লিয়েন্টস: এই নির্দেশিকাটি আপনাকে সংযোগগুলির সীমা নির্ধারণ করতে দেয় যা একই সাথে পরিবেশন করা হবে। প্রতিটি নতুন সংযোগ এই সীমা পরে সারিবদ্ধ করা হবে। এটি প্রেফার্ক এবং ওয়ার্কার উভয় এমপিএমের সাথে উপলব্ধ। এর ডিফল্ট মান 256
  3. KeepAliveTimeout: সংযোগটি বন্ধ করার আগে সার্ভারের পরবর্তী সময়ের জন্য অপেক্ষা করা সময়ের পরিমাণ। ডিফল্ট মান 5 সেকেন্ড।
  4. সীমাবদ্ধতাফিল্ডস: এটি আমাদের HTTP অনুরোধের শিরোনাম ক্ষেত্রগুলির সংখ্যার উপর একটি সীমা নির্ধারণ করতে সহায়তা করে যা ক্লায়েন্টদের কাছ থেকে গ্রহণযোগ্য হবে। এর ডিফল্ট মান ১০০ D যদি ডিডিএস আক্রমণগুলি এত বেশি http অনুরোধ শিরোনামের ফলস্বরূপ ঘটে থাকে তবে এই মানটি হ্রাস করার পরামর্শ দেওয়া হয়
  5. সীমাবদ্ধতাফিল্ডসাইজ: এটি আমাদের HTTP অনুরোধ শিরোনামে একটি আকার সীমা নির্ধারণ করতে সহায়তা করে

12. অ্যাপাচি লগিং সক্ষম করুন

অ্যাপাচি আপনাকে আপনার ওএস লগিং থেকে স্বতন্ত্রভাবে লগিং করতে দেয়। অ্যাপাচি লগিং সক্ষম করা বুদ্ধিমানের কাজ, কারণ এটি আরও তথ্য সরবরাহ করে যেমন আপনার ওয়েব সার্ভারের সাথে ইন্টারেক্ট করেছেন এমন ব্যবহারকারীদের দ্বারা প্রবেশ করা আদেশগুলি commands

এটি করতে আপনাকে Mod_log_config মডিউলটি অন্তর্ভুক্ত করতে হবে। অ্যাপাচি-র সাথে লগ-সম্পর্কিত তিনটি মূল নির্দেশিকা রয়েছে।

  1. স্থানান্তরলগ: একটি লগ ফাইল তৈরি করা হচ্ছে
  2. লগফর্ম্যাট: একটি কাস্টম ফর্ম্যাট নির্দিষ্ট করে
  3. কাস্টমলগ: একটি লগ ফাইল তৈরি এবং ফর্ম্যাট করা

ভার্চুয়াল হোস্টিং করছেন এমন কোনও নির্দিষ্ট ওয়েবসাইটের জন্য আপনি এগুলি ব্যবহার করতে পারেন এবং তার জন্য আপনার এটি ভার্চুয়াল হোস্ট বিভাগে নির্দিষ্ট করা দরকার। উদাহরণস্বরূপ, এখানে লগিং সক্ষম সহ আমার ওয়েবসাইট ভার্চুয়াল হোস্ট কনফিগারেশন।

<VirtualHost *:80>
DocumentRoot /var/www/html/example.com/
ServerName www.example.com
DirectoryIndex index.htm index.html index.php
ServerAlias example.com
ErrorDocument 404 /story.php
ErrorLog /var/log/httpd/example.com_error_log
CustomLog /var/log/httpd/example.com_access_log combined
</VirtualHost>

13. এসএসএল শংসাপত্র সহ অ্যাপাচি সুরক্ষিত করা

সর্বশেষে, তবে কমপক্ষে এসএসএল শংসাপত্র নয়, আপনি এসএসএল শংসাপত্রের সাহায্যে আপনার সমস্ত যোগাযোগ এনক্রিপ্ট করা পদ্ধতিতে সুরক্ষিত করতে পারেন। মনে করুন আপনার একটি ওয়েবসাইট রয়েছে যাতে লোকেরা তাদের লগইন শংসাপত্রগুলি প্রমাণ করে লগইন করে বা আপনার কাছে একটি ই-কমার্স ওয়েবসাইট রয়েছে যেখানে লোকেরা তাদের ব্যাঙ্কের বিশদ বা পণ্য কেনার জন্য ডেবিট/ক্রেডিট কার্ড বিশদ সরবরাহ করে, ডিফল্টরূপে আপনার ওয়েব সার্ভার এই বিবরণগুলি সরল - পাঠ্যে প্রেরণ করে ফর্ম্যাট তবে আপনি যখন আপনার ওয়েবসাইটগুলিতে এসএসএল শংসাপত্র ব্যবহার করেন, অ্যাপাচি এনক্রিপ্ট করা পাঠ্যে এই সমস্ত তথ্য প্রেরণ করে।

আপনি নেমচিপ ডটকমের মতো অনেকগুলি এসএসএল শংসাপত্রগুলি কিনতে পারেন। যদি আপনি খুব ছোট ওয়েব ব্যবসা চালিয়ে যাচ্ছেন এবং কোনও এসএসএল শংসাপত্র কিনতে ইচ্ছুক না হন তবে আপনি নিজের ওয়েবসাইটে স্ব স্বাক্ষরিত শংসাপত্র নির্ধারণ করতে পারেন। অ্যাপিএল এসএসএল শংসাপত্র সমর্থন করতে Mod_ssl মডিউল ব্যবহার করে।

# openssl genrsa -des3 -out example.com.key 1024
# openssl req -new -key example.com.key -out exmaple.csr
# openssl x509 -req -days 365 -in example.com.com.csr -signkey example.com.com.key -out example.com.com.crt

একবার আপনার শংসাপত্র তৈরি এবং স্বাক্ষর করা হয়েছে। এখন আপনাকে এটি অ্যাপাচি কনফিগারেশনে যুক্ত করতে হবে। ভিএম এডিটর সহ প্রধান কনফিগারেশন ফাইলটি খুলুন এবং নিম্নলিখিত লাইনগুলি যুক্ত করুন এবং পরিষেবাটি পুনরায় চালু করুন।

<VirtualHost 172.16.25.125:443>
        SSLEngine on
        SSLCertificateFile /etc/pki/tls/certs/example.com.crt
        SSLCertificateKeyFile /etc/pki/tls/certs/example.com.key
        SSLCertificateChainFile /etc/pki/tls/certs/sf_bundle.crt
        ServerAdmin [email 
        ServerName example.com
        DocumentRoot /var/www/html/example/
        ErrorLog /var/log/httpd/example.com-error_log
        CustomLog /var/log/httpd/example.com-access_log common
</VirtualHost>

আপনার ব্রাউজারটি খুলুন, https://example.com টাইপ করুন এবং আপনি নতুন স্বাক্ষরিত শংসাপত্রটি দেখতে সক্ষম হবেন।

এই কয়েকটি সুরক্ষা টিপস যা আপনি আপনার অ্যাপাচি ওয়েব সার্ভার ইনস্টলেশনটি সুরক্ষিত করতে ব্যবহার করতে পারেন। আরও কার্যকর সুরক্ষা টিপস এবং ধারণাগুলির জন্য, অ্যাপাচি এইচটিটিপি সার্ভারের অফিশিয়াল অনলাইন ডকুমেন্টেশন দেখুন।