IP တစ်ခုနှင့် port တစ်ခုမှအခြား IP နှင့် port တစ်ခုသို့ traffic ကို redirect

ဆာဗာများကိုစီမံခန့်ခွဲသည့်အခါအသွားအလာကိုပြန်လည်လွှဲပြောင်းပေးသောအရာသည်ပုံမှန်အတိုင်းဖြစ်သည်။

ကျွန်ုပ်တို့တွင် ၀ န်ဆောင်မှုအချို့လည်ပတ်နေသည့်ဆာဗာရှိသော်လည်းမည်သည့်အကြောင်းပြချက်ကြောင့်မဆိုထိုဝန်ဆောင်မှုများကိုကျွန်ုပ်တို့ပြောင်းလဲနိုင်သည်။မသိရပါဘူး) အခြားဆာဗာသို့ ပုံမှန်နှင့်မကြာခဏပြုလုပ်ရမည့်အချက်မှာ DNS မှတ်တမ်းရှိ IP ကိုရိုးရှင်းစွာပြောင်းလဲခြင်းဖြစ်လိမ့်မည်။ သို့သော်တစ်စုံတစ် ဦး ကအိုင်ပီပုံစံကွဲကို အသုံးပြု၍ ၎င်းကိုထိခိုက်လိမ့်မည်။

ဘာလုပ်မလဲ? ... ရိုးရိုးလေး, ထိုဆာဗာမှလက်ခံရရှိသည့်လမ်းကြောင်းကိုထို port မှတဆင့်ထပ်တူဆိပ်ကမ်းရှိအခြား server သို့ပြန်ပို့ပါ။

ဆာဗာ -node ကို -lan-ethernet

အသွားအလာကိုဘယ်လိုပြန်ပြောင်းသလဲ။

ပထမတစ်ခုကတော့ကျွန်တော်တို့ enable လုပ်ထားရမှာပါ ထပ်ဆင့်ပို့ခြင်း ဆာဗာပေါ်တွင်၊ ဒီအရာအတွက်ကျွန်ုပ်တို့သည်အောက်ပါတို့ကိုထားမည်။

echo "1" > /proc/sys/net/ipv4/ip_forward

ဒီသင်ခန်းစာမှာပြထားတဲ့ command အားလုံးကို administrative privileges နဲ့ execute လုပ်ရမယ်။ root user နဲ့တိုက်ရိုက်ကွပ်ဖို့လုပ်ဖို့ငါအကြံပေးလိုတယ်။

ယခင် command သည်သင့်အတွက်အလုပ်မလုပ်လျှင်ဤအခြား command ကိုလည်းသုံးနိုင်သည်။အဲဒါ CentOS မှာဒီလိုဖြစ်ခဲ့တာ):
sysctl net.ipv4.ip_forward=1
ထိုအခါကျွန်ုပ်တို့သည်ကွန်ယက်ကိုပြန်လည်စတင်လိမ့်မည်

service networking restart

CentOS နှင့်အခြားသူများကဲ့သို့ RPM distros များတွင် -

service nertwork restart

ယခုကျွန်ုပ်တို့သည်အရေးကြီးသောအရာသို့ဆက်သွားလိမ့်မည်၊ ဆာဗာမှတဆင့်ပြောပြပါ iptables ဘာ redirect လုပ်မလဲ

iptables -t nat -A PREROUTING -p tcp --dport <puerto receptor> -j DNAT --to-destination <ip final>:<puerto de ip final>

ဆိုလိုသည်မှာငါဖော်ပြခဲ့သောဥပမာကို လိုက်၍ ကျွန်ုပ်တို့၏ဆာဗာမှ port 110 မှတစ်ဆင့်အခြားဆာဗာသို့ပေးပို့သော traffic အားလုံးကိုလမ်းကြောင်းပြောင်းချင်သည်ဆိုပါစို့ (ex: 10.10.0.2110 မှတဆင့်ထိုအသွားအလာကိုလက်ခံရရှိလိမ့်မည်။ဒါကအတူတူပင်ဝန်ဆောင်မှုပါပဲ):

