मेरे पास मेरे तीनों सर्वरों (देव, यूएटी, और प्रोडक्शन) पर सार्वजनिक और निजी ssh कुंजियाँ हैं, ताकि मैं दूरस्थ रूप से, या एक से दूसरे में लॉग इन कर सकूँ। सब कुछ पूरी तरह से ssh
और scp
आदेशों के लिए काम कर रहा है ।
हालांकि, यह ड्रश के लिए काम नहीं करता है । यदि मैं यूएटी drush @dev status
से निष्पादित करता हूं , उदाहरण के लिए, मुझे सर्वर का बैनर यह कहते हुए मिलता है कि सिस्टम "अधिकृत उपयोगकर्ताओं द्वारा केवल ब्ला ब्ला ब्ला द्वारा उपयोग किया जाना है ", और फिर मुझे मिलता है
अनुमति से इनकार (publickey, पासवर्ड, कीबोर्ड-इंटरैक्टिव)।
मेरी ~/.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'
);
केवल Drush को मेरी ssh कुंजियों का उपयोग करने में कोई समस्या है। इसे काम करने से क्या रोका जा सकता है?
sudo
पहले इस्तेमाल करना है drush
और ऐसा प्रतीत होता है कि सब कुछ रूट के रूप में चल रहा है (एक सुरक्षा छेद जिसे मैंने sysadmin के बारे में सतर्क किया है)। ऐसा प्रतीत होता है कि यह समस्या है। मैं वर्तमान में एक समाधान की तलाश में हूं, जब मैं sysadmin की प्रतीक्षा करता हूं ...
www-data
(उदाहरण के लिए) चलाया जा रहा है , तो आपकी SSH कुंजियाँ गलत / अस्वीकृत / नॉन- व्हाइटेल्ड हो सकती हैं।