-o password_stdin
उदाहरण के लिए, फ्रीबीएसडी सभी प्रणालियों पर काम नहीं करता है। आदि।
आप expect
इंटरप्रेटर का भी उपयोग कर सकते हैं , यह sshfs के साथ काम करना चाहिए और चाल करना चाहिए। उदाहरण के लिए,
एक अन्य समाधान यह होगा sshpass
कि मान लीजिए कि आप निर्देशिका / var / www का समर्थन कर रहे हैं
समर्थन करना:
name=$(date '+%y-%m-%d')
mkdir /backup/$name && tar -czvf /backup/$name/"$name.tar.gz" /var/www
बैकअप फ़ाइल को बैकअप सर्वर पर अपलोड करना
sshpass -p "your_password" scp -r backup_user@target_ip:/home/ /backup/$name
तो यह आज के बैकअप के साथ डायरेक्टरी अपलोड करेगा
लेकिन फिर भी, जैसा कि उच्च, सबसे अच्छा (सुरक्षित और सरल) तरीका बताया गया था, ssh की जोड़ी
का उपयोग करना होगा। केवल असुविधा यह होगी कि आपको हर सर्वर पर एक बार कुंजी निर्माण प्रक्रिया से गुजरना होगा आपको जोड़ी बनाने की आवश्यकता है, लेकिन यह उन सभी सर्वरों पर सादे पाठ प्रारूप में एक पासवर्ड रखने से बेहतर है जो आप बैकअप लेना चाहते हैं :),
एक कुंजी जोड़ी को उचित तरीके से उत्पन्न करना
स्थानीय सर्वर पर
ssh-keygen -t rsa
रिमोट सर्वर पर
ssh root@remote_servers_ip "mkdir -p .ssh"
दूरस्थ सर्वर पर जनरेटेड सार्वजनिक कुंजी अपलोड करना
cat ~/.ssh/id_rsa.pub | ssh root@remote_servers_ip "cat >> ~/.ssh/authorized_keys"
दूरस्थ सर्वर पर अनुमतियाँ सेट करें
ssh root@remote_servers_ip "chmod 700 ~/.ssh; chmod 640 ~/.ssh/authorized_keys"
लॉग इन करें
ssh root@remote_servers_ip
SSH प्रोटोकॉल v2 को सक्षम करना
"/ 2 /" / ssh / sshd_config में "प्रोटोकॉल 2"
sshd में सार्वजनिक कुंजी प्राधिकरण सक्षम करना
"/" / ssh / sshd_config ""
अगर StrictModes हां / etc / ssh / sshd_config पर सेट है
restorecon -Rv ~/.ssh