
به اشتراک بگذارید

به اشتراک بگذارید
آموزش نصب GeoIP در لینوکس یکی از حیاتیترین مهارتها برای هر مدیر سرور در سال 2025 است؛ چرا که امنیت و شخصیسازی محتوا اکنون بیش از هر زمان دیگری به “مکان” کاربر وابسته است. در دنیای امروز، شناسایی اینکه یک درخواست از کدام کشور یا شهر ارسال شده، به شما کمک میکند تا حملات سایبری را دفع کرده و یا محتوای اختصاصی برای کاربران خود نمایش دهید.
در سال 2024 و 2025، با تغییرات گسترده در زیرساختهای MaxMind، روشهای قدیمی دیگر پاسخگو نیستند. در این مقاله ما با استفاده از متدولوژیهای جدید، موارد زیر را بررسی میکنیم:
اگر به دنبال پایداری و امنیت ۱100 درصدی هستید، این راهنما دقیقاً برای شماست.
حتماً زمانی که این مقاله را باز کردهاید، به دنبال راهی برای فیلتر کردن ترافیک مزاحم و یا بهینهسازی فروشگاه اینترنتی خود بر اساس لوکیشن کاربران هستید. ما در تیم فنی وبداده، بارها با چالش حملات Brute-force از کشورهای خاص روبرو شدهایم و GeoIP همیشه فرشته نجات ما بوده است؛ پس همراه ما باشید تا این تکنولوژی را به صورت گامبهگام و عملی روی سرور خود سوار کنید. 😉👇
آنچه در این مقاله میخوانید:

GeoIP در واقع یک پایگاه داده عظیم است که شامل بازههای آدرس IP و انتساب آنها به موقعیتهای فیزیکی روی کره زمین است. این دیتابیس مثل یک “دفترچه تلفن جهانی” عمل میکند که به جای نام افراد، موقعیت مکانی آنها را بر اساس شماره تماس (IP) نگه میدارد.
ساختار فنی GeoIP در سال 2025 بر پایه فرمت MMDB (MaxMind DB) است که سرعت جستجوی فوقالعاده بالایی دارد. تصور کنید IP کاربر مثل “شماره واحد یک آپارتمان” است؛ GeoIP به شما میگوید این آپارتمان در کدام بلوک (شهر) و کدام منطقه (کشور) قرار گرفته است.
نمودار جریان داده GeoIP:
درخواست کاربر (IP)
⬇️
سرور لینوکس
⬇️
[کتابخانه libmaxminddb]
⬇️
[فایل GeoLite2.mmdb] ───> { کشور: ایران، شهر: تهران }
⬇️
اعمال قانون (مثلاً اجازه دسترسی یا هدایت به صفحه خاص)
.dat کاملاً منسوخ شده و در سال ۲2025 حتماً باید از فرمت .mmdb استفاده کنید تا با ماژولهای جدید سازگار باشد.استفاده از این ابزار فقط یک “آپشن” نیست، بلکه برای سرورهای حرفهای یک “ضرورت” است. دلایل اصلی که شما را مجاب به استفاده از آن میکند عبارتند از:
قبل از هر چیز، شما به یک حساب کاربری در سایت MaxMind نیاز دارید. از سال 2019 به بعد، برای دانلود دیتابیسهای رایگان (GeoLite2) نیز داشتن اکانت الزامی است.
License Key.wget و curl.
در این بخش همراه تیم وبداده باشید تا به صورت عملی و ترمینالی، ابزارهای مورد نیاز را نصب کنیم. ما از سناریوی زیر برای این آموزش استفاده میکنیم:
نمودار سناریو وبداده:
Webdade.com Server
1🖥️ OS: Ubuntu 24.04 LTS
2🗄️ Database: GeoLite2-Country
3💾 Tool: mmdblookup
ابتدا باید مخازن را آپدیت کرده و کتابخانه اصلی را نصب کنیم. این کتابخانه به سیستمعامل اجازه میدهد فایلهای دیتابیس را بخواند.
sudo apt update
sudo apt install libmaxminddb0 libmaxminddb-dev mmdb-bin ◀️ توضیح: دستور mmdb-bin ابزاری به نام mmdblookup را به سرور شما اضافه میکند که برای تست دستی IPها عالی است.

which mmdblookup از آنجایی که شرکتهای ارائهدهنده اینترنت مدام رنج IPهای خود را تغییر میدهند، دیتابیس شما باید آپدیت باشد.
sudo add-apt-repository ppa:maxmind/ppa
sudo apt update
sudo apt install geoipupdate 
سپس باید فایل /etc/GeoIP.conf را ویرایش کرده و AccountID و LicenseKey خود را که از پنل MaxMind گرفتهاید، وارد کنید.
برای اینکه بتوانید در وبسایت خود از این قابلیت استفاده کنید، باید ماژول آن را در Nginx فعال کنید.
نصب ماژول مخصوص برای انجیناکس
sudo apt install libnginx-mod-http-geoip2 
سپس در فایل تنظیمات Nginx (nginx.conf) بلاک زیر را اضافه کنید:
geoip2 /var/lib/GeoIP/GeoLite2-Country.mmdb {
$geoip2_data_country_code country iso_code;
} یکی از جذابترین بخشها، مسدودسازی دسترسی است. فرض کنید میخواهید دسترسی تمام کشورهای دنیا به جز ایران را به بخش مدیریت سایت خود ببندید.
| روش مسدودسازی | ابزار مورد نیاز | سطح امنیت |
| لایه وبسرور | Nginx / Apache | متوسط (فقط پورت 80/443) |
| لایه فایروال | CSF / IPTables | عالی (تمام پورتها) |
مثال عملی در Nginx برای فیلتر کردن ترافیک بر اساس کشور:
if ($geoip2_data_country_code != "IR") {
return 403;
} این کد باعث میشود هر کسی که IP او متعلق به ایران نباشد، با خطای Forbidden روبرو شود؛ ساده، سریع و فوقالعاده کاربردی!
ما در وبداده همیشه با شما صادق هستیم. نصب GeoIP در لینوکس علیرغم مزایای زیاد، چالشهایی هم دارد:
برای اجرای بدون نقص تنظیمات GeoIP، شما به سروری نیاز دارید که در شبکه پایدار باشد و محدودیتی برای دریافت آپدیتها نداشته باشد. وبداده با ارائه سرورهای باکیفیت، این مسیر را برای شما هموار کرده است.
✅ مزایای استفاده از سرورهای وبداده:
آموزش نصب GeoIP در لینوکس به شما قدرت میدهد تا فراتر از یک ادمین معمولی عمل کنید. با پیادهسازی گامهایی که در این مقاله گفته شد، سرور شما اکنون هوشمندتر، ایمنتر و هدفمندتر از قبل شده است. در سال 2025، داشتن کنترل روی اینکه چه کسی از کجا به سرور شما وصل میشود، یک مزیت رقابتی بزرگ است.
فراموش نکنید که همیشه دیتابیسهای خود را آپدیت نگه دارید و از تنظیمات فایروال برای تکمیل امنیت استفاده کنید. امیدوارم این مقاله از بلاگ وبداده برای شما مفید بوده باشد.
بله، برای استفادههای عمومی رایگان است اما نیاز به ثبتنام در MaxMind و دریافت لایسنس کی دارد.