এনএফএস ব্যবহার করতে আমার কোন বন্দরগুলি ফায়ারওয়ালে খুলতে হবে?


73

আমি উবুন্টু ১১.১০ চালাচ্ছি - অন্যান্য অনেক সার্ভারের মধ্যে একটি ডিরেক্টরি ভাগ করে নেওয়ার জন্য এনএফএস সেটআপ করছি। ফায়ারওয়ালে কোন বন্দরগুলি খুলতে হবে?


6
এটি যে প্রোটোকলটি আপনি ব্যবহার করতে চান তার সংস্করণের উপর নির্ভর করে। এনএফএস 4 কেবলমাত্র 2049 এর প্রয়োজন যখন পুরানো সংস্করণগুলির জন্য আরও প্রয়োজন।
lzap

উত্তর:


97
$ rpcinfo -p | grep nfs

এনএফএস সার্ভারের জন্য পোর্ট 111 (টিসিপি এবং ইউডিপি) এবং 2049 (টিসিপি এবং ইউডিপি)।

ক্লাস্টার এবং ক্লায়েন্টের স্থিতির জন্য পোর্ট (পূর্বের জন্য পোর্ট 1110 টিসিপি, এবং পরবর্তীগুলির জন্য 1110 ইউডিপি) পাশাপাশি এনএফএস লক ম্যানেজারের জন্য একটি পোর্ট (পোর্ট 4045 টিসিপি এবং ইউডিপি) রয়েছে। কোন পরিষেবাগুলি ক্রস-গেটওয়ে প্রয়োজন তার উপর নির্ভর করে আপনাকে কোন বন্দরগুলির অনুমতি দেওয়ার দরকার তা কেবলমাত্র আপনি নির্ধারণ করতে পারেন।


4
আমি আরপিসিইনফো সম্পর্কে জানতাম না, এটি বেশ কার্যকর। আমি 111 বন্দরটি দিয়ে grep nfsদেখিনি, তবে 111 এর জন্য রয়েছে তা শিখতে আমি গ্রেপটি ছেড়ে দিয়েছি portmapper। জেনে রাখাও ভাল! (এবং আপনি যেমন উল্লেখ করেছেন, প্রয়োজনীয় হিসাবে)
কেনে

@ KennyYounger rpcinfo একটি দরকারী। যদি এটি আপনার প্রশ্নের উত্তর দেয় তবে ভবিষ্যতের দর্শকদের সুবিধার জন্য এটি উত্তর হিসাবে চিহ্নিত করতে ভুলবেন না।
ওয়েসলি

6
আপনি যখন প্রথম ফাইল সিস্টেমটি মাউন্ট করবেন তখন আপনাকে মাউন্ট খোলার প্রয়োজন। এটি একটি গতিশীল বন্দরে চলে, তাই এটি সর্বদা এক হয় না। আমি আমার উত্তরে একটি গাইডের লিঙ্ক রেখেছি।
21 এ 23

1
ধন্যবাদ @ বনসাইভিকিং এই প্রক্রিয়াটির জন্য সমালোচনামূলক তথ্য। আমি আপনার উত্তর upvated!
কেনি

এই পরিষেবাগুলি ("ক্লাস্টার এবং ক্লায়েন্টের স্থিতি", "এনএফএস লক ম্যানেজার") এবং কখন তাদের প্রয়োজন হতে পারে তার একটি সংক্ষিপ্ত বিবরণ দিতে পারেন? যদি সেই পরিষেবাগুলি কোনও ফায়ারওয়াল দ্বারা অবরুদ্ধ করা হয়, তবে এনএফএস সার্ভার এবং ক্লায়েন্টরা কি করুণভাবে হ্রাস পাবে, বা কেবল প্রতিক্রিয়ার জন্য অপেক্ষা করতে লক করবে?
নাথান ক্রেইক

27

