ওপেনভিপিএন-এর মাধ্যমে ট্রান্সমিশন ডেমন


20

আমি সম্প্রতি একটি বিগলবোন কালো অর্জন করেছি, যার উপরে আমি এই পদ্ধতিটি ব্যবহার করে উবুন্টু ইনস্টল করেছি । এটি এখন পর্যন্ত সব কাজ করেছে। আমি আমার বিগলবোনটিকে টরেন্ট বক্স হিসাবে ব্যবহার করতে চাই, তবে আমি সরাসরি এটি আমার ইন্টারনেট সংযোগের মাধ্যমে করতে চাই না (আমার আইএসপি এটি পছন্দ করবে বলে আমি মনে করি না) - তাই আমি কোনও ইউরোপীয় সার্ভারের থেকে ভিপিএন সাবস্ক্রিপশন কিনেছি । আমি আমার ল্যাপটপটি নিজে আগে এই ভিপিএন এর সাথে সংযুক্ত করেছি এবং সঞ্চালন সঞ্চালনের আগে। আমি জানি যে ভিপিএন সংযোগটি উবুন্টুতে কাজ করে এবং হোস্ট ওপেনভিপিএন-এর জন্য সেটআপের তথ্য সরবরাহ করে। বিরক্তিকরভাবে, নির্ধারিত আইপি ঠিকানার গতিশীল প্রকৃতির অর্থ এটি ঘন ঘন পরিবর্তিত হবে, তাই আমি যখন ভিপিএন দিয়ে আমার ল্যাপটপটি ব্যবহার করি তখন আমি নিজেই শ্রুতি ঠিকানাটি প্রয়োজনীয় মানটিতে ট্রান্সমিশনে সেট করতাম।

আদর্শভাবে আমি নিম্নলিখিত সেটআপ চাই:

  • ট্রান্সমিশনটি কেবল ভিপিএন এর উপর দিয়ে চলে এবং এটি স্বাভাবিক ডাব্লুএইচএন সংযোগের উপর দিয়ে টরেন্ট চালানো নিষিদ্ধ
  • কেবল ট্রান্সমিশনের দিকে পরিচালিত ট্র্যাফিকই গৃহীত হবে বা ভিপিএন এর মাধ্যমে প্রেরণ করা হবে, অন্য সমস্ত অযাচিত ট্র্যাফিক বাদ দেওয়া হবে
  • ট্রান্সমিশনটি নির্ধারিত আইপি ঠিকানার ভিত্তিতে শুনতে উপযুক্ত পোর্ট ব্যবহার করে
  • ওপেনভিপিএন স্বয়ংক্রিয়ভাবে বুটে শুরু হয়, যার পরে ট্রান্সমিশন শুরু হয়
  • ল্যানের মাধ্যমে ট্রান্সমিশনের ওয়েব জিইউআই ব্যবহার করা যেতে পারে এবং সম্ভবত আমার WAN সংযোগ থেকে ইন্টারনেটের মাধ্যমে (যেমন ভিপিএন দিয়ে ফিরে আসে না)

3
স্ব-উত্তরগুলি খারাপ নয়। তাদের জন্য ক্ষমা চাইবেন না। আপনি যা করছেন তা
আপনাকেও

@Hbdgaf এর সাথে একমত দুঃখ প্রকাশ করার দরকার নাই. সব ফ্রন্টে দুর্দান্ত কাজ।
জ্যাকগোল্ড

উত্তর:


23

দ্রষ্টব্য: (2016-02-22) আমি বুঝতে পেরেছি যে এই কনফিগারটি ভিপিএন এর মাধ্যমে প্রেরণ না করে সাধারণ WAN এর মাধ্যমে টরেন্ট ট্র্যাকারদের ডিএনএস কোয়েরি ফাঁস করে দেয়। আমি কীভাবে এটি ঠিক করব তা তদন্ত করছি। যদিও আমি আমার কনফিগারটি চালিয়ে যাচ্ছি, যেহেতু সংযোগটি নিজে ভিপিএনকে সঠিকভাবে ব্যবহার করে না।


আপডেট: আমি লক্ষ্য করেছি যে আমি যখন বিগলবোনে রাতারাতি ডাউনলোডের জন্য ট্রান্সমিশন সেট করি তখন কিছু সময়ের পরে সিপিইউ ব্যবহার 100% হয়ে যায়। এটি একই পরিমাণের পরে ঘটবে বলে মনে হয় না, কখনও কখনও সারা রাত ঠিক থাকে, অন্য সময় 10 মিনিটের পরে লড়াই করে। এটি সমস্ত টরেন্ট বন্ধ করে সিপিইউ লোডটি স্বাভাবিক অবস্থায় ফিরে আসার অপেক্ষা করে আবারও শুরু করে পুনরুদ্ধার করতে পারে। আমি এখনও তদন্ত করছি। একটি workaround হতে পারে বিরতি এবং পর্যায়ক্রমে টরেন্ট পুনরায় শুরু করা, যদিও এটি খুব ভাল কাজ নয়। নোট করুন এই সমস্যাটি কেবল বিগলবোন এবং সম্ভবত অন্যান্য এআরএম ডিভাইসে প্রযোজ্য। এই সমস্যাটি আমার কখনই x86 সিপিইউতে আসেনি।


ভূমিকা

আমি বিগলবোন ব্ল্যাক চালিয়ে উবুন্টু 14.04-র জন্য এই সমাধানটি বিকাশ ও পরীক্ষা করেছি tested আমি যে ভিপিএন সরবরাহকারীর ব্যবহার করছি তার নাম আইবিভিপিএন । এটি কোনও ওপেনভিপিএন সামঞ্জস্যপূর্ণ ভিপিএন সরবরাহকারীর সাথে (যেমন একটি "সাধারণ" x86 কম্পিউটারে) কোনও সমর্থিত হার্ডওয়্যারের সাথে কাজ করা উচিত - এবং সম্ভবত 14.10 বা তার পরে কাজ করা উচিত। এক পর্যায়ে আমি বিশ্বাস করি যে উবুন্টু বুট করার জন্য সিস্টেমডি ব্যবহার করবে, যার অর্থ এখানে ব্যবহৃত আপস্টার্ট স্ক্রিপ্টগুলি স্থানান্তরিত করতে হবে। আপডেট: জোনাস কাল্ডার্সটামের সিস্টেমডি ব্যবহারের জন্য নীচে একটি উত্তর রয়েছেআমি আরও ধরে নিচ্ছি যে ufw ফায়ারওয়াল হিসাবে ব্যবহৃত হচ্ছে, আপনি যদি কিছু আলাদা ব্যবহার করেন তবে এখানে ufw কমান্ডগুলি পরিবর্তন করা দরকার।

আমি ধরে নিয়েছি যে সমস্ত কাজ সিস্টেমের সাথে একটি এসএসএইচ সংযোগের মধ্যে সম্পন্ন হয়েছে, যদিও এটি কোনও শারীরিক টার্মিনালটিতে টাইপ করা থাকলে ঠিক সেই সাথে কাজ করবে।

এটি বেশ দীর্ঘ টিউটোরিয়াল, দয়া করে প্রথমে এটি সমস্ত পড়ুন এবং নিশ্চিত হন যে আপনি কী করছেন তাতে আপনি স্বাচ্ছন্দ্য বোধ করছেন।

