مقاله زیر تنظیمات استاندارد و تنظیمات پورت را برای استفاده، زمانی که به چگونگی امنیت یک خوشه Riak فکر می کنید، مورد بحث قرار می دهد.

دو کلاس  کنترل دسترسی Riak وجود دارد:

  •  دیگر گره های Riak شرکت کننده در cluster (خوشه)
  • ساخت client با استفاده از خوشه Riak

 تنظیمات برای دسترسی به هر دو گروه در app.config قرار گرفته است. دستورات پیکربندی برای همه دسترسی client در پایان ip و پورت: web_ip ، web_port ، pb_ip ، و pb_port است.

 توجه داشته باشید که  پیکربندی فایروال شما به ورودی TCP برای دسترسی به آن پورت ها و آدرس های ip وترکیب های پورت اجازه می دهد.استثنا دستورالعمل های  handoff_ip و handoff_port. تنهاارتباطات بین گره های Riak هستند.

 از مکانیزم توزیع Erlang برای اکثر ارتباطات بین گره استفاده می کند. Riak ماشین های دیگر در این حلقه را با استفاده از شناسه Erlang شناسایی می کند ( مانند: riak@10.9.8.7 ).

 Erlang این  شناسه های گره را برای یک پورت TCP در یک ماشین از طریق (epmd) در حال اجرا بر روی هر یک از گره خوشه حل می کند.

به طور پیش فرض، epmd به TCP پورت 4369 متصل می شود و به رابط کلمات گوش می دهد.  برای ارتباطات بین گره، Erlang از یک پورت غیر قابل پیش بینی به طور پیش فرض استفاده می کند، و آن به پورت 0، که به معنی اولین پورت موجود است متصل می شود.

 برای سهولت پیکربندی فایروال، Riak می تواند از طریق app.config  دستور مترجم Erlang برای استفاده از طیف محدودی از پورت ها پیکربندی شود. به عنوان مثال، برای محدود کردن طیف وسیعی از پورت ها Erlang  برای 6000-7999  ارتباط بین گره Erlang استفاده می شود، خطوط زیر را در فایل app.config  بر روی هر گره Riakاضافه کنید :

 { kernel, [ { kernel, [
            {inet_dist_listen_min, 6000},
            {inet_dist_listen_max, 7999}
          ]},

خطوط فوق  باید به بالاترین سطح لیست در app.config ، در همان سطح تمام برنامه های کاربردی دیگر اضافه شود (مثلا riak_core).

سپس پیکربندی فایروال شما اجازه دسترسی ورودی به TCP پورت 6000 از طریق 7999 از هر کدام از شبکه (ها) شامل گره Riak شما را می دهد.

 گره Riak در یک خوشه باید قادر به برقراری ارتباط آزادانه با یکدیگر در درگاه های زیر را داشته باشد:

  • شنونده epmd: TCP: 4369
  • شنونده handoff_port: TCP: 8099
  • طیف وسیعی از پورت مشخص شده در app.config

مشتریان Riak باید قادر به ارتباط با حداقل یک ماشین در یک خوشه Riak در درگاه های زیر باشند:

  • web_port: TCP:8098
  • pb_port: TCP:8087 

نکته مهم

این فرایند epmd برای اجرا بر روی یک گره داده شده حتی بعد از خروج همه مفسران Erlang ادامه خواهد داشت.  اگر inet_dist_listen_min و inet_dist_listen_max به app.config اضافه شد، epmd باید از بین رفته تا تنظیمات جدید آن را انتخاب کنید.

 

منبع : docs.basho.com

ترجمه : الهام قاسمی