DNAT ወደ 127.0.0.1 ለምን ልዩ ጥንቃቄ ይፈልጋል
route_localnetን ከውጭ የሚመጣ ትራፊክ ወደ loopback ላይ የተያዘ ፕሮክሲ አካል ሲመራ ይረዳ።
አንድ አገልግሎት በ 127.0.0.1:1080 ላይ ያዳምጣል። የ DNAT ደንብ የሚመጣውን ትራፊክ ወደዚያ አድራሻ ይመራል፣ ሆኖም ግንኙነቱ ይሽከረከራል። አገልግሎቱ ጤናማ ሊሆን እና የ NAT ደንቡ ሊመሳሰል ይችላል፦ የ IPv4 loopback አድራሻዎች ልዩ የመንገድ አያያዝ አላቸው።
የ Linux route_localnet በመንገድ ጊዜ የ 127/8 አድራሻዎች እንደ ውጭ አድራሻ ይታዩ እንደሆነ ይቆጣጠራል። ነባሪው የተለመደውን የ loopback ወሰን ይጠብቃል። ለተወሰነ በታቀደ የአካባቢ ማስተላለፍ ንድፍ ከአንድ በይነገጽ ጋር የተያዘ ልዩ ሁኔታ ጠቃሚ ሊሆን ይችላል።
ይህ በሌላ ማሽን ላይ የሰራ ደንብ ያልቀዱትን sysctl ላይ ለምን ሊመሰረት እንደሚችል ያብራራል። አማራጩን በሁሉም ቦታ ማንቃትን ግን አያጸድቅም።
የደህንነት ግምቱ ከመንገዱ ጋር ይለወጣል
የ loopback ማሰሪያ ብዙውን ጊዜ ጥቅም ላይ የሚውለው አንድ ረዳት ራሱን የቻለ የደንበኛ ማረጋገጫ ስለሌለው ነው። ከሌላ በይነገጽ የሚመጣ ትራፊክ ወደዚያ ሊመራ ከቻለ፣ የማሰሪያው አድራሻ ብቻ ሊደረስበት የሚችለውን ታዳሚ ከእንግዲህ አይገልጽም። በትክክለኛው የደንብ ስብስብ ውስጥ የመግቢያ ምንጮችን፣ መድረሻን እና ወደብን ይገድቡ፤ የ loopback ምንጭ ወይም መድረሻ አድራሻዎችን የሚናገሩ ትራፊኮችንም ጭምር።
አገልግሎቱን የያዘውን የኔትወርክ ክፍተት ይመልከቱ። የኮንቴይነር loopback የአስተናጋጁ loopback አይደለም፣ የአስተናጋጅ በይነገጽ ቅንብርን መቀየር በኮንቴይነሩ ውስጥ አድማጭ በራስ-ሰር አይፈጥርም።
rp_filter ስለ ምንጭ-መንገድ ማረጋገጫ የተለየ ጥያቄ ይመልሳል። በአጠቃላይ ማጥፋቱ የ loopback መንገድን ከመረዳት የተሻለ አጠቃላይ ምትክ አይደለም። በተመሳሳይ ሁኔታ ip_nonlocal_bind ሶኬቶችን ከአካባቢ ውጪ ከሆኑ አድራሻዎች ጋር ስለማሰር ነው፣ ይህን የ DNAT መንገድ ትክክል ስለማድረግ አይደለም።
በመጨረሻም የተመራው ፕሮቶኮል ከአድማጩ ጋር መስማማት አለበት። ጥሬ የ HTTP ወይም TLS ትራፊክ ወደ SOCKS ወደብ መላክ አሁንም ተርጓሚ ይፈልጋል፤ የመንገድ ልዩ ሁኔታ የጎደለውን ድርድር ሊያቀርብ አይችልም።