আমি আরও লক্ষ্য করেছি যে ট্রান্সমিশনটি ইউপিএনপি / এনএটি-পিএমপি ডেটা প্রেরণের জন্য কোনও আইপি ঠিকানার সাথে সঠিকভাবে আবদ্ধ হয় না - যেমন টরেন্ট ডেটা সঠিকভাবে ভিপিএন এর মধ্য দিয়ে যায় তবে ইউপিএনপি পোর্ট ফরওয়ার্ডিং সক্ষম করা থাকলে ট্রান্সমিশন স্থানীয় রাউটার থেকে পোর্ট ফরোয়ার্ডের জন্য অনুরোধ করবে , ভিপিএন সার্ভার থেকে ভিপিএন এর মাধ্যমে নয়। সুতরাং আমি আপস্টার্ট স্ক্রিপ্টটিকে পোর্ট ফরওয়ার্ডিং অক্ষম করে দিয়েছি, যেহেতু এটি প্রদর্শিত হতে পারে যেমন এটি কাজ করেছে তবে এটি হয়নি not ভিপিএন এর মাধ্যমে ডেবিয়ান-ট্রান্সমিশন ব্যবহারকারীর কাছ থেকে সমস্ত ট্র্যাফিক জোর করার জন্য iptables এবং আইপ্রেট ব্যবহার করা সম্ভব হওয়া উচিত, তবে আমি এখনও এটি সন্ধান করছি। এটিও কাজ করা উচিত যদি ভিপিএন এর মাধ্যমে সমস্ত ইন্টারনেট ডেটা প্রেরণের জন্য ডিফল্ট রুট পরিবর্তন করা হয়েছিল তবে আমি তা করতে চাইনি কারণ আমি অন্যান্য সার্ভিসগুলির জন্যও এই সার্ভারটি ব্যবহার করি এবং এটি সমস্ত সিস্টেমে আপডেটগুলি এর মাধ্যমে আসতে পারে VPN এর।আপনি যদি সত্যই ইউপিএনপি ভিপিএন দিয়ে কাজ করতে চান তবে এই প্রশ্নের আরও তথ্য রয়েছে আপডেট: ভিপিএন-এর মাধ্যমে ইউপিএনপিকে উত্সাহিত করতে সহায়তার জন্য ফালক 0069 এর একটি দুর্দান্ত টিপ রয়েছে

ওপেনভিপিএন ইনস্টল ও কনফিগার করা হচ্ছে

আমি আপনাকে পরামর্শ দিচ্ছি যে আপনি এখানে কাজ করার চেষ্টা করার আগে উবুন্টু ব্যবহার করে আপনার ভিপিএন সংযোগটি পাওয়ার চেষ্টা করুন - ডেস্কটপ থেকে। এটি আপনার কাছে সঠিক কনফিগারেশন রয়েছে এবং ডিবাগিংয়ে ব্যয় করা সময় কমিয়ে দেবে তা নিশ্চিত করবে।

প্রথমে প্রয়োজনীয় প্যাকেজ ইনস্টল করুন

sudo apt-get install openvpn

এরপরে, কনফিগারেশন ফাইলগুলিকে সঞ্চয় করার জন্য একটি ডিরেক্টরি তৈরি করুন I'm আমি / opt / ibVPN ব্যবহার করছি, যেহেতু আমি যে সরবরাহকারীর ব্যবহার করছি। এটি আপনার পছন্দমতো পরিবর্তন করুন।

sudo mkdir /opt/ibVPN

এই নতুন ডিরেক্টরিতে প্রথম কাজটি হ'ল ভিপিএন ক্লায়েন্ট চালানোর জন্য কনফিগার ফাইল তৈরি করা। আইবিভিপিএন লিনাক্স ব্যবহারকারীদের জন্য একটি বেসিক কনফিগারেশন ফাইল সরবরাহ করে, যা আমি বেশিরভাগই কেবল অনুলিপি করে আটকে দিয়েছি।

cd /opt/ibVPN
sudo vim config.ovpn

আপনার ভিপিএন সরবরাহকারীর জন্য সেটিংস ব্যবহার করে আপনার সম্পাদিত সংস্করণটি ভিএম-এ অনুলিপি করুন এবং আটকান। (এফওয়াইআই, উবুন্টু টার্মিনালে পেস্ট করুন Ctrl+Shift+V) আপনার ভিপিএন সরবরাহকারীর কাছ থেকে এটি পেতে সক্ষম হওয়া উচিত।

remote 888.888.888.888 1194 udp      #This address will be different for you
client
dev tap1
resolv-retry infinite
script-security 3 system
explicit-exit-notify 3
persist-key
mute-replay-warnings
ca ibvpn.com.crt
comp-lzo
verb 3
mute 20
ns-cert-type server
fragment 1300
route-delay 2
reneg-sec 0
max-routes 5000
link-mtu 1578

auth-user-pass pass
auth-nocache
persist-tun
route-noexec
lport 1195
lladdr 00:FF:11:AA:BB:CC
route-up "/opt/home/openvpn/route-up.sh"
down "/opt/home/openvpn/down.sh"

ভিমের সাথে অপরিচিতদের জন্য, Insert পাঠ্যটি টাইপ করতে বা আটকে দিতে চাপুন , তারপরে টিপুন Escape এবং সংরক্ষণ করুন এবং প্রস্থান করতে টাইপ করুন :wq । অবশ্যই, আপনাকে ভিএম ব্যবহার করতে হবে না - কোনও পাঠ্য সম্পাদক কাজ করবে।

