24 lines
999 B
Python
24 lines
999 B
Python
import paramiko
|
|
import sys
|
|
|
|
sys.stdout.reconfigure(encoding='utf-8')
|
|
|
|
ssh = paramiko.SSHClient()
|
|
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
|
|
try:
|
|
ssh.connect('140.44.4.71', username='snarf', key_filename=r'C:\Users\Snarf\.ssh\id_ed25519_snarfnet', timeout=5)
|
|
except Exception:
|
|
ssh.connect('140.44.4.71', username='root', key_filename=r'C:\Users\Snarf\.ssh\id_ed25519_snarfnet', timeout=5)
|
|
|
|
stdin, stdout, stderr = ssh.exec_command('grep -r -i "pihole" /data/nginx/proxy_host/ 2>/dev/null')
|
|
out = stdout.read().decode('utf-8', errors='ignore')
|
|
print("Grep pihole in proxy_host:\n", out)
|
|
|
|
# Also let's inspect sqlite database in NPM
|
|
stdin, stdout, stderr = ssh.exec_command('sqlite3 /data/database.sqlite "SELECT id, domain_names, forward_host, forward_port, forward_scheme, enabled FROM proxy_host WHERE domain_names LIKE \'%pihole%\' OR domain_names LIKE \'%dns%\';"')
|
|
out = stdout.read().decode('utf-8', errors='ignore')
|
|
print("\nProxy hosts in SQLite:\n", out)
|
|
|
|
ssh.close()
|
|
|