AuthMe সেটআপ
আপনার সার্ভারের জন্য লগইন ও রেজিস্ট্রেশন সেট করুন এবং রেডিমেড লাইন পান config.yml প্রতিটির ব্যাখ্যাসহ।
প্রিসেট
config.yml-এ কী বদলাবেন: 0
এখন সবকিছু ডিফল্ট কনফিগের সাথে মিলছে। একটি প্রিসেট বাছুন বা নিচের সেটিংস বদলান, পেস্ট করার লাইনগুলো এখানে দেখা যাবে।
বেসিক
মেসেজের ভাষা ও অ্যাকাউন্ট মোড
settings.messagesLanguageAuthMe যে ভাষায় খেলোয়াড়দের “রেজিস্টার করুন” ও “পাসওয়ার্ড দিন” বলে। ডিফল্টে ইংরেজি; রাশিয়ান সার্ভারের জন্য ru দিন।
settings.perPlayerLocaleপ্রতিটি খেলোয়াড় তার গেমের ভাষায় মেসেজ পায়, আর উপরের ভাষাটি ফলব্যাক হিসেবে ব্যবহৃত হয়।
settings.serverNameপ্লাগইনের মেসেজ ও ইমেইলে যোগ করা হয়।
settings.enablePremiumঅফিসিয়াল Minecraft অ্যাকাউন্ট থাকা খেলোয়াড়রা পাসওয়ার্ড ছাড়াই জয়েন করে, বাকিরা স্বাভাবিকভাবে। প্লাগইন নিজেই যাচাইয়ের পদ্ধতি বেছে নেয়।
settings.preventOtherCaseXephi রেজিস্টার করা থাকলে XEPHI ও xephi লগ ইন করতে পারবে না। অক্ষরের কেস বদলে প্রতারণা থেকে রক্ষা করে।
রেজিস্ট্রেশন
খেলোয়াড় প্রথমবার কীভাবে অ্যাকাউন্ট তৈরি করে
settings.registration.enabledএটি বন্ধ করলে নতুন খেলোয়াড়রা অ্যাকাউন্ট তৈরি করতে পারবে না।
settings.registration.forceরেজিস্টার ও লগ ইন ছাড়া খেলোয়াড় কিছুই করতে পারবে না। ব্যতিক্রম নিচের রেস্ট্রিকশন অংশে সেট করা হয়।
settings.registration.typePASSWORD: খেলোয়াড় নিজের পাসওয়ার্ড বেছে নেয়। EMAIL: একটি পাসওয়ার্ড তৈরি করে তাদের দেওয়া ইমেইল ঠিকানায় পাঠানো হয়।
settings.registration.secondArgNONE: পাসওয়ার্ড একবারই দিতে হয়। CONFIRMATION: দ্বিতীয় শব্দ হিসেবে এটি পুনরায় দিতে হয়। EMAIL_OPTIONAL ও EMAIL_MANDATORY: দ্বিতীয় আর্গুমেন্টটি একটি ইমেইল, ঐচ্ছিক বা আবশ্যক।
settings.registration.messageIntervalপ্লাগইন কত ঘন ঘন খেলোয়াড়কে “লগ ইন করুন বা রেজিস্টার করুন” মেসেজটি পুনরাবৃত্তি করে।
settings.restrictions.maxRegPerIpএকটি ঠিকানা থেকে কতবার রেজিস্টার করা যাবে। 0 মানে কোনো সীমা নেই। একই বাড়ি থেকে একসাথে খেলা মানুষদের জন্য এক কঠিন।
settings.restrictions.registerTimeoutখেলোয়াড়ের রেজিস্টার করার জন্য কত সেকেন্ড সময় আছে। 0 মানে কখনো কিক নয়।
settings.registration.forceLoginAfterRegisterসফলভাবে রেজিস্টার করার পর খেলোয়াড়কে কমান্ড দিয়ে আবার লগ ইন করতে হবে।
settings.registration.forceKickAfterRegisterরেজিস্টার করার পরপরই খেলোয়াড়কে কিক করা হয় যাতে সে আবার জয়েন করে। উপরের /login আবশ্যকের সাথে একসাথে চালু করবেন না।
সাইন ইন
খেলোয়াড় পাসওয়ার্ড দিলে কী হয়
settings.restrictions.loginTimeoutখেলোয়াড়ের পাসওয়ার্ড দেওয়ার জন্য কত সেকেন্ড সময় আছে। 0 মানে কখনো কিক নয়।
settings.restrictions.kickOnWrongPasswordভুল করার পরপরই খেলোয়াড়কে সার্ভার থেকে কিক করা হয়। ব্রুট ফোর্সের বিরুদ্ধে সাহায্য করে কিন্তু নিয়মিত খেলোয়াড়দের বিরক্ত করে।
settings.restrictions.kickNonRegisteredঅ্যাকাউন্ট ছাড়া খেলোয়াড় জয়েন করার সাথে সাথেই কিক হয়। এটি প্রাইভেট সার্ভার মোড।
settings.restrictions.ForceSingleSessionএকই নিকনেম দিয়ে কেউ জয়েন করলে অনলাইন খেলোয়াড়কে কিক করা যায় না (“Logged in from another Location”)। একটি সুপরিচিত সেশন হাইজ্যাকিং ফাঁক বন্ধ করে।
settings.restrictions.maxLoginPerIpএকটি ঠিকানা থেকে কতজন খেলোয়াড় লগ ইন করতে পারবে। 0 মানে কোনো সীমা নেই।
settings.restrictions.maxJoinPerIpএকটি ঠিকানা থেকে কতটি সংযোগ অনুমোদিত। 0 মানে কোনো সীমা নেই।
সেশন
যাতে প্রতিবার ডিসকানেক্টের পর পাসওয়ার্ড দিতে না হয়
settings.sessions.enabledপ্লাগইন নিকনেম ও IP মনে রাখে। মেয়াদ শেষ হওয়ার আগে খেলোয়াড় একই ঠিকানা থেকে আবার কানেক্ট করলে পাসওয়ার্ড চাওয়া হয় না।
settings.sessions.timeoutকত মিনিট পর আবার পাসওয়ার্ড চাওয়া হবে। IP পরিবর্তন হলেও সেশন শেষ হয়।
লগইনের আগে
পাসওয়ার্ড দেওয়ার আগে খেলোয়াড় কী করতে পারবে
settings.restrictions.allowChatবন্ধ থাকলে গেস্ট চ্যাট করতে পারবে না। নিচে তালিকাভুক্ত কমান্ড ছাড়া বাকি সব কমান্ডও ব্লক থাকবে।
settings.restrictions.hideChatযে খেলোয়াড় লগইন করেনি সে অন্য খেলোয়াড়দের চ্যাট দেখতে পাবে না।
settings.restrictions.allowCommandsবাকি সব ব্লক থাকে। এখান থেকে /login বা /register সরালে সবাই বাইরে আটকে যাবে।
settings.restrictions.allowMovementগেস্ট চলাচল করতে পারবে। ব্যাসার্ধ নিচে সেট করা আছে।
settings.restrictions.allowedMovementRadiusজয়েন পয়েন্ট থেকে গেস্ট কতদূর হাঁটতে পারবে। 0 মানে কোনো সীমা নেই।
settings.restrictions.teleportUnAuthedToSpawnলগইনের আগে খেলোয়াড় স্পনে থাকে, আর লগইনের পর যেখানে ছিল সেখানে ফিরে যায়। এভাবে কেউ কারও ভিউ থেকে বেস দেখতে পারবে না।
settings.restrictions.ProtectInventoryBeforeLogInলগইন করার আগে গেস্ট নিজের ইনভেন্টরির বিষয়বস্তু দেখতে পাবে না। PacketEvents প্রয়োজন।
প্লাগইনের ডকুমেন্টেশন অনুযায়ী, শুধু PacketEvents ইনস্টল থাকলে কাজ করে।
settings.restrictions.DenyTabCompleteBeforeLoginগেস্ট অটোকমপ্লিটের মাধ্যমে নিকনেম ও কমান্ড দেখতে পাবে না। PacketEvents প্রয়োজন।
settings.applyBlindEffectখেলোয়াড় লগইন না করা পর্যন্ত Blindness ইফেক্ট দিয়ে স্ক্রিন অন্ধকার থাকে।
settings.restrictions.noTeleportAuthMe কখনোই খেলোয়াড়দের সরায় না। অন্য প্লাগইন টেলিপোর্ট সামলালে এবং সংঘর্ষ হলে এটি দরকার।
পাসওয়ার্ড
দৈর্ঘ্য, নিষিদ্ধ পাসওয়ার্ড ও সংরক্ষণ পদ্ধতি
settings.security.minPasswordLengthএর চেয়ে ছোট পাসওয়ার্ড গ্রহণ করা হবে না।
settings.security.passwordMaxLengthপাসওয়ার্ড দৈর্ঘ্যের ঊর্ধ্বসীমা।
settings.security.passwordHashহ্যাশিং অ্যালগরিদম। BCRYPT ও ARGON2 ইচ্ছাকৃতভাবে ধীর, যা ভালো: ব্রুট ফোর্স ব্যয়বহুল হয়ে যায়। তালিকার বাকি মানগুলো দরকার যখন পাসওয়ার্ড ডেটাবেস কোনো ফোরাম ইঞ্জিন থেকে আসে।
লাইভ সার্ভারে অ্যালগরিদম বদলাচ্ছেন? পুরোনোটি settings.security.legacyHashes-এ যোগ করুন, নইলে মানুষ তাদের পাসওয়ার্ড দিয়ে লগইন করতে পারবে না।
settings.security.unsafePasswordsএগুলো পাসওয়ার্ড হিসেবে ব্যবহার করা যাবে না। ছোট হাতের অক্ষরে লিখুন। help অবশ্যই রাখুন: ডকুমেন্টেশন কমান্ডের সাথে সংঘর্ষের বিষয়ে সতর্ক করে।
settings.restrictions.allowedPasswordCharactersএকটি রেগুলার এক্সপ্রেশন। ডিফল্ট [!-~] মানে সব দৃশ্যমান ASCII অক্ষর, যা লেখকরা সুপারিশ করেন।
ইউজারনেম
সার্ভারে কোন নামগুলো আদৌ অনুমোদিত
settings.restrictions.minNicknameLengthএর চেয়ে ছোট নিকনেম ঢুকতে দেওয়া হবে না।
settings.restrictions.maxNicknameLengthMinecraft-এর স্ট্যান্ডার্ড সীমা 16।
settings.restrictions.allowedNicknameCharactersএকটি রেগুলার এক্সপ্রেশন। ডিফল্ট হলো লাতিন অক্ষর, সংখ্যা ও আন্ডারস্কোর, যা গেম নিজেই অনুমোদন করে।
বট ও ব্রুট ফোর্স
গণহারে জয়েন ও পাসওয়ার্ড অনুমানের বিরুদ্ধে সুরক্ষা
Protection.enableAntiBotঅল্প সময়ে অনেক খেলোয়াড় জয়েন করলে প্লাগইন নিজেই সুরক্ষা চালু করে।
Protection.antiBotSensibilityপ্রতি ইন্টারভালে কত জয়েন আক্রমণ হিসেবে গণ্য হয়।
Protection.antiBotIntervalযে সময়সীমার মধ্যে জয়েনগুলো গণনা করা হয়।
Protection.antiBotDurationসক্রিয় হওয়ার পর কত মিনিট সুরক্ষা চালু থাকে।
Protection.quickCommands.denyCommandsBeforeMillisecondsজয়েন করার এত কম সময়ের মধ্যে কোনো কমান্ড এলে সেটি বট এবং প্লেয়ারকে কিক করা হয়।
Security.captcha.useCaptchaকয়েকবার ভুল চেষ্টার পর প্লেয়ারকে একটি কোড লিখতে দেওয়া হয়।
Security.captcha.maxLoginTryকোড চাওয়ার আগে কতটি ভুল অনুমোদিত।
Security.captcha.captchaLengthকোডে কতটি অক্ষর থাকে।
Security.tempban.enableTempbanকোনো ঠিকানা থেকে বারবার ভুল পাসওয়ার্ড দিলে সেই ঠিকানা ব্লক হয়।
Security.tempban.maxLoginTriesঠিকানা ব্যান করার আগে প্লাগইন কতটি ভুল সহ্য করে।
Security.tempban.tempbanLengthসাময়িক ঠিকানা ব্যান কত মিনিট স্থায়ী হয়।
Protection.enableProtectionনিচের দেশের তালিকার ঠিকানা থেকে শুধু লগইন ও রেজিস্ট্রেশন অনুমোদিত। GeoIP ডেটাবেস প্রয়োজন।
Protection.countriesদু-অক্ষরের দেশের কোড। LOCALHOST সার্ভার মেশিন থেকেই লগইনের জন্য।
FAQ
এই লাইনগুলো কোথায় পেস্ট করব?
সার্ভারের plugins/AuthMe/config.yml ফাইলে। বিল্ডার শুধু বদলানো কী-গুলো আউটপুট দেয়, তাদের নেস্টিং অক্ষুণ্ণ রেখে: আপনার ফাইলে একই পাথ খুঁজে মান সেট করুন। পুরো ফাইল বদলানোর দরকার নেই, কারণ এতে এমন সেটিংস আছে যা এখানে নেই। এডিট করার পর সার্ভার রিস্টার্ট করুন বা /authme reload চালান।
প্লাগিনের মেসেজের ভাষা কীভাবে বদলাব?
settings.messagesLanguage-এ আপনার প্রয়োজনীয় ভাষা কোড সেট করুন, যেমন ru। ডিফল্ট হলো en, তাই নতুন ইনস্টল করা AuthMe প্লেয়ারদের সাথে ইংরেজিতে কথা বলে। settings.perPlayerLocale-ও আছে: এটি চালু থাকলে প্রতিটি প্লেয়ার তাদের গেমের ভাষায় মেসেজ পায়, আর উপরের মানটি ফলব্যাক হিসেবে ব্যবহৃত হয়।
প্লেয়াররা অভিযোগ করে প্রতিবার ডিসকানেক্টের পর পাসওয়ার্ড দিতে হয়
সেশন চালু করুন: settings.sessions.enabled-এ true সেট করুন এবং settings.sessions.timeout সেট করুন, যেমন ৩০ মিনিট। প্লাগিন নিকনেম ও IP মনে রাখে, এবং সেই সময়ে একই অ্যাড্রেস থেকে পাসওয়ার্ড চাইবে না। IP বদলালে সেশন শেষ হয়, এবং এটি কনফিগার করা যায় না।
সার্ভারে বট অ্যাটাক হলে কী করব?
প্লাগিনে বিল্ট-ইন অ্যান্টিবট আছে: Protection.enableAntiBot ডিফল্টভাবে চালু, আর Protection.antiBotSensibility নির্ধারণ করে প্রতি ইন্টারভালে কতগুলো জয়েন অ্যাটাক হিসেবে গণ্য হবে। কয়েকবার ভুল পাসওয়ার্ডের পর ক্যাপচা এবং ব্রুট ফোর্সিংয়ের জন্য সাময়িক অ্যাড্রেস ব্যানও সাহায্য করে। উপরের “বট অ্যাটাকের অধীনে” প্রিসেটটি একসাথে সবকিছু চালু করে।
দেশ ফিল্টারে সতর্ক থাকুন
Protection.enableProtection জয়েন করা দেশের তালিকায় সীমাবদ্ধ করে, কিন্তু ডিফল্টভাবে সেই তালিকায় US, GB এবং LOCALHOST থাকে। তালিকা এডিট না করে প্রোটেকশন চালু করলে বাকি সব দেশের প্লেয়াররা জয়েন করতে পারবে না। দেশের কোড দুটি অক্ষরের ISO 3166 কোড।
লাইসেন্সপ্রাপ্ত প্লেয়াররা কি পাসওয়ার্ড ছাড়া জয়েন করতে পারে?
হ্যাঁ, settings.enablePremium সেটিই করে। অফিসিয়াল Minecraft অ্যাকাউন্ট থাকা প্লেয়াররা স্বয়ংক্রিয়ভাবে ভেরিফাই হয় এবং পাসওয়ার্ড দেয় না, বাকিরা স্বাভাবিকভাবে জয়েন করে। প্লাগিন ভেরিফিকেশন পদ্ধতি স্বয়ংক্রিয়ভাবে বেছে নেয়।
পাসওয়ার্ড সংরক্ষণের কোন পদ্ধতি বেছে নেব?
ডিফল্ট হলো SHA256। BCRYPT এবং ARGON2 ইচ্ছাকৃতভাবে ধীরে গণনা করে, আর সেটাই উদ্দেশ্য: ব্রুট ফোর্সিং ব্যয়বহুল হয়ে যায়। গুরুত্বপূর্ণ: লাইভ সার্ভারে অ্যালগরিদম বদলালে পুরোনোটি settings.security.legacyHashes-এ যোগ করুন, নাহলে মানুষ তাদের পাসওয়ার্ড দিয়ে লগইন করতে পারবে না।
লগইনের আগে গেস্ট অন্য কারো বিল্ড দেখতে পারে
settings.restrictions.teleportUnAuthedToSpawn চালু করুন: লগইনের আগে প্লেয়ার স্পনে থাকে, আর লগইনের পর যেখানে ছিল সেখানে ফিরে যায়। এটি সাধারণত চ্যাট লুকানো ও মুভমেন্ট ব্লক করার সাথে ব্যবহৃত হয়।
ডেটা কোথা থেকে আসে
সেটিংসের নাম ও ডিফল্ট মান প্লাগিনের অফিসিয়াল ডকুমেন্টেশন থেকে ১ সেপ্টেম্বর, ২০২৬ তারিখে নেওয়া হয়েছে। বিল্ডারে সেই সেটিংস আছে যেগুলো মানুষ সত্যিই হাতে বদলায়; বাকিগুলো প্লাগিন নিজেই তৈরি করে।