আমি দ্রুত এই কনফিগার ফাইলটি ব্যাখ্যা করব: প্রথম 18 টি লাইনগুলি সার্ভারের সাথে ব্যবহারের জন্য নির্দিষ্ট সেটিংস নির্দিষ্ট করে, এগুলি আইভিভিপিএন থেকে এসেছে - আপনার যদি অন্য কোনও সরবরাহকারী থাকে তবে আপনার সম্ভবত কিছুটা আলাদা হবে। পরবর্তী লাইনগুলি নির্দিষ্ট করে দেওয়া বিকল্পগুলি যা আমি নির্দিষ্ট করেছি।

  • আপনার সেটিংস ফাইলে যদি কোনও লাইন থাকে তবে auth-user*এগুলি মন্তব্য করুন। এই সেটআপটি স্বয়ংক্রিয়ভাবে কাজ করার জন্য আমাদের এতে ব্যবহারকারীর নাম এবং পাসওয়ার্ড সহ একটি ফাইল থাকা দরকার - সুতরাং নিশ্চিত হয়ে নিন যে আপনি ভিপিএন সরবরাহকারীর জন্য যে পাসওয়ার্ডটি বেছে নিয়েছেন তা শক্তিশালী, এলোমেলো এবং অনন্য।

  • auth-user-pass passনামক একটি ফাইলের জন্য চেহারায় VPN খুলুন বলে passব্যবহারকারী এবং পাসওয়ার্ড থেকে পড়তে।

  • auth-nocache মেমরি থেকে পাসওয়ার্ড সরিয়ে দেয়, যা আপনি যদি উদ্বিগ্ন হন তবে সুরক্ষাটি সামান্য বাড়িয়ে তুলতে পারে।

  • persist-tun যদি আপনার সংযোগটি শেষ হয়ে যায় তবে সার্ভার থেকে একই আইপি ঠিকানাটি রাখার চেষ্টা করবে, যার অর্থ আশা করা যায় যে ট্রান্সমিশন-ডেমোন কম শুরু এবং থামানো উচিত।

  • route-noexecওপেনভিপিএন ক্লায়েন্টকে সার্ভারের সরবরাহিত রুটগুলি স্বয়ংক্রিয়ভাবে ব্যবহার না করতে বলছে - যা ভিপিএন এর মাধ্যমে সমস্ত নেটওয়ার্ক ট্র্যাফিককে টানবে। আমরা কেবল টরেন্ট ট্র্যাফিক প্রেরণ করতে চাই, তাই আমাদের বিভিন্ন রাউটিং সেটিংস ব্যবহার করতে হবে।

  • lport 1195 ওপেনভিপিএন ক্লায়েন্টকে 1194 এর পরিবর্তে 1195 পোর্ট ব্যবহার করতে বলে - আমার ক্ষেত্রে আমি একই ডিভাইসে একটি ওপেনভিপিএন সার্ভারও চালাতে চাই এবং সার্ভারটি 1194 পোর্টটি ব্যবহার করতে হবে you আপনি যদি ওপেনভিপিএন সার্ভার চালাচ্ছেন না, এটিও এই পরিবর্তন করতে আঘাত না।

  • আমি পৃথক ওপেনভিপিএন সার্ভার চালানোর কারণে ভার্চুয়াল ডিভাইসটিকে ওপেনভিপিএন দ্বারা বরাদ্দ করার পরিবর্তে ট্যাপ 1 করতে বাধ্য করার dev tapজন্য dev tap1, লাইনটি পরিবর্তন করেছি । এমনকি আপনি কোনও ভিপিএন সার্ভার চালাচ্ছেন না, এই পরিবর্তনটি বিবেচনা করা উচিত নয়। ফায়ারওয়াল স্ক্রিপ্টগুলি ব্যবহারের জন্য লেখা হয়েছে tap1, সুতরাং আপনি যদি অন্য কোনও ডিভাইস ব্যবহার করতে চান তবে উপযুক্ত যেখানে স্ক্রিপ্টগুলি পরিবর্তন করতে হবে তা মনে রাখবেন।

  • lladdr 00:FF:11:AA:BB:CC ওপেনভিপিএনকে এই ম্যাক ঠিকানা রাখতে ট্যাপ ইন্টারফেস বরাদ্দ করতে বলে, যা iptables ফায়ারওয়াল নিয়মের জন্য দরকারী useful

  • route-upএবং downট্রান্সমিশন-ডেমন শুরু করার জন্য এবং প্রয়োজনীয় স্ক্রিপ্টগুলি চালনার জন্য চালনা করুন - এগুলি এখানে প্রয়োজনীয় কারণ এগুলি সংযোগ সম্পর্কিত তথ্য সম্বলিত পরিবেশের ভেরিয়েবলগুলির সাথে চালিত হয়, যা সঠিক আইপি ঠিকানা এবং বন্দরে ট্রান্সমিশনকে সঠিকভাবে বাঁধতে প্রয়োজন।

আমার ক্ষেত্রে, আমার ভিপিএন সরবরাহকারীর কাছ থেকে একটি সার্ভার শংসাপত্র ছিল - যা কনফিগার ফাইলের মতো একই ডিরেক্টরিতেও থাকতে হবে।

sudo vim /opt/ibVPN/ibvpn.com.crt

এটি অনুলিপি করুন এবং আটকে দিন, বা এটি এসসিপি বা এসএসএইচএফএসের মাধ্যমে সরান।

-----BEGIN CERTIFICATE-----
MIIDeDCCAuGgAwIBAgIJAMVKgpjMPUfxMA0GCSqGSIb3DQEBBQUAMIGFMQswCQYD
VQQGEwJVUzELMAkGA1UECBMCQ0ExFTATBgNVBAcTDFNhbkZyYW5jaXNjbzEVMBMG
A1UEChMMRm9ydC1GdW5zdG9uMRgwFgYDVQQDEw9Gb3J0LUZ1bnN0b24gQ0ExITAf
BgkqhkiG9w0BCQEWEm1lQG15aG9zdC5teWRvbWFpbjAeFw0xMDA3MjExOTU5MzVa
Fw0yMDA3MTgxOTU5MzVaMIGFMQswCQYDVQQGEwJVUzELMAkGA1UECBMCQ0ExFTAT
BgNVBAcTDFNhbkZyYW5jaXNjbzEVMBMGA1UEChMMRm9ydC1GdW5zdG9uMRgwFgYD
VQQDEw9Gb3J0LUZ1bnN0b24gQ0ExITAfBgkqhkiG9w0BCQEWEm1lQG15aG9zdC5t
eWRvbWFpbjCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAz23m3BXY5Asiw8Dx
T4F6feqsp+pIx6ivftTniyUCbSAxI1J1s1x75DzxmUpIwPu5xavzgPXgZr8FT81X
JGqF9km4AE95iddJawKx0wNgdTo7GximQq9rw0dsQIB5hZZQ9TJwHC3VOnmEic5A
OawKOCybMcRs8saLakZOgh7Xc+UCAwEAAaOB7TCB6jAdBgNVHQ4EFgQUeRhE2N4l
XwL4H1dbjkZ4ou6fj3AwgboGA1UdIwSBsjCBr4AUeRhE2N4lXwL4H1dbjkZ4ou6f
j3ChgYukgYgwgYUxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEVMBMGA1UEBxMM
U2FuRnJhbmNpc2NvMRUwEwYDVQQKEwxGb3J0LUZ1bnN0b24xGDAWBgNVBAMTD0Zv
cnQtRnVuc3RvbiBDQTEhMB8GCSqGSIb3DQEJARYSbWVAbXlob3N0Lm15ZG9tYWlu
ggkAxUqCmMw9R/EwDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQUFAAOBgQASt0pl
WzVseQLTNM8Mlgw4ZnGAv/x2xnijmMqrkE+F7pnaOicGpxgCfMKzjZuJu0TNJqF2
fibE7GhMdomD4dLFgIu8Wb5E7iQ1CSBEOGumRhK8qCsDzjr7WXUdhqA6Xvo+ylU6
DMzy0Wn3NNvfGC+qxOgybYCJwDnVPi0CEDSbzQ==
-----END CERTIFICATE-----

স্পষ্টতই যদি আপনি কোনও আইবিভিপিএন অ্যাকাউন্ট ব্যবহার না করেন তবে আপনার শংসাপত্রটি আলাদা হবে।

এবার পাসওয়ার্ড ফাইলটি তৈরি করা যাক:

sudo vim /opt/ibVPN/pass

প্রথম লাইনে অবশ্যই পূর্ণ ব্যবহারকারীর নাম থাকতে হবে, তারপরে দ্বিতীয় লাইনে অবশ্যই পাসওয়ার্ড হবে। এটি অবশ্যই এই ফাইলটির একমাত্র বিষয়বস্তু হতে হবে।

you@address.com
myBIGstrongpassword1234567890

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

sudo chmod 400 pass

এটি কেবল ফাইলটিকে পঠনযোগ্য করে তুলবে এবং কেবলমাত্র মালিকের জন্য (যেমন অন্য কোনও ব্যবহারকারী এটি পড়তে পারবেন না)

এই কমান্ডগুলি প্রারম্ভকালে চালানোর জন্য ফাইলগুলি তৈরি করবে এবং এগুলি কেবল মূল দ্বারা নির্বাহযোগ্য হবে set

