ArangoDB একটি শক্তিশালী মাল্টি-মডেল ডাটাবেস, এবং ডেটার নিরাপত্তা নিশ্চিত করা অত্যন্ত গুরুত্বপূর্ণ। সঠিক সিকিউরিটি প্র্যাকটিসগুলো অনুসরণ করে আপনি আপনার ডাটাবেসকে অপ্রত্যাশিত অ্যাক্সেস, ডেটা লিক বা সিস্টেমের সমস্যা থেকে রক্ষা করতে পারবেন। নিচে কিছু গুরুত্বপূর্ণ ArangoDB সিকিউরিটি বেস্ট প্র্যাকটিস দেওয়া হলো যা আপনার ডাটাবেসকে নিরাপদ রাখবে।
ডিফল্টভাবে, ArangoDB-এ অটো-লগিন সক্ষম থাকে। আপনাকে অবশ্যই অথেনটিকেশন সক্রিয় করতে হবে এবং ভূমিকা ও অনুমতি ব্যবহার করে অ্যাক্সেস নিয়ন্ত্রণ করতে হবে।
--server.authentication
কনফিগারেশনটি true
করতে হবে।--server.authentication true
# অ্যাডমিন ব্যবহারকারী তৈরি
curl -X POST --data '{"username": "admin", "password": "securepassword"}' \
http://localhost:8529/_db/_system/_api/user
# শুধুমাত্র পড়ার অধিকারযুক্ত ব্যবহারকারী তৈরি
curl -X POST --data '{"username": "readonly", "password": "readonlypassword", "active": true, "extra": { "enabled": true }}' \
http://localhost:8529/_db/_system/_api/user
ডেটা ট্রান্সমিশনের সময় SSL/TLS এনক্রিপশন ব্যবহার করুন, যাতে ডেটার সুরক্ষা নিশ্চিত থাকে এবং ইভাসড্রপিং বা ট্যাম্পারিং থেকে রক্ষা পায়।
arangod.conf
ফাইলে SSL কনফিগারেশন যোগ করুন:--server.ssl.keyfile /path/to/ssl/keyfile
--server.ssl.certfile /path/to/ssl/certfile
--server.ssl.protocols TLSv1.2,TLSv1.3
--server.ssl.verify-servers true
--server.ssl.force-ssl
ব্যবহার করুন:--server.ssl.force-ssl true
ArangoDB সার্ভারে যেসব IP থেকে অ্যাক্সেস করা যাবে তা নিয়ন্ত্রণ করুন। IP হোয়াইটলিস্টিং ব্যবহার করে আপনি অনুমোদিত IP গুলি নির্দিষ্ট করতে পারেন, যা নিরাপত্তা বৃদ্ধি করে।
এটি arangod.conf
ফাইলের --server.endpoint
অপশনের মাধ্যমে করতে পারবেন:
--server.endpoint tcp://localhost:8529
এটি শুধুমাত্র লোকালহোস্ট থেকে অ্যাক্সেস অনুমতি দেবে। আপনি নির্দিষ্ট IP রেঞ্জও নির্ধারণ করতে পারেন।
আপনার ডেটার নিয়মিত ব্যাকআপ তৈরি করুন এবং এনক্রিপ্টেড ব্যাকআপ ব্যবহার করুন, যাতে ডেটা হারানোর ঝুঁকি কমানো যায়।
ArangoDB-এর বিল্ট-ইন টুল ব্যবহার করে ব্যাকআপ করুন এবং সেগুলো নিরাপদ স্থানে সংরক্ষণ করুন।
ব্যাকআপ সংরক্ষণে ফাইল সিস্টেম এনক্রিপশন বা VeraCrypt এর মতো টুল ব্যবহার করুন, যাতে ব্যাকআপ ডেটা সুরক্ষিত থাকে।
ArangoDB সার্ভারের নিরাপত্তা নিশ্চিত করা ডাটাবেস নিরাপত্তার জন্য গুরুত্বপূর্ণ। আপনাকে সার্ভারের সাধারণ সিকিউরিটি প্র্যাকটিসগুলো অনুসরণ করতে হবে।
ArangoDB Role-Based Access Control (RBAC) সমর্থন করে, যা ব্যবহারকারীদের নির্দিষ্ট ভূমিকার উপর ভিত্তি করে অনুমতি প্রদান করতে সহায়ক।
curl -X POST --data '{"username": "admin", "password": "adminpassword", "active": true, "extra": { "enabled": true }}' \
http://localhost:8529/_db/_system/_api/user
# ভূমিকা বরাদ্দ করা
curl -X PATCH --data '{"roles": ["admin"]}' \
http://localhost:8529/_db/_system/_api/user/admin
Audit logs আপনার সিস্টেমের কার্যক্রম ট্র্যাক করে এবং কোন অস্বাভাবিক কার্যক্রম শনাক্ত করতে সাহায্য করে।
arangod.conf
ফাইলে অডিট লগ সক্রিয় করতে নিচের কনফিগারেশনটি ব্যবহার করুন:
--audit.enable true
--audit.filename /path/to/audit.log
এটি সমস্ত কার্যক্রম যেমন লগইন, ডেটা পরিবর্তন, কনফিগারেশন পরিবর্তন ট্র্যাক করবে।
Database এবং collection-level security ব্যবহার করে আরো সুনির্দিষ্টভাবে ডেটা অ্যাক্সেস নিয়ন্ত্রণ করুন। ব্যবহারকারীদের নির্দিষ্ট ডাটাবেস এবং কালেকশন সীমাবদ্ধ করতে ভূমিকা ব্যবহার করুন।
নিয়মিতভাবে আপনার ArangoDB ইনস্ট্যান্সের সিকিউরিটি অডিট করুন এবং সিস্টেমের সর্বশেষ সিকিউরিটি প্যাচ প্রয়োগ করুন।
এই ArangoDB সিকিউরিটি বেস্ট প্র্যাকটিস গুলি আপনাকে আপনার ডাটাবেস সিস্টেমকে নিরাপদ রাখতে সহায়ক হবে। অথেনটিকেশন, SSL/TLS এনক্রিপশন, IP হোয়াইটলিস্টিং, এবং রোল-বেসড অ্যাক্সেস কন্ট্রোল এর মাধ্যমে সিস্টেম নিরাপত্তা নিশ্চিত করতে পারেন। নিয়মিত ব্যাকআপ, অডিট লগিং, এবং সার্ভার সিকিউরিটি এর মাধ্যমে নিরাপত্তা আরও শক্তিশালী করা যায়।
common.read_more