iptables -t nat -A PREROUTING -p tcp --dport 110 -j DNAT --to-destination 10.10.0.2:110

၁၀.၁၀.၀.၂ ဆာဗာသည် packets များသို့မဟုတ်တောင်းဆိုမှုများအားလုံးသည် client ၏ IP မှလာသည်ကိုတွေ့လိမ့်မည်။ သူတို့ကတောင်းဆိုမှုများကိုရေကူးချင်ရင်ဆိုလိုသည်မှာဒုတိယဆာဗာသည်တောင်းဆိုမှုများကိုပထမဆာဗာ၏ IP နှင့်ရောက်ရှိသည်ကိုမြင်သည်။ နောက်တစ်ခုထပ်ထည့်မယ်၊ ဒုတိယစာကြောင်းကိုရေးမယ်။

iptables -t nat -A POSTROUTING -j MASQUERADE

မေးခွန်းအချို့နှင့်အဖြေများ

ဥပမာမှာ (110) နှစ်ကြိမ်လုံးတွင်တူညီသော port ကိုအသုံးပြုခဲ့သည်။ သို့သော်၎င်းတို့သည် traffic ကို port တစ်ခုမှအခြားတစ်ခုသို့ပြသနာမရှိဘဲ redirect နိုင်သည်။ ဥပမာအားဖြင့်၊ ကျွန်ုပ်သည် port 80 မှ 443 ကိုအခြား server တစ်ခုသို့လမ်းကြောင်းလွှဲချင်တယ်ဆိုပါစို့။

iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination 10.10.0.2:443

အမည်ရ iptables၎င်းတို့သည်ကျွန်ုပ်တို့သိထားသောအခြား parameter များအားလုံးကိုသုံးနိုင်သည်။ ဥပမာအားဖြင့်ကျွန်ုပ်တို့သည်သတ်မှတ်ထားသော IP တစ်ခုမှ traffic ကိုသာသာလမ်းကြောင်းပြောင်းလိုပါက၎င်းသည် -s ကိုထည့်သွင်းလိမ့်မည်။ …ဥပမာအားဖြင့် ၁၀.၁၀.၀.၅၁ မှလာသောအသွားအလာကိုသာငါပြန်ပို့လိမ့်မည်။

iptables -t nat -A PREROUTING -p tcp -s 10.10.0.51 --dport 80 -j DNAT --to-destination 10.10.0.2:443

ဒါမှမဟုတ်ကွန်ရက်တစ်ခုလုံး (/ 24):

iptables -t nat -A PREROUTING -p tcp -s 10.10.0.0/24 --dport 80 -j DNAT --to-destination 10.10.0.2:443

ငါတို့သည်လည်း -i နှင့်အတူကွန်ယက် interface ကိုသတ်မှတ်နိုင်ပါတယ် :

iptables -t nat -A PREROUTING -p tcp -i eth1 --dport 80 -j DNAT --to-destination 10.10.0.2:443

ပြီးပါပြီ!

ငါပြောခဲ့သလိုပဲ iptables ဖြစ်တယ်၊ မင်းသိပြီးသားအရာကိုလျှောက်ထားနိုင်တယ်၊ ဒါကြောင့်ဆာဗာကသင်လုပ်ချင်တာကိုအတိအကျလုပ်နိုင်တယ်😉

မေတ္တာနှင့်ကြားလိုက်ပါ၏!

DedicatedServer_SubImage


ဆောင်းပါး၏ပါ ၀ င်မှုသည်ကျွန်ုပ်တို့၏အခြေခံမူများကိုလိုက်နာသည် အယ်ဒီတာအဖွဲ့ကျင့်ဝတ်။ အမှားတစ်ခုကိုသတင်းပို့ရန်ကလစ်နှိပ်ပါ ဒီမှာ.

19 မှတ်ချက်များ, သင့်စွန့်ခွာ

သင်၏ထင်မြင်ချက်ကိုချန်ထားပါ

သင့်အီးမေးလ်လိပ်စာပုံနှိပ်ထုတ်ဝေမည်မဟုတ်ပါ။ တောင်းဆိုနေတဲ့လယ်ယာနှင့်အတူမှတ်သားထားတဲ့ *