sudo touch route-up.sh
sudo touch down.sh
sudo chmod 700 route-up.sh
sudo chmod 700 down.sh

এই মুহুর্তে, ভিপিএন সংযোগটি আসলে কাজ করে কিনা তা পরীক্ষা করা সম্ভবত ভাল ধারণা। এর সাথে সংযোগটি শুরু করুন:

sudo openvpn --cd /opt/ibVPN --config config.ovpn

আপনি সতর্কতা দেখতে পাবেন যে উপরের এবং নীচের বাহ্যিক আদেশগুলি চালানো যায় না, তবে এটি সম্পর্কে চিন্তা করবেন না। এটি যদি কাজ Initialization Sequence Completedকরে তবে আপনি টার্মিনালে দেখতে পাবেন । Control+Cসংযোগটি শেষ করতে টিপুন । যদি এটি কাজ না করে, আপনাকে কেন তদন্ত করতে হবে এবং চালিয়ে যাওয়ার আগে এটি ঠিক করতে হবে। আমি দেখতে পেলাম যে এটি কখনও কখনও কাজ শুরু করতে কয়েকটা সময় নেয়। আপনার পাসওয়ার্ড ফাইলটি সঠিক কিনা তা নিশ্চিত করুন। ওপেনভিপিএন সম্পর্কে ইন্টারনেটে প্রচুর দুর্দান্ত সংস্থান রয়েছে, তাই ঘুরে দেখুন।

এই মুহুর্তে, ট্রান্সমিশনটি আপ এবং চলমান দিকে এগিয়ে যাওয়া সম্ভবত সবচেয়ে সহজ। একবার আপনি নিশ্চিত হয়ে যান যে ভিপিএন এবং ট্রান্সমিশন দুটি পৃথকভাবে চলতে পারে, সেগুলি একত্রিত করা যায়।

সংক্রমণ স্থাপন এবং কনফিগার করা

প্রয়োজনীয় প্যাকেজ ইনস্টল করুন:

sudo apt-get install transmission-daemon

ডিফল্টরূপে, সংক্রমণ বুটে স্বয়ংক্রিয়ভাবে চলবে। যেহেতু আমরা শেষ পর্যন্ত ট্রান্সমিশন শুরু করতে ওপেনভিপিএন ব্যবহার করব, আমরা এটি অক্ষম করতে চাই। এটি করতে, ট্রান্সমিশন-ডেমনের জন্য কনফিগার ফাইলটি সম্পাদনা করুন

sudo vim /etc/default/transmission-daemon

এবং পড়ার জন্য নিম্নলিখিত লাইনটি পরিবর্তন করুন:

ENABLE_DAEMON=0

এখন বুট থেকে ট্রান্সমিশন শুরু হবে না।

আসুন এখন ট্রান্সমিশন সেটিংসে থাকার জন্য এবং ডাউনলোড টরেন্টগুলিতে প্রবেশের জন্য একটি ডিরেক্টরি তৈরি করুন। এটি ধরে নিয়েছে আপনি ইতিমধ্যে কোনও ধরণের ডিস্ক সেট আপ করেছেন এবং এটি / মিডিয়া / আর্ম ডিস্ক / এ মাউন্ট করা হয়েছে। সুরক্ষা উদ্দেশ্যে, ডেমনটি রুট বা "উবুন্টু" না হয়ে তার নিজস্ব ব্যবহারকারী দ্বারা চালিত হবে। "নতুন ডেবিয়ান-ট্রান্সমিশন" সংক্রমণ-ডেমন জন্য ইনস্টলার দ্বারা একটি নতুন ব্যবহারকারী তৈরি করা হয়। এই ব্যবহারকারীর আমাদের তৈরি ফোল্ডারটির মালিক হওয়া দরকার, এবং টরেন্টগুলি ডাউনলোড হওয়ার জন্য সঞ্চয় স্থানটিতে অ্যাক্সেস পড়ে এবং পড়ে have

sudo mkdir /opt/transmission
sudo chown debian-transmission:debian-transmission /opt/transmission
sudo mkdir /media/arm-disk/torrents-complete
sudo chown debian-transmission:debian-transmission /media/arm-disk/torrents-complete
sudo mkdir /media/arm-disk/torrents-incomplete
sudo chown debian-transmission:debian-transmission /media/arm-disk/torrents-incomplete

এখন আমাদের সংক্ষিপ্তসারটি শুরু করতে হবে, কেবল সংক্ষেপে, যাতে এটি আমাদের প্রয়োজন সেটিংস ফাইলটি তৈরি করে:

sudo -u debian-transmission -g debian-transmission /usr/bin/transmission-daemon --config-dir /opt/transmission --foreground

এই কমান্ডটি ডেবিয়ান-ট্রান্সমিশন ব্যবহারকারী হিসাবে ট্রান্সমিশন-ডেমন শুরু করে, সেটিংস ফাইলগুলির জন্য / অপ্ট / ট্রান্সমিশন ডিরেক্টরিটি ব্যবহার করতে বলে এবং অগ্রভাগে চলমান রাখতে বলে। এটি কয়েক সেকেন্ড চলার পরে এটি Control+Cশেষ করতে টিপুন । আমরা এখন সেটিংস ফাইলটি সম্পাদনা করতে পারি।

sudo -u debian-transmission vim /opt/transmission/settings.json

আমাদের এখন পড়ার জন্য তাদের ডিফল্ট থেকে নিম্নলিখিত লাইনগুলিতে পরিবর্তন করতে হবে:

"download-dir": "/media/arm-disk/torrents-complete",

"incomplete-dir": "/media/arm-disk/torrents-incomplete",

"incomplete-dir-enabled": true,

"rpc-whitelist": "127.0.0.1,192.168.1.*",

সংরক্ষণ করুন এবং প্রস্থান করুন (এস্কেপ, টাইপ করুন: ডাব্লিউকিউ এবং এন্টার টিপুন)

মাঝের দুটি সম্পাদনা অসম্পূর্ণগুলির থেকে আপনার সমাপ্ত টরেন্টগুলি পৃথক করে "অসম্পূর্ণ" ডিরেক্টরিটি সক্ষম করবে। এটি সম্পূর্ণ প্রয়োজনীয় নয়, তবে ব্যক্তিগতভাবে আমি এটি অত্যন্ত দরকারী বলে মনে করি। শেষ সম্পাদনাটি ওয়েব জিইউআইকে ল্যানের যে কোনও কম্পিউটার দ্বারা অ্যাক্সেস করতে সক্ষম করে (আপনার ল্যান সাবনেটটি 192.168.1.0 ধরে ধরে নেওয়া যায়, এটি আলাদা হলে এটি পরিবর্তন করুন)।

এটি পুনরায় ট্রান্সমিশন চালানো ভাল ধারণা, এটি কার্যকর হয় কিনা তা দেখার জন্য এবং আসলে কোনও টরেন্ট ডাউনলোড করতে পারে। জিইউআই অ্যাক্সেস করতে এবং টরেন্ট যুক্ত করতে আমরা একটি ওয়েব ব্রাউজার উইন্ডো ব্যবহার করব। প্রথমে, ল্যান থেকে ফায়ারওয়ালের মাধ্যমে ওয়েব জিইউআই অ্যাক্সেসের অনুমতি দিন, তারপরে আবার ট্রান্সমিশন-ডেমোন চালান।

sudo ufw allow in from 192.168.0.0/16 to any port 9091
sudo -u debian-transmission -g debian-transmission /usr/bin/transmission-daemon --config-dir /opt/transmission --foreground

