रिमोट सर्वर से Nautilius-Connect के माध्यम से sudo priviliges के साथ फ़ोल्डर्स तक पहुँचें


9

मुझे /var/logssut के माध्यम से "सर्वर से कनेक्ट करें" का उपयोग करके, अपने दूरस्थ सर्वर पर फ़ोल्डर और ऐसे कई फ़ोल्डर्स तक पहुंचने की आवश्यकता है । मैं रूट लॉगिन से बचता हूं और इसे अक्षम कर दिया है। मैं sudoइसके बजाय उपयोग करना चाहूंगा , जैसे मैं टर्मिनल में एसएसएच सत्रों के साथ करता हूं। मैं sudoदूरस्थ सर्वर पर पहुँच प्राप्त करने के लिए नॉटिलस का उपयोग कैसे कर सकता हूं ? (रूट लॉगिन सर्वर पर अक्षम है)

यदि नॉटिलस ही नहीं, तो क्या कोई विकल्प है जो इसे पूरा करने में मदद कर सकता है?


सभी प्रिय डाउनवोटर्स को .. और जिन्होंने इसे डुप्लिकेट के रूप में चिह्नित किया है .. यह एक अलग सवाल है। मुझे दूरस्थ मशीन पर फ़ाइलों / फ़ोल्डरों को उस मशीन के sudoer के रूप में एक्सेस करने की आवश्यकता है जो क्लाइंट मशीन पर नहीं है।
रजत गुप्ता

क्या आप अपनी त्रुटियों के बारे में अधिक विशिष्ट हो सकते हैं?
सेठ

एक मूर्खतापूर्ण सवाल की तरह। आप कह रहे हैं कि आप रूट एक्सेस प्राप्त नहीं कर सकते क्योंकि आप ... अक्षम रूट एक्सेस। इसे फिर से सक्षम करें।
Psusi

@psusi: नहींं, मैं रूट एक्सेस की मांग नहीं कर रहा हूं .. मैं रिमोट मशीन पर एक sudoer जा रहा हूं, nautilus (या एक वैकल्पिक के रूप में कुछ और) के माध्यम से sudo privelges के साथ फ़ोल्डर्स का उपयोग करना चाहता हूं .. IMHO इसका मतलब यह नहीं है कि मैं रूट एक्सेस, या करता है?
रजत गुप्ता

हां, sudoइसका मतलब सुपर-यूजर (रूट) के रूप में करें। क्या आप कह रहे हैं कि आप sudoसर्वर पर मैन्युअल रूप से काम कर सकते हैं , आपको सर्वर से कनेक्ट करते समय इसका उपयोग करने के लिए बस नॉटिलस प्राप्त करने की आवश्यकता है?
Psusi

जवाबों:


6

जाहिर है कि आपके स्थानीय रूट खाते के रूप में नॉटिलस चल रहा है (sudo, gksu, आदि के साथ) जो आपको सर्वर पर रूट एक्सेस नहीं देगा।

समस्या यह है कि OpenSSH के भीतर SFTP सर्वर (जो कि Nautilus कनेक्ट कर रहा है) कमांड का समर्थन नहीं करता है जैसे sudo- यह एक शेल वातावरण नहीं है। जो आप सरल पूछ रहे हैं वह मानक तंत्र के माध्यम से संभव नहीं है।

हालांकि आप विकल्पों के बिना नहीं हैं। मुझे यकीन नहीं है कि आप SSH से परिचित हैं, लेकिन आप बंदरगाहों को एक कनेक्शन में वापस भेज सकते हैं ताकि आप सामान्य रूप से जुड़ सकें, एक साधारण FTP सर्वर को रूट और टनल के रूप में चलाएं जो SSH पर आपके कंप्यूटर पर वापस आ जाए। भयानक लगता है, लेकिन यह काफी सरल है।

सर्वर पर, चलाएँ:

# newer Ubuntu installs:
sudo apt-get install python-pyftpdlib

# older Ubuntu installs
sudo apt-get install python-pip
sudo pip install pyftpdlib

फिर अपने कंप्यूटर से, बस एक लघु SSH कमांड चलाएँ:

# If you installed with pip
ssh -tL localhost:2121:localhost:2121 -L localhost:21212:localhost:21212 user@server "sudo python -m pyftpdlib -i localhost -w -p 2121 -r 21212-21212 -d /"