*

*

  1. အချက်အလက်အတွက်တာဝန်ရှိသည် - Miguel ÁngelGatón
  2. အချက်အလက်များ၏ရည်ရွယ်ချက်: ထိန်းချုပ်ခြင်း SPAM, မှတ်ချက်စီမံခန့်ခွဲမှု။
  3. တရားဝင်: သင်၏ခွင့်ပြုချက်
  4. အချက်အလက်များ၏ဆက်သွယ်မှု - ဒေတာများကိုဥပဒေအရတာ ၀ န်ယူမှုမှ လွဲ၍ တတိယပါတီများသို့ဆက်သွယ်မည်မဟုတ်ပါ။
  5. ဒေတာသိမ်းဆည်းခြင်း: Occentus ကွန်ယက်များ (အီးယူ) မှလက်ခံသည့်ဒေတာဘေ့စ
  6. အခွင့်အရေး - မည်သည့်အချိန်တွင်မဆိုသင်၏အချက်အလက်များကိုကန့်သတ်၊

  1.   Fer ဟုသူကပြောသည်

    port forwarding ကိုခွင့်ပြုသော firewall မှလည်းလုပ်နိုင်သည်။ (သက်ဆိုင်ရာစည်းမျဉ်းစည်းကမ်းတွေကိုလျှောက်ထား) ။

    1.    KZKG ^ Gaara ဟုသူကပြောသည်

      ဟုတ်ပါတယ်၊ နောက်ဆုံးမှာ Pfsense (သို့) အခြားသူများလို firewall တစ်ခုသည်နောက်ကွယ်မှ iptables ကိုသုံးပါ။

      1.    တော ဟုသူကပြောသည်

        အတိအကျပြောရလျှင်၊ pfsense သည် iptables ကိုအသုံးပြုသည်မဟုတ်၊ pf၊ ၎င်းသည်အတွင်းပိုင်းသည် bsd ဖြစ်ကြောင်းသတိရပါ။

        1.    KZKG ^ Gaara ဟုသူကပြောသည်

          ကောင်းပြီကောင်းပြီ

  2.   က Nicolas ဟုသူကပြောသည်

    အစွန်အဖျားအတွက်ကျေးဇူးတင်ပါတယ်🙂

    ငါသံသယ၏စုံတွဲတစ်တွဲရှိသည်:
    ၁ - ပြောင်းလဲမှုသည်အမြဲတမ်းလား။ ဆာဗာကိုပြန်ဖွင့်တဲ့အခါပျောက်သွားသလား။
    ၂။ ကျွန်ုပ်သည်တူညီသော subnet တွင်ဥပမာ (A, B နှင့် C) မျိုးစုံရှိသည်။ ဥပမာအားဖြင့် A I သည် external IP တစ်ခုသို့ traffic ကို route လုပ်ရန်နှင့် B နှင့် C မှ curls များနှင့်စမ်းသပ်ခြင်းသည်အရာအားလုံးကိုအံ့သြဖွယ်ကောင်းစေသည်။ ပြproblemနာကဥပမာ A မှအလုပ်မလုပ်ခြင်းဖြစ်သည်။ မင်းရဲ့ ip နဲ့ loopback interface ကိုသုံးပြီးကြိုးစားခဲ့တယ်၊
    $ iptables -t nat -A PREROUTING -p tcp –dport 8080 -j DNAT – destination သို့ xxxx: 8080
    $ iptables -t nat -A PREROUTING -p tcp -i lo –dport 8080 -j DNAT – destination သို့ xxxx: 8080

    $ ဆံပင်ကောက်ကောက် ip-yyyy: 8080 / hello_world
    curl: (7) ၈၀၈၀ ip-yyyy port ကိုချိတ်ဆက်ရန်ချိတ်ဆက်မှုငြင်းဆန်ခဲ့သည်
    $ ဆံပင်ကောက်ကောက် localhost: 8080 / hello_world
    curl: (7) localhost port 8080 ကို ဆက်သွယ်၍ မရပါ။ ဆက်သွယ်မှုကိုငြင်းဆန်ခဲ့သည်

    ပြideaနာဖြစ်နိုင်တယ်ဆိုတာကိုမဆိုစိတ်ကူး?

    1.    KZKG ^ Gaara ဟုသူကပြောသည်

      ဟုတ်တယ်၊ အပြောင်းအလဲက reboot ကျနေပြီ။ iptables-save & iptables-restore ဒါမှမဟုတ်အဲဒါမျိုးကိုရှောင်ရမယ်။
      မင်းလုပ်ချင်တာကိုငါသိပ်နားမလည်ဘူး၊ ဥပမာ A ။

      1.    က Nicolas ဟုသူကပြောသည်

        ကျွန်ုပ်တွင်ဆာဗာတစ်ခုရှိသည်အိုင်ပက်တစ်ခုမှ (ဆာဗာအေ's) မှသာဆက်သွယ်မှုများကိုထောက်ပံ့သည်၊ (ဖြုတ်နိုင်မှုပြforနာများအတွက်) အဖြူရောင်စာရင်းထဲသို့ IPS ထပ်မံထည့်သွင်း။ မရပါ၊ ထို့ကြောင့်ပြင်ပဆာဗာသို့အသွားအလာအားလုံးကိုဖြတ်သန်းစေလိုသည်။ ဆာဗာ (က) ကဆိုသည်။
        လက်တွေ့ကျသော ၀ န်ဆောင်မှုတစ်ခုစီအတွက်မည်သည့်အိုင်ပီကိုအသုံးပြုရမည်ကိုသတ်မှတ်သည့်ကမ္ဘာလုံးဆိုင်ရာဖွဲ့စည်းပုံအခြေခံဥပဒေများရှိသည်။ ထို့ကြောင့်ဤကိစ္စတွင်“ ပြင်ပဝန်ဆောင်မှုကိုအသုံးပြုလိုသူအားလုံး၊ အိုင်ပီအေကိုသုံးရမည်” ကဲ့သို့သောအရာဖြစ်သည်။
        ဤဆောင်းပါး၌ပါသောနည်းလမ်းကို သုံး၍ အောင်မြင်မှုရရှိခဲ့သော်လည်း၊ ဆာဗာ A သည်၎င်း၏ကိုယ်ပိုင်အိုင်ပီကို အသုံးပြု၍ ၀ န်ဆောင်မှုကိုမရရှိနိုင်သည့်ပြproblemနာသို့ရောက်သွားသည် (သို့သော်အခြားဆာဗာအားလုံး) ။
        ယခုအချိန်အထိကျွန်ုပ်ရှာဖွေတွေ့ရှိခဲ့သည့်အကောင်းဆုံးအချက်မှာမြေပုံဆွဲခြင်းကို server A's / etc / hosts file တွင်ထည့်သွင်းခြင်း၊ ပြင်ပ ip ကိုညွှန်ပြခြင်း၊

  3.   .ရာဝတီ ဟုသူကပြောသည်

    အလွန်ကောင်းမွန်ပါတယ်၊ ကျွန်ုပ်မှာအခြား mail server ရှိရင် port 143 မှ server1 မှ server2 သို့ traffic ကို forward2 နိုင်ပြီးအီးမေးလ်များသည် serverXNUMX ပေါ်တွင်ကျွန်ုပ်ဆီရောက်လိမ့်မည်မဟုတ်ပါလော။

    ပတ်သတ်ပြီး

    1.    KZKG ^ Gaara ဟုသူကပြောသည်

      သီအိုရီအရဟုတ်ကဲ့၊ သေချာပါသည်၊ သင့်တွင် mail2 ကို serverXNUMX ပေါ်တွင်ကောင်းမွန်စွာတပ်ဆင်ထားရပါမည်

  4.   msx ဟုသူကပြောသည်

    ကျွန်ုပ်တို့ဖတ်လိုသောရေးသားချက်များသည်ကျေးဇူးတင်ပါသည်။

  5.   အာဗြဟံ ဟုသူကပြောသည်

    အလွန်ကောင်းတဲ့ဆောင်းပါး၊ ငါလုပ်နေတဲ့ပရောဂျက်တစ်ခုရှိတယ်၊ ခင်ဗျားကိုမေးခွန်းတစ်ခုမေးချင်တယ်၊ NAT function (စက်မှုဇုန်ခလုတ်များ) (သူတို့အောက်တွင်ဖော်ပြထားသော IPTables ကိုအသုံးပြုသည်ဆိုပါစို့), ပစ္စည်းကိရိယာများကိုပြောင်းလဲခြင်းမရှိပဲ IP လိပ်စာကိုဘာသာပြန်ရန်ဥပမာရှိသည်၊ ကျွန်ုပ်မှာဆာဗာရှိသည်။ ၁၀.၁၀.၂.၁ ၁၀.၁၀.၂.၁.၁.၁၀.၁.၀ ကွန်ပျူတာများနှင့် ဆက်သွယ်၍ switch မှတဆင့်လိပ်စာ 10.10.2.1 ရှိသောဆာဗာမှ ၁၀.၁၀.၂.၅ အဖြစ်အမှန်တကယ်မြင်တွေ့ရသောကွန်ပျူတာကို switch မှတစ်ဆင့်ပရိုဂရမ်ပြုသည်။ ထိုလိပ်စာရှိသောအခြားကွန်ပျူတာများမှ Ubuntu သို့မဟုတ်အခြားဖြန့်ဖြူးသောဆာဗာတစ်ခုမှငါလုပ်ချင်သည်။ iptables rules?

  6.   ကွတ် ဟုသူကပြောသည်

    အလွန်ကောင်းသောအချက်အလက် ^ _ ^ ကျေးဇူးတင်ပါတယ်

  7.   ယေရှု ဟုသူကပြောသည်

    ကောင်းသောနေ့လည်ခင်း။
    ငါ redirect လုပ်ဖို့ကြိုးစားနေပြaနာတစ်ခုရှိသည်။ ငါရှင်းပြတယ်
    Ubuntu တွင်ကွန်ရက်ကဒ် ၂ ခုပါသည့် proxy server ရှိသည်။
    eth0 = 192.168.1.1 သည်ကျန်ကွန်ယက်၏ကျန်နှင့်ချိတ်ဆက်ထားသည်။
    eth1 = 192.168.2.2 သည် router နဲ့ချိတ်ဆက်ထားတယ်။
    eth0 ကိုဖြတ်သန်းရန် eth1 မှတဆင့်သွားသောအရာအားလုံးနှင့် proxy မှတဆင့် (ငါ default port သည် 3128 ဖြစ်သော Squid ကိုသုံးသည်) လိုအပ်သည်။ IPTABLES configuration ထဲတွင်သော့ကိုငါရှာမတွေ့။
    ငါကြည့်ရှုရန်ကန့်သတ်မလိုအပ်ပါဘူး, သာမှတ်တမ်းတင်သွားရောက်ခဲ့ပြီးသောဝဘ်လိပ်စာများ၏မှတ်တမ်းထဲမှာရှိနေဆဲဖြစ်သည်။

    မင်းကိုကူညီနိုင်မယ်လို့ငါမျှော်လင့်တယ်၊ နှစ်အတော်ကြာတဲ့အထိကျွန်မကိုစိတ်ပူစရာကောင်းလောက်အောင်ခက်ခဲတဲ့အလုပ်တစ်ခုပါ။

    သငျသညျကိုကျေးဇူးတင်ပါသည်။

  8.   ဂါဗြေလ ဟုသူကပြောသည်

    သူငယ်ချင်း၊ ကျွန်ုပ်သည်အခြားဆာဗာများနှင့်အလွန်ရင်းနှီးသည်၊ ကျွန်ုပ်မသိပါ၊ သို့သော်ကျွန်ုပ်သည်အကြောင်းအရာကိုနားလည်ပြီးအလျင်အမြန်သင်ယူသည်။ ကျွန်ုပ်၏မေးခွန်းမှာအောက်ပါအတိုင်းဖြစ်သည်။ ဆာဗာ ၂ ခုနှင့်အတူတူပင်အင်ထရာနက်နှင့်ကျွန်ုပ်ချိတ်ဆက်ထားသော serv_2 ရှိသည်။ ဤဆာဗာများတွင်ကိုယ်ပိုင်ကိုယ်ပိုင်အသံပါ အောက်ပါတို့ကိုလုပ်ပါ

    owncloud (ipowncloud) သို့ ip ip နေရာချသောအခါဥပမာ rangeip_1 ips အချို့ကို serv_1 သို့ညွှန်ပြသည်။ အကယ်၍ အခြား rangeip_2 ထားရှိပါက ipowncloud တူသည် serv_2 သို့ညွှန်သည်၊ ဆာဗာ ၂ ခုတည်ရှိသည်။ ကွဲပြားသောမြို့နှစ်မြို့နှင့် IP အကွာအဝေးများသည်မတူညီကြသော်လည်း၎င်းတို့အားလုံးသည်တူညီသောကွန်ယက်တွင်ရှိနေသည်၊ ပထမအပိုင်းဖြစ်လိမ့်မည်၊ ဒုတိယရှင်းသည်မှာဤဆာဗာ ၂ ခုကို၎င်းတို့သည်ကြေးမုံသို့မဟုတ်အမြင့်ဆုံးဖြစ်စေရန်ကျွန်ုပ်အားဤအကြံဥာဏ်ပေးရန်ညှိရန်ဖြစ်သည် သငျသညျအကြှနျုပျကိုရှင်းပြဖို့သွားလျှင်, super programmer mode ကို = မတဆင့်ချင်းမည်သို့လုပ်ဖို့ရှင်းပြပါလိမ့်မယ် = (

  9.   အန်တိုနီယို Carrizosa ဟုသူကပြောသည်

    မင်္ဂလာပါ။ ကျေးဇူးပြု၍ ကျွန်ုပ်ကွန်ယက်ကိုဖွင့်ထားသည့်ကိရိယာအားလုံး၏ဆက်သွယ်ရေးကိုတာဝန်ခံပါ။ ဒီနောက်မှမီးတံတိုင်းနှင့်နောက်ဆုံးတွင်အင်တာနက်ပိတ်ဆို့ခြင်းသည်၊ ပြန်လည်နေရာချထားခြင်းကိုကျွန်ုပ်ဖော်ပြလိုသောကြောင့်ဖြစ်သည်။ အကယ်၍ တောင်းဆိုထားသော ၀ န်ဆောင်မှုသည်အင်တာနက်မဟုတ်လျှင် firewall သို့ရောက်ရန်မလိုအပ်ပါ။

  10.   Juan ဟုသူကပြောသည်

    ဤနည်းလမ်းကို အသုံးပြု၍ HTTPS ကို HTTP သို့လွှဲပြောင်းပေးနိုင်ပါသလား။

  11.   mati ဟုသူကပြောသည်

    မင်္ဂလာပါ၊ ညနက်ပြီဆိုပါစို့၊ သို့သော်သင့်ကိုကျွန်ုပ်မေးမြန်းချင်ပါသည်၊ ကွန်ယက်တစ်ခုတည်းရှိကွန်ယက်ဆာဗာတစ်ခုနှင့်ကျွန်ုပ်ချိတ်ဆက်လိုသောအခါ client ၏ IP ကို ​​squid ကဘယ်လိုပြုပြင်မလဲ။

  12.   Lafat32 ဟုသူကပြောသည်

    ကျွန်တော့်ကိုတောင်းခံခြင်းအတွက်ဆိုးဝါးစွာမဆက်ဆံပါနှင့်။ ၎င်းကို Windows တွင်ပြုလုပ်နိုင်ပါသလား။

  13.   မာတင် ဟုသူကပြောသည်

    ဒီအချက်အလက်ကကျွန်တော့်အတွက်အသုံးဝင်ပါတယ် အင်္ဂလိပ်လိုတစ်ခုခုမတွေ့တဲ့အခါငါဟာစပိန်လိုလိုအမြဲတမ်းတွေ့နေရတယ်၊ အဲ့ဒီအခါမျိုးမှာဒီ site ကိုငါလာလေ့ရှိတယ်။ ကျေးဇူးတင်ပါတယ်။