ফায়ারফক্সে এই URL টি দেখুন (বা আপনি যে কোনও ব্রাউজার পছন্দ করুন): http://XXX.XXX.XXX.XXX:9091 , যেখানে ল্যানটিতে আপনার সার্ভারের ঠিকানা দ্বারা XXX প্রতিস্থাপন করা হয়েছে (অর্থাত্ 192.168.1.10)। ডাউনলোডের জন্য টরেন্ট সন্ধান করুন, উদাহরণস্বরূপ, 1080p60hz এ বিগ বুক বনি। এটি একটি ফ্রি শর্ট ফিল্ম, আইনত ফ্রি ডাউনলোডের জন্য উপলব্ধ। ট্রান্সমিশন জিইউআইতে "ওপেন টরেন্ট" বোতামটি ক্লিক করুন এবং এই লিঙ্কটি (বা অন্য কোনও টরেন্ট) প্রথম বাক্সে পেস্ট করুন । তারপরে "আপলোড" টিপুন। ট্রান্সমিশনটি যদি সঠিকভাবে কাজ করে তবে টরেন্টটি ডাউনলোড শুরু হবে। যদি এটি না হয়, তবে আপনার চালিয়ে যাওয়ার আগে কেন কাজ করা দরকার। ট্রান্সমিশন-ডেমন ব্যবহারের জন্য ইন্টারনেটে প্রচুর সংস্থান রয়েছে। এটি আপনি যে টরেন্টটি বেছে নিয়েছেন তা কাজ করছে না, প্রথমে আরও কয়েকজন চেষ্টা করুন।

ডাউনলোড শেষ হয়ে গেলে Control+Cট্রান্সমিশন-ডেমন থামাতে টার্মিনাল উইন্ডোতে টিপুন ।

ভিপিএন ইন্টারফেসে বাইন্ডিং ট্রান্সমিশন কনফিগার করুন

এখন আসুন একটি আপস্টার্ট স্ক্রিপ্ট তৈরি করুন, যা ভিপিএন প্রস্তুত হওয়ার পরে সংক্রমণ শুরু করতে ব্যবহৃত হবে।

sudo mv /etc/init/transmission-daemon.conf /etc/init/transmission-daemon.conf.bak

যদি এটি অভিযোগ করে তবে চিন্তা করবেন না, এটি কেবলমাত্র আপস্টার্ট ফাইলটির ব্যাকআপ তৈরি করা, যদি কারও অস্তিত্ব থাকে - এটি নাও থাকতে পারে। নতুনটি সম্পাদনা করতে ভিম খুলুন:

sudo vim /etc/init/transmission-daemon.conf

এটি সম্পাদক এ আটকান:

description "transmission-daemon, attached to OpenVPN tunnel tap1"

start on transmission-daemon-start
stop on runlevel [!2345] or transmission-vpn-down

# This includes the information from OpenVPN into this environment

export LOCAL_IP
env PORT=51413

# give time to send info to trackers
kill timeout 30

# Run as unprivileged user
setuid debian-transmission
setgid debian-transmission

# Start transmission again if it stops for some reason
respawn
# If transmission stops 5 times in a minute, give up trying to respawn it
respawn limit 5 60

exec /usr/bin/nice -15 /usr/bin/transmission-daemon --config-dir /opt/transmission --bind-address-ipv4 $LOCAL_IP --peerport $PORT --no-portmap --foreground

ভিএম সংরক্ষণ এবং বন্ধ করুন ( Escape, তারপরে টাইপ করুন :wq)। আবার, Vim খুলুন:

sudo vim /etc/init/transmission-up.conf

এবং এটি পেস্ট করুন:

description "Script to create firewall and routing rules for transmission-daemon"

start on transmission-vpn-up

# This includes the information from OpenVPN into this environment
export VPN_GATEWAY
export LOCAL_IP
env PORT=51413

task

script
    # Set up IP route, firewall rules
    # It doesn't matter if they already exist, they will be skipped
    /sbin/ip route add default via $VPN_GATEWAY dev tap1 table 200
    /sbin/ip rule add from $LOCAL_IP table 200
    /sbin/ip route flush cache
    /usr/sbin/ufw insert 1 reject out on eth0 from any port $PORT
    /usr/sbin/ufw insert 1 reject in on eth0 to any port $PORT
    /usr/sbin/ufw insert 1 deny in on tap1 to any
    /usr/sbin/ufw insert 1 allow in on tap1 to any port $PORT proto udp

    # Start the actual transmission-daemon process, in a separate task so that unprivileged user/group can be set
    /sbin/initctl emit transmission-daemon-start LOCAL_IP=$LOCAL_IP

end script

আবার, ভিভ সংরক্ষণ এবং বন্ধ করুন। ( Escape, তারপরে টাইপ করুন :wq)। অবশেষে:

sudo vim /etc/init/transmission-down.conf

এটি আটকান:

description "Script to remove firewall rules for transmission-daemon"

start on runlevel [!2345] or stopping openvpn-transmission
env PORT=51413

task

script
    # Take down IP route, firewall rules
    # It doesn't really matter if they don't get taken down, but this will be cleaner
    /usr/sbin/ufw delete reject out on eth0 from any port $PORT
    /usr/sbin/ufw delete reject in on eth0 to any port $PORT
    /usr/sbin/ufw delete deny in on tap1 to any
    /usr/sbin/ufw delete allow in on tap1 to any port $PORT proto udp

    /sbin/ip route flush cache

end script

এই স্ক্রিপ্টগুলি আপস্টার্টকে "সংক্রমণ-ভিপিএন-আপ" সংকেত শোনার জন্য বলে। "ট্রান্সমিশন-আপ.কনফ" স্ক্রিপ্টটি তখন ভিপিএন ইন্টারফেসের মাধ্যমে স্থানীয় ভিপিএন ঠিকানা থেকে ট্র্যাফিক প্রেরণের জন্য প্রয়োজনীয় রাউটিং বিধিগুলি সেট করে এবং ভিপিএন থেকে ট্রান্সমিশনের জন্য শ্রবণ বন্দরে ট্র্যাফিকের অনুমতি দেওয়ার জন্য ফায়ারওয়াল সেট করে। সাধারণ ল্যান ইন্টারফেস থেকে ট্রান্সমিশনের শ্রবণ বন্দরে পরিচালিত ট্র্যাফিক অবরোধ করা হয়েছে। "ট্রান্সমিশন-ডেমনকনফ" স্ক্রিপ্টটি তখন ভিপিএন আইপি ঠিকানার সাথে আবদ্ধ হওয়ার জন্য প্রয়োজনীয় সেটিংসের মাধ্যমে ট্রান্সমিশন-ডেমন শুরু করে। নোট করুন যে এই আদেশটি ইউএনএনপি / এনএটি-পিএমপি অক্ষম রয়েছে তাও নিশ্চিত করবে - পোর্ট ফরওয়ার্ডিং সম্পর্কে শীর্ষে আমার নোটটি দেখুন। "চমৎকার -15" ট্রান্সমিশনটিকে কম অগ্রাধিকারের জন্য সেট করে, যা নীচের নির্দিষ্ট 'বিগলবোন' ব্যবহার করার সময় আমি দরকারী বলে মনে করি - কখনও কখনও সংক্রমণ সংস্থানগুলি হোগ করতে পারে, যা সিস্টেমকে ধীর করে দেয়। কমপক্ষে কম অগ্রাধিকার সহ আরও গুরুত্বপূর্ণ সিস্টেমের কাজগুলি এখনও চালানো যেতে পারে। "ট্রান্সমিশন-ডাউন.কম" স্ক্রিপ্ট ভিপিএন বন্ধ হয়ে গেলে ফায়ারওয়াল বিধিগুলি সরিয়ে ফেলবে। তিনটি ভিন্ন স্ক্রিপ্ট ব্যবহার করা হয় যাতে ট্রান্সমিশন-ডেমন একটি অনিবদ্ধ ব্যবহারকারী হিসাবে চালানো যেতে পারে তবে ফায়ারওয়াল নিয়মগুলি রুট হিসাবে চালানো যেতে পারে।

