সাইগউইন ব্যবহার করে উইন্ডোজ থেকে লিনাক্স সার্ভারে sshEEnv পাঠান


0

আমি উইন্ডোজ সিগউইন থেকে একটি ওপেন সুস লিনাক্স সার্ভারে ssh করছি। আমি ssh কমান্ডের মাধ্যমে আমার স্থানীয় পরিবেশের একটি পরিবর্তনশীল প্রেরণের চেষ্টা করছি যাতে লগ ইন করার পরে আমি কিছু নির্দিষ্ট .bashrc ফাইলটি লোড করতে পারি I এখানে আমি যা চেষ্টা করেছি তা এখানে।

উইন্ডোজ মেশিনে এই এনভিও ভেরিয়েবল রয়েছে

IDENTITY=samiron
echo %IDENTITY%
   samiron

লিনাক্স মেশিনে আমার আছে

vim /etc/ssh/sshd_config
AcceptEnv IDENTITY

ইন /home/user/.bashrcআমি কিছু লিখেছে

export ME=$IDENTITY

আমার পরিকল্পনাটি হ'ল ফাইল থেকে ফাইল করা .bashrc.samironএবং করা dosource ~/.bashrc.$ME.bashrc

তবে আমি নীচের মতো এসএসএস করছি এবং ভেরিয়েবলটি $MEরাখার প্রত্যাশা করছি"samiron"

ssh -o SendEnv=IDENTITY user@server.com

তবে লগিংয়ের পরে

user@server:~> echo $ME

এটি কিছুই দেখায় না। আমি এখানে কি ভুল করছি কেউ আমাকে পরামর্শ দিতে পারে?

উত্তর:


1

প্রত্যাশা অনুযায়ী কাজ করার আগে এই দুটি শর্ত পূরণ করা উচিত:

  1. স্থানীয় ক্লায়েন্টের পরিবেশ থেকে ভেরিয়েবলের ফরোয়ার্ডিং গ্রহণ করতে আপনার ssh সার্ভারটি কনফিগার করতে হবে। যেমন আচরণের অনুমতি দেওয়া এটি কোনও সুরক্ষা ঝুঁকি হতে পারে এটি সাধারণত ডিফল্টরূপে অক্ষম থাকে। আপনি আপনার ssh সার্ভার কনফিগারেশনে "AcceptEnv" নির্দেশ নির্দিষ্ট করে এটি সক্ষম করতে পারেন । সুতরাং / etc / ssh / sshd_config ফাইলটিতে এর মতো কিছু রাখুন এবং ssh সার্ভার পরিষেবাটি পুনরায় লোড করুন (ভেরিয়েবলের নাম ওয়াইল্ডকার্ড ধারণ করতে পারে, আপনি সাদা স্থানের দ্বারা পৃথক একাধিক ভেরিয়েবল নির্দিষ্ট করতে পারেন, ম্যান sshd_config- এ বিশদ )

    গ্রহণ করুন VARIABLE_NAME

  2. এই বৈশিষ্ট্যটি কেবলমাত্র সংস্করণ 2 এর ssh প্রোটোকলের জন্য কাজ করে । এটি প্রায় সমস্ত আধুনিক লিনাক্স বিতরণে ডিফল্টরূপে পূরণ করা হয় যদি এটি পরিবর্তন না করা হয় ( "প্রোটোকল" নির্দেশ)।


0

ওহ, আমি sshd সার্ভারটি পুনরায় চালু করার অংশটি অনুপস্থিত।

sudo /etc/init.d/sshd restart

আমার সমস্যা সমাধান

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.