111 এবং পোর্টম্যাপারের জন্য 2049 এবং এনএফএস-এর জন্য, আপনাকে মাউন্ট পোর্ট এবং সম্ভবত রিকোটাড, লকড এবং স্ট্যাটেডের অনুমতি দিতে হবে যা সমস্ত গতিশীল হতে পারে। এই দুর্দান্ত এনএফএস সুরক্ষা গাইডটি আপনার স্টার্টআপ স্ক্রিপ্টগুলি এবং স্ট্যাটিক পোর্টগুলি ব্যবহার করতে বাধ্য করার জন্য কার্নেল মডিউল কনফিগারেশন পরিবর্তন করার পরামর্শ দেয়।

উপরের গাইড ছাড়াও, যার ফায়ারওয়ালগুলির একটি বিভাগ রয়েছে, এনএফএসকে শক্ত করার বিষয়ে অন্য প্রশ্নের আমার উত্তর দেখুন ।


7
আমরা প্রকৃতপক্ষে বিষয়বস্তু পছন্দ করি না, বিষয়বস্তুর দিকে নির্দেশক নয়। কোনও লিঙ্কযুক্ত সামগ্রীর একটি প্রিসিস খুব ঠিক আছে এবং একটি লিঙ্কে পছন্দ করা।
ব্যবহারকারী 9517

2
2012 সম্পর্কে নিশ্চিত নয় তবে লিঙ্কগুলির প্রস্তাবনাটি সম্পূর্ণ পুরানো বলে মনে হচ্ছে। বিভিন্ন কারণে টিসিপি-র উপরে এনএফএসকে প্রাধান্য দেওয়া হয় এবং প্রোটোকল সীমাবদ্ধতার কারণে ইউডিপিতে এনএফএস দ্রুত লিঙ্কে নীরব ডেটা দুর্নীতির কারণ হতে পারে। সুরক্ষা নির্দেশিকায়
কারবেরোস

মাউন্টডের প্রতি শ্রদ্ধা সহ, মাউন্ট পোর্টটি স্থির হয়েছে কিনা তা নিশ্চিত করার জন্য আপনি পুনরায় কনফিগার করেন তবে জীবন অনেক সহজ। ডেবিয়ান সিস্টেমে, ভালো কিছু করার জন্য RPCMOUNTDOPTS মান সম্পাদনা RPCMOUNTDOPTS="--port 34567"এবং তারপর পুনর্সূচনা sysctl --systemএবং/etc/init.d/nfs-kernel-server restart
user45793

14

আমি এই পৃষ্ঠায় আমার সমস্যার জন্য দরকারী দিকনির্দেশগুলি পেয়েছি, তবে রেসিপি অনুসরণ করা সহজ ছিল না। সুতরাং এখানে আমার রেসিপি।

টিএল; ডিআর - এটি ঠিক করার পরে উভয় এনএফএস পোর্ট (111, 2049) এবং মাউন্ট পোর্টের অনুমতি দেওয়া দরকার।

নির্দেশাবলী:


মাউন্টডের জন্য একটি স্থির বন্দর স্থাপন করা

gksudo gedit /etc/default/nfs-kernel-server
  • এই লাইন মন্তব্য: RPCMOUNTDOPTS=--manage-gids
  • পরিবর্তে এটি যুক্ত করুন: RPCMOUNTDOPTS="--port 33333"

বা অন্য কোনও বন্দর নম্বর।

এখন ব্যবহার করে এনএফএস পুনরায় সেট করার চেষ্টা করুন:

sudo service nfs-kernel-server restart

এবং এটি ব্যবহারে সহায়তা করে কিনা পরীক্ষা করুন:

rpcinfo -p | grep "tcp.*mountd"

আমার জন্য এটি যথেষ্ট ছিল না, তবে পুরোপুরি পুনঃসূচনাটি সমস্যার সমাধান করেছে।

( creditণ )


ফায়ারওয়াল সেট আপ করা হচ্ছে

(1) পুরানো নিয়ম মুছুন, ম্যানুয়ালি এটি করুন বা ফায়ারওয়ালের জন্য যদি এটিই একমাত্র ব্যবহার হয় তবে পুনরায় সেট করুন:

sudo ufw reset
sudo ufw enable

(২) এনএফএস এবং মাউন্ট করা পোর্ট যুক্ত করুন

sudo ufw allow in from 10.0.0.1/20 to any port 111 
sudo ufw allow in from 10.0.0.1/20 to any port 2049
sudo ufw allow in from 10.0.0.1/20 to any port 33333