এখন আসুন ওপেনভিপিএন সেটিংসে ফিরে যাই এবং আমাদের ট্রান্সমিশন স্ক্রিপ্ট শুরু এবং বন্ধ করতে ট্রিগার করতে "রুট-আপ" এবং "ডাউন" স্ক্রিপ্টগুলি সম্পাদনা করি।

sudo vim /opt/ibVPN/route-up.sh

এটি ভিমে আটকে দিন:

#! /bin/bash

/sbin/initctl emit transmission-vpn-up VPN_GATEWAY=$route_vpn_gateway LOCAL_IP=$ifconfig_local

এই সমস্ত স্ক্রিপ্টটি আপস্টার্টকে বলা হয় যে ট্রান্সমিশন-ডেমোন শুরু হওয়া উচিত এবং এটি ভিপিএন সংযোগের সাথে সংযুক্ত করার জন্য প্রয়োজনীয় তথ্য দেয়।

sudo vim /opt/ibVPN/down.sh

আবার, আরও আটকানো:

#! /bin/bash

/sbin/initctl emit transmission-vpn-down

এই স্ক্রিপ্টটি আরও সহজ - এটি সংক্রমণ-ডেমন থামার জন্য সংকেত।

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

sudo chown root:root -R /opt/ibVPN
sudo chmod 700 -R /opt/ibVPN
sudo chmod 400 /opt/ibVPN/pass

এর অর্থ হ'ল কেবল রুট ব্যবহারকারীরা ভিপিএন সংযোগ সেটিংস পরিবর্তন করতে বা দেখতে পারবেন।

ঠিক আছে, আমরা প্রায় শেষ! আমাদের সেটআপটি এখনও পর্যন্ত কাজ করছে কিনা তা পরীক্ষা করা যাক:

sudo openvpn --cd /opt/ibVPN --config config.ovpn

ট্রান্সমিশন ওয়েব জিইউআইতে আবার সংযোগ স্থাপন করুন এবং বিদ্যমান টরেন্টটি আবার চালু করুন বা একটি নতুন যুক্ত করুন। এটি ডাউনলোড করতে সক্ষম হওয়া উচিত, কয়েক মিনিটের অপেক্ষা সহকর্মীদের অপেক্ষা করার পরে। এটি যে কাজ করছে কিনা তা পরীক্ষা করার আমি যে নিফটি উপায়টি পেয়েছি তা হ'ল আইফটোপটি দেখা। Iftop ইনস্টল করুন এবং চালান:

sudo apt-get install iftop
sudo iftop -i tap1

এই স্ক্রিনে ভিপিএন দিয়ে চলমান সমস্ত সংযোগ দেখানো হবে। যদি আপনার টরেন্টটি ডাউনলোড হচ্ছে এবং সঠিকভাবে ভিপিএন ব্যবহার করছে, এখানে প্রচুর আইপি ঠিকানা এবং হোস্টের নাম থাকবে। ল্যান সংযোগের জন্য আইফটপটিও দেখুন:

sudo iftop -i eth0

এখানে আপনার ভিপিএন সার্ভার হয়ে একক আইপি ঠিকানায় প্রচুর পরিমাণে ট্র্যাফিক দেখা উচিত এবং তারপরে অন্যান্য ল্যান ডিভাইসে কেবলমাত্র ন্যূনতম ট্র্যাফিক - ধরে নেওয়া যায় যে আপনি নিজের বিগলবোনটিতে অন্যান্য পরিষেবা চালাচ্ছেন না।

আপনি নিশ্চিত করতে পারেন যে ভিপিএন এই নির্দেশাবলী অনুসরণ করে কাজ করছে ।
আপনার সাথে যোগাযোগ করার জন্য অন্যান্য পিয়াররা যে আইপি ঠিকানাটি ব্যবহার করে তা দেখার জন্য এই সাইটটি আপনাকে একটি টরেন্ট ডাউনলোড করতে দেয় - যদি সমস্ত কিছু কাজ করে তবে এটি হবে ভিপিএন আইপি ঠিকানা এবং আপনার নিজের ওয়ানের আইপি ঠিকানা নয়।

যদি আপনি সমস্যার সম্মুখীন হন তবে আপনি এটি করে আপসার্ট ত্রুটি লগটি দেখতে পারেন:

sudo tail -f /var/log/upstart/transmission-daemon.log

একটি পৃথক টার্মিনাল / এসএসএইচ উইন্ডোতে, উপরের মত ভিপিএন সংযোগ শুরু করার সময় টেল কমান্ডটি চালানোর চেষ্টা করুন এবং কোনও ত্রুটি বার্তা সন্ধান করুন। আশা করি আপনি ত্রুটি বার্তাগুলি দেখে সমস্যাটি সমাধান করতে পারবেন, যদি ইন্টারনেটে কোনও খোঁজ না নেওয়া হয়, বা কোনও মন্তব্য পোস্ট করুন।

এগুলি সমস্ত স্বয়ংক্রিয়ভাবে শুরু করতে কনফিগার করুন

আপনি যদি ওপেনভিপিএন টানেলটি শুরু করার জন্য ম্যানুয়ালি কমান্ড জারি করে খুশি হন বা আপনি এটি নিজের স্ক্রিপ্ট দিয়ে করতে চান, তবে আপনি হয়ে গেছেন। তবে আমি এটি বুট-এ শুরু করাতে চেয়েছিলাম, তাই আমি ওপেনভিপিএন চালু করার জন্য আরও একটি আপস্টার্ট স্ক্রিপ্ট তৈরি করেছি।

sudo vim /etc/init/openvpn-transmission.conf

এই শেষ জিনিসটি আমাদের পেস্ট করতে হবে!

description "OpenVPN client, with attached transmission-daemon"

start on started networking
stop on runlevel [!2345] or stopped networking

# Give time for Transmission to send info to trackers, wait for graceful close
kill timeout 45

# Start the OpenVPN tunnel again if it stops for some reason
respawn
# If it stops 5 times in a minute, give up trying to respawn it
respawn limit 5 60


exec openvpn --cd /opt/ibVPN --config config.ovpn

post-stop script
    # Pause for a few seconds, before exiting
    /bin/sleep 3s
end script

এই সমস্তটি সিস্টেমটি সিগন্যাল হওয়ার অপেক্ষা করে থাকে যে নেটওয়ার্কটি প্রস্তুত, এবং তারপরে এটি ওপেনভিপিএন টানেলটি শুরু করবে - যার ফলে ট্রান্সমিশন শুরু হবে। সিস্টেমটি বন্ধ হয়ে গেলে, বা যদি কোনও কারণে নেটওয়ার্কিং বন্ধ হয়ে যায়, আপস্টার্ট ফায়ারওয়াল বিধিগুলি সরিয়ে ফেলবে এবং ট্রান্সমিশন-ডিমন বন্ধ করে দেবে। সরল! এটি পুনরায় বুট করার পরেও কাজ চালিয়ে যাবে, সুতরাং এখন আপনি সম্পূর্ণ প্রস্তুত।