# If you installed with apt-get (and pyftpdlib is pre-1.3, true in 13.10)
ssh -tL localhost:2121:localhost:2121 -L localhost:21212:localhost:21212 user@server "sudo python -m pyftpdlib.ftpserver -i localhost -w -p 2121 -r 21212-21212 -d /"

और फिर Nautilus में (आपके कंप्यूटर पर), से कनेक्ट करें ftp://localhost:2121। SSH का जादू आगे बढ़ेगा कि FTP सर्वर पर रूट के रूप में चल रहा है।

अन्य प्रोटोकॉल हैं (मैंने एक बेहतर की तलाश में कुछ समय बिताया है) लेकिन एफ़टीपी को उठना और बड़े हिस्से में धन्यवाद चलाना सबसे आसान है pyftpdlib। आप वेबदाव एट अल के साथ इसी तरह की चीजें कर सकते हैं, मुझे यकीन है ... यह अभी बहुत अधिक हैकिंग होगा।


धन्यवाद..श्री लेकिन यह कहता है: /usr/bin/python: No module named pyftpdlib.__main__; 'pyftpdlib' is a package and cannot be directly executedसर्वर को प्रमाणित करते समय।
रजत गुप्ता

कैसा कष्टकर। Pyftpdlib की apt-मिल स्थापित संस्करण में यह आप थोड़ा अलग आदेश की जरूरत है लगता है:sudo python -m pyftpdlib.ftpserver ...
ओली

pyftpdlib.ftpserver module is deprecatedजब आप apt-get (14.04 पर कम से कम) का उपयोग करते हैं तो यह आपको मिलता है। तुम वैसे भी पाइप रास्ता चुनने की आवश्यकता होगी
balping

2

यदि नॉटिलस ही नहीं, तो क्या कोई विकल्प है जो इसे पूरा करने में मदद कर सकता है?

क्या आपने WinSCP की कोशिश की है? आप उनकी वेबसाइट से एक पोर्टेबल निष्पादन योग्य डाउनलोड कर सकते हैं और WINE का उपयोग करके इसे निष्पादित कर सकते हैं।

  • का उपयोग कर स्थापित करें sudo apt-get install wine
  • Http://winscp.net/eng/download.php से पोर्टेबल निष्पादन योग्य डाउनलोड और अनपैक करें
  • संदर्भ मेनू का उपयोग करके WinSCP.exe चलाएं या चलाएं wine WinSCP.exe
  • फ़ाइल प्रोटोकॉल को SCP पर सेट करें और अपने होस्ट और उपयोगकर्ता नाम को इनपुट करें
  • "उन्नत" विंडो खोलें और पर्यावरण में शैल विकल्प सेट करें-> एससीपी / शेल टू sudo su -
  • अपने होस्ट पर लॉगिन करें
  • अब आप आंतरिक संपादक या वाइन नोटपैड का उपयोग करके लॉग तक पहुंच सकते हैं

Nautilus से ड्रैग एंड ड्रॉप भी संभव है।


0

के साथ एक टर्मिनल से नॉटिलस लॉन्च करें gksudo nautilus

याद रखें कि रूट अनुमतियों के साथ चलने वाले GUI उपकरण एक अच्छी नीति नहीं है।


0

यह सबसे अच्छा तरीका नहीं हो सकता है, लेकिन सिर्फ एक विचार है, अगर आपके रिमोट सर्वर में X11 सक्षम है, तो आप बस एक कमांड को प्रिलोड कर सकते हैं

ssh -X usr @ svr: ~ / gksudo nautilus

लेकिन @ ओली ने इसे कवर कर लिया, आप ओपनएसएसएच के भीतर एसएफटीपी सर्वर का उपयोग नहीं कर सकते

इसके अलावा, यह एक विचार के लिए बहुत बुरा नहीं है, लेकिन अगर आप भी अपने sshuser को केवल उन फ़ाइलों तक पहुंचने की अनुमति देते हैं जिनकी आपको आवश्यकता है, तो आपकी समस्या हल हो गई है।


0

मुझे यकीन नहीं है कि मैं ठीक से जवाब दे रहा हूं, लेकिन शायद मैं थोड़ी मदद कर सकता हूं।

के साथ अपने सर्वर में ssh ssh -XC user@address

जब कुछ खोला जाता है तो -XC टैग आपके कंप्यूटर में विंडो को पाइप करेगा।

फिर कोशिश करें sudo nautilusऔर फिर आपके सर्वर का नॉटिलस आपकी स्थानीय स्क्रीन पर खुल जाएगा।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.