35 lines
1.2 KiB
Python
35 lines
1.2 KiB
Python
import paramiko
|
|
|
|
def install_dhcp_server(remote_host, username, password):
|
|
# Create an SSH client
|
|
ssh = paramiko.SSHClient()
|
|
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
|
|
|
|
try:
|
|
# Connect to the remote machine
|
|
ssh.connect(remote_host, username=username, password=password)
|
|
|
|
# Update package list
|
|
stdin, stdout, stderr = ssh.exec_command('sudo apt update')
|
|
stdout.channel.recv_exit_status() # Wait for the command to complete
|
|
|
|
# Install ISC DHCP Server
|
|
stdin, stdout, stderr = ssh.exec_command('sudo apt install -y isc-dhcp-server')
|
|
stdout.channel.recv_exit_status() # Wait for the command to complete
|
|
|
|
# Optional: you can add more commands to configure the DHCP server here
|
|
print("DHCP server installed successfully.")
|
|
|
|
except Exception as e:
|
|
print(f"An error occurred: {e}")
|
|
|
|
finally:
|
|
# Close the SSH connection
|
|
ssh.close()
|
|
|
|
if __name__ == "__main__":
|
|
remote_host = "192.168.1.100" # Replace with your remote machine's IP
|
|
username = "your_username" # Replace with your SSH username
|
|
password = "your_password" # Replace with your SSH password
|
|
install_dhcp_server(remote_host, username, password)
|