02-09-2017, Saat: 21:51
Geçenlerde birileri python ile sunucuya bağlanarak komut gönderme yapılabilir mi diye sormuştu, sanırım bunu demek istediler.
Python'da Paramiko adlı modül ile sunucuya SSH bağlantısı sağlayıp komut gönderebiliyoruz.
modülümüzü yüklememiz için:
Eğer mobil ise qpthon uygulamasındaki scripts klasöründen pip_cosole.py sciprtini çalıştırıp
diyoruz ve paramiko yüklüyoruz.
Daha sonra aşağıdaki kodun içine gerekli bilgileri girip komutumuzu gönderiyoruz. Basit olarak komut gönderim örneği:
Alternatif olarak eğer birden fazla komutu tek seferde göndermek istiyosanız şu kodu örnek olarak kullanabilir veya kendinizce düzenleyebilirsiniz.
Python'da Paramiko adlı modül ile sunucuya SSH bağlantısı sağlayıp komut gönderebiliyoruz.
modülümüzü yüklememiz için:
Kod:
python -m pip install paramiko
Eğer mobil ise qpthon uygulamasındaki scripts klasöründen pip_cosole.py sciprtini çalıştırıp
Kod:
pip install paramiko
diyoruz ve paramiko yüklüyoruz.
Daha sonra aşağıdaki kodun içine gerekli bilgileri girip komutumuzu gönderiyoruz. Basit olarak komut gönderim örneği:
PHP Kod:
import paramiko
# Suncu ip adresi
hostname = "xxx.xxx.xxx.xxx"
# kullanici adi
myuser = 'root'
# Sifre
passwd = '******'
# Burasi varsa security key icin key yolu
mySSHK = '****.pem'
sshcon = paramiko.SSHClient()
sshcon.set_missing_host_key_policy(paramiko.AutoAddPolicy())# no known_hosts error
sshcon.connect(hostname, username=myuser, password=passwd)
# Eger key ile baglanacaksaniz asagidaki satirin basindaki "#" isaretini kaldirin
#sshcon.connect(hostname, username=myuser, key_filename=mySSHK)
commands = raw_input("Komut girin: ")
stdin, stdout, stderr = sshcon.exec_command(commands)
recv = stdout.read()
print recv
sshcon.close()
Alternatif olarak eğer birden fazla komutu tek seferde göndermek istiyosanız şu kodu örnek olarak kullanabilir veya kendinizce düzenleyebilirsiniz.
PHP Kod:
import paramiko
import time
# Suncu ip adresi
hostname = "xxx.xxx.xxx.xxx"
# kullanici adi
myuser = 'root'
# Sifre
passwd = '******'
# Burasi varsa security key icin
mySSHK = '****.pem'
sshcon = paramiko.SSHClient()
sshcon.set_missing_host_key_policy(paramiko.AutoAddPolicy())# no known_hosts error
sshcon.connect(hostname, username=myuser, password=passwd)
# Eger key ile baglanacaksaniz asagidaki satirin basindaki "#" isaretini kaldirin
#sshcon.connect(hostname, username=myuser, key_filename=mySSHK)
# Gonderilecek komutlari alt alta asagidaki gibi girebilirsiniz.
commands = '''
service --status-all
echo "islem tamam"
date
'''
for i in commands.splitlines():
if not i == "":
stdin, stdout, stderr = sshcon.exec_command(i)
recv = stdout.read()
print recv
time.sleep(1)
sshcon.close()
Turbobit Premium Link Çeviri | Turbobit Link Generator | http://turbobit.qpython.club