অন্যান্য সমস্ত ক্ষেত্রে যখন এসএসএস কাজ করে তখন রিমোট ড্রশ কমান্ডগুলি এসএসএস ত্রুটিগুলির সাথে ব্যর্থ হতে পারে?


10

আমার তিনটি সার্ভারে (ডেভ, ইউএটি এবং প্রোডাকশন) সরকারী এবং বেসরকারী এসএসএস কী রয়েছে যাতে আমি দূর থেকে বা অন্য একটিতে লগ ইন করতে পারি। আদেশগুলি sshএবং scpআদেশের জন্য সবকিছু নিখুঁতভাবে কাজ করছে ।

এটি ড্রাশের জন্য অবশ্য কাজ করে নাdrush @dev statusউদাহরণস্বরূপ, আমি যদি ইউএটি থেকে নির্বাহ করি তবে আমি সার্ভারের ব্যানারটি পেয়ে বলছি যে সিস্টেমটি "অনুমোদিত ব্যবহারকারীদের দ্বারা কেবলমাত্র ব্লাহ ব্লাহ ব্লাহ ব্যবহার করতে হবে " এবং তারপরে আমি পেয়েছি

অনুমতি অস্বীকার করা হয়েছে (সর্বজনীন, পাসওয়ার্ড, কীবোর্ড-ইন্টারেক্টিভ)।

আমার ~/.drush/aliases.drushrc.phpফাইলটিতে রয়েছে:

# Development #
$aliases['dev'] = array(
  'uri' => 'http://default',
  'root' => '/var/www/vhosts/dev.www.company.com/current/',
  'remote-host' => 'companya0.company.com',
  'remote-user' => 'myusername'
);

# UAT #
$aliases['uat'] = array(
  'uri' => 'http://default',
  'root' => '/var/www/vhosts/uat.www.company.com/current/',
  'remote-host' => 'companyc6.company.com',
  'remote-user' => 'myusername'
);

# Production #
$aliases['prod'] = array(
  'uri' => 'http://default',
  'root' => '/var/www/vhosts/www.company.com/current/',
  'remote-host' => 'companyc1.company.com',
  'remote-user' => 'myusername'
);

কেবলমাত্র ড্র্যাশের আমার এসএসএস কী ব্যবহার করতে কোনও সমস্যা আছে। এটি কাজ করা থেকে বাধা দিতে পারে কি?


3
আমার ধারণা এটি নির্ভর করে যে কোন ব্যবহারকারী ড্রাশ চালাচ্ছেন। যদি ড্রাশ www-data(উদাহরণস্বরূপ) দ্বারা চালিত হয় , তবে আপনার এসএসএইচ কীগুলি ভুল / বাতিল বা অ-শ্বেত তালিকাভুক্ত থাকতে পারে।
চাঁপাবু

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

@ ছাপাবু: হ্যাঁ, আমাকে sudoআগে ব্যবহার drushকরতে হবে এবং এটি প্রদর্শিত হবে যে সমস্ত কিছুই রুট হিসাবে চলছে (একটি সিকিউরিটি হোল যা আমি সিসাদমিনকে সতর্ক করেছি)। দেখা যাচ্ছে এটিই সমস্যা। সিসাদমিনের জন্য অপেক্ষা করার সময় আমি বর্তমানে একটি সমাধান খুঁজছি ...
আইকনোক্লাস্ট

উত্তর:


19

আপনার drushrc.php ফাইলে এই লাইনটি রাখুন:

$options['ssh-options'] = '-o PasswordAuthentication=no -i /home/YOURUSERNAME/.ssh/id_rsa';

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


বাবু তুমি দুর্দান্ত ...
আইকনোক্লাস্ট

উইন্ডোজ উদাহরণস্বরূপ: $ বিকল্পগুলি ['ssh-विकल्प'] = '-ও পাসওয়ার্ডপ্রযুক্তি = নো-সি সি: \ ব্যবহারকারীদের \ ল্যাপটপ 1 ss .ssh \ id_rsa';
ব্রায়ান জিনেঙ্ক

যদি সঠিকভাবে বোঝা যায় তবে "/ home/YOURUSERNAME/.ssh/id_rsa" dir স্থানীয় যেখানে ড্রাশ কমান্ড কার্যকর করা হয়। "হোম / YOURUSERNAME" Dir $ হোম Dir এবং id_rsa ব্যক্তিগত কী iteself SSH-Keygen মাধ্যমে উৎপন্ন হয়
latvian

1

এখানে চেক করুন: অ্যাপাচি হিসাবে ড্রশ কীভাবে চালাবেন

এর আওয়াজ দ্বারা আপনার সার্ভারে ড্রাশের জন্য কেবল মালিক / গোষ্ঠীটি বদলাতে হবে!


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