(আপনার স্থানীয় আইপি বা এর anyপরিবর্তে " " এ পরিবর্তন করুন 10.0.0.1/20)

এটুকুই আছে।


3
আপনার পুরো বাক্সটি পুনরায় চালু করার দরকার নেই। sudo service nfs-config restartপুনরায় চালু করার আগে একটি সাধারণ nfs-kernel-serverউইল ঠিকঠাক করে।
showp1984

@ showp1984 ধন্যবাদ, আমি পরের বার চেষ্টা করব
আমির উয়াল

অথবা যদি আপনার সিস্টেম ব্যবহার করে systemctl, এটি systemctl restart nfs-kernel-server.service
fbicknel

আপনি এটি এক ফোলা ফোলাতেও সব করতে পারেন: এর sudo nfs allow proto tcp from 10.0.0.1/20 to any port 111,2049,33333পরে (ঠিক আছে, দুটি ফোলা ফোপস) sudo nfs allow proto udp from 10.0.0.1/20 to any port 111,2049,33333। নোট পোর্ট 33333 উপরের উদাহরণ অনুযায়ী। উত্তরটি নির্দেশিত হিসাবে আপনি অন্য একটি বন্দর ব্যবহার করতে পারেন।
fbicknel

5

এটি সমস্ত এনএফএস-সম্পর্কিত প্রোগ্রাম দ্বারা ব্যবহৃত সমস্ত পোর্টের একটি তালিকা দেবে:

rpcinfo -p | awk '{print $3" "$4}' | sort -k2n | uniq

3

ফার্মের মাধ্যমে আরপিসিইনফো থেকে পোর্টগুলি পেতে ব্যাকটিক্স ব্যবহার করা যেতে পারে, উদাহরণস্বরূপ:

সার্ভার:

proto tcp {saddr ($CLIENT) {
  dport (`rpcinfo -p | perl -e 'while(<>){/\s+\d+\s+\d\s+(?:tcp)\s+(\d+)/ and $ports{$1}=1}; $, = " "; print sort(keys(%ports)),"\n"'`) ACCEPT; # NFS
}}
proto udp {saddr ($CLIENT) {
  dport (`rpcinfo -p | perl -e 'while(<>){/\s+\d+\s+\d\s+(?:udp)\s+(\d+)/ and $ports{$1}=1}; $, = " "; print sort(keys(%ports)),"\n"'`) ACCEPT; # NFS
}}

ক্লায়েন্ট:

proto udp {saddr ($SERVER) {ACCEPT;}}  # NFS

(আপনি যদি কেবলমাত্র টিসিপি ব্যবহার করতে চলেছেন তবে আপনার কেবলমাত্র proto tcpঅংশটি প্রয়োজন )।


1

রেকর্ডগুলির জন্য, আমাকে একটি কনফিগারেশনের জন্য 111, 2049 এবং 1048 পোর্টগুলির জন্য অনুমতিগুলি যুক্ত করতে হয়েছিল যেখানে উইন্ডোজ 2008 আর 2 সার্ভার দ্বারা একটি এনএফএস শেয়ার রফতানি হয় এবং ক্লায়েন্টরা উবুন্টু 12.04.4 হয়।

আমি আশা করি এটা কারো সাহায্যে লাগবে.


2
আপনার কেন 1048 বন্দর প্রয়োজন এবং এটি কীভাবে নির্ধারণ করা হয়েছে তা ব্যাখ্যা করতে এটি আপনাকে সহায়তা করতে পারে।
এইচবিউইজন

3
সত্যি বলতে কী, আমার কেন 1048 এর জন্য একটি অনুমতি যুক্ত করার দরকার ছিল তার কোনও ধারণা নেই, তবে এটি আমার সমস্যার সমাধান করে। আমি কেবল ভাগ করে নিতে চেয়েছিলাম যদি এটি ভবিষ্যতে অন্য কারও সময় সাশ্রয় করতে পারে। প্রশ্নের উত্তর দিতে না পারায় আমি দুঃখিত।
এরডেম কেয়া
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.