ট্রান্সমিশনের সাথে ইন্টারঅ্যাক্ট করতে, ওয়েব জিইউআই ব্যবহার করুন যেমনটি আমরা সেটআপ পর্বের সময় করেছিলাম। পোর্ট ফরওয়ার্ডিং সেটআপ করে জিইউআইকে ইন্টারনেটের মাধ্যমে অ্যাক্সেসযোগ্য করে তোলা সম্ভব। এটি কীভাবে করবেন সে সম্পর্কে প্রচুর টিউটোরিয়াল রয়েছে, তাই আমি এখানে এটি পুনরুক্ত করব না।

বিগলবোন থেকে সম্পূর্ণ ডাউনলোডগুলি পাওয়ার জন্য, আমি এনএফএস ব্যবহার করছি। আমি বিগলবোন থেকে লিনে আমার ডেস্কটপ কম্পিউটারে প্রায় 8 এমবি / এস অনুলিপি করার গতি পেতে পারি - এটি কম চালিত ডিভাইসটির জন্য বেশ ভাল। উবুন্টু এটি সেট আপ করার জন্য কিছু সহজ তথ্য সরবরাহ করে।


কি দারুন! আপনি এই সমস্ত জিনিস সন্ধানে কতক্ষণ ব্যয় করেছেন?
ইসমাইল মিগুয়েল

হাহাহা, বেশ কিছুক্ষণ। আমি এটি একবার ডিডি-ডাব্লুআরটি রাউটারে করে দিয়েছিলাম, তারপর যখন আমি আবার বিগলবোনের জন্য কাজ করছিলাম তখন আমি ভেবেছিলাম যে আমি এটি লিখেছি তাই কীভাবে করব তা ভুলে যাব না। : ডি
সানলানো

1
আপনার এটিও পড়তে হবে: unix.stackexchange.com/questions/88693/… (এটি দুর্দান্ত উত্তর)) এটি আপনাকে সহায়তা করবে, আমি এটি সম্পর্কে নিশ্চিত।
ইসমাইল মিগুয়েল

3
আমি ঠিক বুঝতে পেরেছি যে আমার ডিএনএস সার্ভারটি ওপেনডিএনএস ব্যবহার করার জন্য সেট করার পরে এবং পরিসংখ্যানগুলির সন্ধানের পরে, এই কনফিগারেশনটি স্বাভাবিক ডাব্লুএইএন সংযোগের মাধ্যমে ডিএনএস ফাঁস করে দেয় । আমি এটি ঠিক করতে পারি কিনা তা দেখার জন্য আমি আরও তদন্ত করব। আমি যে কোনও উপায়ে চলতে চলেছি, যেহেতু সংযোগটি নিজেই ভিপিএন-এর মাধ্যমে হয় - তবে এটি আদর্শ নয়।
সানলানো

1
@ সানলানো এটি আমাদের নজরে আনার জন্য ধন্যবাদ। আপনি / কখন আপনার কোনও সমাধান খুঁজে পান তা আমাদের জানান।
শীতকালীন ফ্ল্যাগগুলি

7

সাস্টিডিডি ব্যবহার করে এই কাজটি পেয়েছি তাই আমি ভেবেছিলাম ভাগ করে নেব। আমি আমার সমস্ত স্ক্রিপ্ট, কনফিগারেশন এবং শংসাপত্র একই ডিরেক্টরিতে রেখেছি যা আমি উল্লেখ করব/etc/openvpn/myprovider

ওপেনভিপিএন কনফিগারেশন

এটি আপনার নির্দিষ্ট ভিপিএন এর উপর নির্ভর করে তবে @ সানলানোর কনফিগারেশন থেকে একটি পার্থক্য হ'ল আমি কেবল একটি route-upস্ক্রিপ্ট ব্যবহার করি । সুতরাং আপনার কাজের সরবরাহিত কনফিগারেশন ছাড়াও আপনার প্রয়োজনীয় জিনিসগুলি এই লাইনগুলি:

route-noexec
route-up "/etc/openvpn/myprovider/transmission-route-up.sh"

আপনি যেখানে রাখবেন transmission-route-up.sh স্ক্রিপ্টটি রাখুন। কোনও downস্ক্রিপ্টের অনুপস্থিতি নোট করুন । (আমার ভিপিএন ইতিমধ্যে একটি কাস্টম ডাউন স্ক্রিপ্ট ব্যবহার করছিল তাই এটি যেভাবেই বিরোধিত হতে পারে)।

/etc/openvpn/myprovider/transmission-route-up.sh:

#!/bin/sh

# Print environment variables for transmission's benefit
printenv > /etc/openvpn/myprovider/vpn.env


# Set up VPN routes
ip route add default via $route_vpn_gateway dev $dev table 10

ip rule add from $ifconfig_local/32 table 10
ip rule add to $route_vpn_gateway/32 table 10

ip route flush cache


# Add firewall rules
iptables -A INPUT -i $dev -p udp --dport 24328 -j ACCEPT
iptables -A INPUT -i $dev -p tcp --dport 24328 -j ACCEPT

iptables -A OUTPUT -o $dev -p udp --sport 24328 -j ACCEPT
iptables -A OUTPUT -o $dev -p tcp --sport 24328 -j ACCEPT

প্রথম লাইনটি, printenvগুরুত্বপূর্ণ। আপনি যেখানে খুশি সেখানে এটিকে রাখুন, এটি পরে সিস্টেমডি পরিষেবাতে ব্যবহৃত হবে। আমি এটিকে আমার ভিপিএন কনফিগারেশনের মতো একই ডিরেক্টরিতে রেখেছি।

24328 প্রতিস্থাপন করুনআপনার ট্রান্সমিশন-ডেমোনটি যে পোর্ট শুনতে পাবে তার সাথে করুন। আমি iptables (ডেবিয়ান ব্যবহার করে) ব্যবহার করি, সুতরাং আপনি সম্ভবত @ সানলানোর কনফিগারেশন থেকে এই লাইনগুলি ufw লাইনগুলির সাথে প্রতিস্থাপন করতে পারেন।

সিস্টেমডি ভিপিএন পরিষেবা

এটি সেই পরিষেবা যা অটো আমাদের জন্য ভিপিএন শুরু করে। আপনার মেশিনে ওপেনভিএনপিএন-এর সঠিক পথটি যাচাই করে নিন এবং কনফিগারেশন ফাইলের পথটিও সঠিক is আপনাকে অবশ্যই সিস্টেমডি পরিষেবাগুলিতে পূর্ণ পথ নির্দিষ্ট করতে হবে

/etc/systemd/system/my-vpn.service:

[Unit]
Description=VPN connection
After=network.target

[Service]
Type=forking
PIDFile=/var/run/openvpn/vpn.pid
ExecStart=/usr/sbin/openvpn --cd /etc/openvpn/myprovider --config /etc/openvpn/myprovider/myconfig.ovpn --daemon --writepid /var/run/openvpn/vpn.pid

[Install]
WantedBy=multi-user.target

এর সাথে ভিপিএন পরিষেবা সক্ষম করুন:

systemctl enable my-vpn.service

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

systemctl start my-vpn.service
systemctl status my-vpn.service

যদি এটি শুরু / চলমান হয় তবে আপনি ভাল।

সিস্টেমডি ট্রান্সমিশন-ডেমন.সেবারিস

এই স্ক্রিপ্টটির জন্য ভিপিএন-পরিষেবা প্রয়োজন, সুতরাং ভিপিএন যদি নীচে যায় তবে ট্রান্সমিশন-ডিমনও নীচে যায়। যদি ভিপিএন পুনরায় চালু হয় তবে এটি কার্যকর and নোট করুন যে আমরা route-upস্ক্রিপ্টে প্রিন্ট করা এনভায়রনমেন্ট ভেরিয়েবলগুলি ব্যবহার করি ।

/etc/systemd/system/transmission-daemon.service:

[Unit]
Description=Transmission BitTorrent Daemon Under VPN
After=network.target my-vpn.service
Requires=my-vpn.service

[Service]
User=debian-transmission
Type=notify
EnvironmentFile=/etc/openvpn/vpn.env
ExecStart=/usr/bin/transmission-daemon -f --log-error --bind-address-ipv4 $ifconfig_local --rpc-bind-address 0.0.0.0 --no-portmap
ExecReload=/bin/kill -s HUP $MAINPID

[Install]
WantedBy=multi-user.target

এটি সক্ষম করুন

systemctl enable transmission-daemon.service

এবং এটি শুরু করুন

systemctl start transmission-daemon.service

আপনি পুনরায় বুট করার সময়, এটি সমস্ত স্বয়ংক্রিয়ভাবে শুরু হওয়া উচিত (ক্রমে!)। নোট করুন যে Type=simpleভিপিএন পরিষেবা ব্যবহারের ফলে স্ক্রিপ্ট অর্ডার দেওয়ার সময়কালে কিছু সমস্যা দেখা দেয়, তাই আমি ব্যবহারের পরামর্শ দিইforking পরিবর্তে ।

আপনি rpc-bind-addressযদি আরও সীমাবদ্ধ থাকতে চান তবে আপনি এটির জন্য একটি আসল আইপি-ঠিকানা নির্দিষ্ট করতে পারেন (এটি ওয়েব জিইউআই শোনার ঠিকানা, যা আপনার ভিপিএন-আইপি হওয়া উচিত নয়)। এবং আপনি যদি সুন্দর সহ সঞ্চালন চালাতে চান তবে কেবল ExecStartলাইনটি পরিবর্তন করুন এবং যুক্ত করুন/usr/bin/nice -n15 শুরুতে যুক্ত করুন।

ঠিকানা পরিবর্তন হ্যান্ডলিং

সময়ের সাথে সাথে একটি জিনিস আমি উল্লেখ করেছি যে ভিপিএন-সংযোগ যদি কোনও কারণে নতুন আইপি-ঠিকানা পায়, তবে ট্রান্সমিশনটি পুরানো ঠিকানায় আবদ্ধ থাকবে এবং কাজ করা বন্ধ করবে। এবং সহজভাবে করছেনsystemctl restart transmission-daemon.service এটি কাটা না। এটি পুরোপুরি থামাতে হবে এবং তারপরে নতুন করে শুরু করা দরকার।

কেন জানি না, তবে সেই কারণেই আমি আমার মূল রুট ক্রন্টব ( sudo crontab -e) এ নিম্নলিখিত লাইনগুলি যুক্ত করেছি :

# m h  dom mon dow   command
0 6 * * * /bin/systemctl stop my-vpn.service; /bin/systemctl start my-vpn.service
1 6 * * * /bin/systemctl stop transmission-daemon.service; /bin/systemctl start transmission-daemon.service

মাত্র আগ্রহের বাইরে, এটি কি কোনও বিগলবোনে চলছে? যদি তাই হয়, আপনি কি সংক্রমণ নিয়ে পারফরম্যান্সের সমস্যাগুলি দেখতে পাচ্ছেন? এছাড়াও, দুর্দান্ত লেখার আপ। :)
সানলানো

আহ .... না. এটি আমার সাধারণ ডেস্কটপ মেশিনে চলছে এবং আমি সেখানে কোনও সমস্যা লক্ষ্য করেছি।
জোনাস কাল্ডার্সটাম

যথেষ্ট ফর্সা। একটি ইন্টেল মেশিনে আমার জন্য ভাল কাজ করে, আমি আশা করছিলাম যে আমি একটি এআরএম প্রসেসরের সাহায্যে একটি সস্তা টরেন্ট বক্স তৈরি করতে পারি - তবে দৃশ্যত এটি এমনটি নয়।
সানলানো

জালিয়াতি পরীক্ষা করে দেখুন। এটি খুব পারফরম্যান্ট
জোনাস কাল্ডার্সটাম

ধন্যবাদ, আমি করব। অন্যান্য জিনিসগুলি এআরএম বাক্সে সূক্ষ্মভাবে চালিত হয়, তাই সম্ভবত রটারেন্ট সঠিকভাবে কাজ করবে।
সানলানো

3

আমি লক্ষ্য করেছি আপনি উল্লেখ করেছেন যে ট্রান্সমিশন ইউপিএনপি / এনএটি-পিএমপি-র জন্য ভিপিএন দিয়ে যায় না। আমি এটিও লক্ষ্য করেছি এবং ট্রান্সমিশনের জন্য একটি প্যাচ তৈরি করেছি যাতে এটি ইউপিএনপি-র জন্য বাইন্ড-ঠিকানা-আইপিভি 4 সেটিংকে সম্মান করে। আপনাকে ডিফল্ট গেটওয়ে নির্ধারণ করার জন্য NAT-PMP প্রয়োগ করা কিছুটা শক্ত। ইউপিএনপি হ'ল এই দিনগুলিতে প্রধান ব্যবহৃত হচ্ছে, তবে এটি সম্ভবত যথেষ্ট ভাল। আমি এটি trac.transmissionbt সাইটে বাগ হিসাবে লগ করেছি এবং প্যাচ সরবরাহ করেছি। আশা করি এটি ভবিষ্যতে প্রকাশে অন্তর্ভুক্ত করা হবে। https://trac.transmissionbt.com/ticket/5990

আপনি যদি পুনরায় সংকলন করতে না চান এই মুহুর্তের জন্য অন্য বিকল্পটি হ'ল মিনিআপএনপিসি প্যাকেজ থেকে ম্যানুয়ালি upnpc চালানো। যেমন

sudo apt-get install miniupnpc
upnpc -m 10.10.10.51 -a 10.10.10.51 51515 51515 TCP
upnpc -m 10.10.10.51 -a 10.10.10.51 51515 51515 UDP

যেখানে 10.10.10.51 হ'ল আপনার ভিপিএন আইপি এবং 51515 আপনার অনুরোধ করা টিসিপি / ইউডিপি পোর্ট port

ফরোয়ার্ডিং কতক্ষণের জন্য ভাল তা আমি নিশ্চিত নই। এছাড়াও আপনি সংযোগ বিচ্ছিন্ন করার সময় আপনার পোর্ট অপসারণ করতে '-d' বিকল্পটি ব্যবহার করতে চাইতে পারেন। আমি খুঁজে পেয়েছি যে আমি যদি না করি তবে আমি ভিপিএনতে লগইন করলে আমি আবার একই বন্দরটি পাব না।

চিয়ার্স


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