mirror of
https://github.com/hastagAB/Awesome-Python-Scripts.git
synced 2024-11-23 20:11:07 +00:00
Squid-Proxy-Installer-for-Ubuntu16
This commit is contained in:
parent
f2a4a5be6b
commit
4717eef374
110
Squid-Proxy-Installer-for-Ubuntu16/Squid_Proxy.py
Normal file
110
Squid-Proxy-Installer-for-Ubuntu16/Squid_Proxy.py
Normal file
|
@ -0,0 +1,110 @@
|
||||||
|
import subprocess, os
|
||||||
|
import platform
|
||||||
|
|
||||||
|
|
||||||
|
def squid():
|
||||||
|
if platform.platform().find("Ubuntu-16.04"):
|
||||||
|
squid = "squid"
|
||||||
|
else:
|
||||||
|
squid = "squid3"
|
||||||
|
subprocess.call(["sudo", "apt-get", "update"])
|
||||||
|
subprocess.call(["sudo", "apt-get", "install", "squid"])
|
||||||
|
path = "/etc/{}/squid.conf".format(squid)
|
||||||
|
file = open(path).read()
|
||||||
|
|
||||||
|
s1 = file.replace("http_access allow localhost manager", "#http_access allow localhost manager")
|
||||||
|
s2 = s1.replace("http_access deny manager", "#http_access deny manager")
|
||||||
|
s3 = s2.replace("http_access allow localhost\n", "http_access allow all\n")
|
||||||
|
|
||||||
|
file_port = file.split("\nhttp_port ")[1].split("\n")[0]
|
||||||
|
print("Default Port: ", file_port)
|
||||||
|
port = input("Change to: ")
|
||||||
|
c_port = s3.replace("\nhttp_port " + file_port + "\n", "\nhttp_port " + port + "\n")
|
||||||
|
open("/etc/{}/squid.conf".format(squid), "w").write(c_port)
|
||||||
|
subprocess.call(["sudo", "service", squid, "restart"])
|
||||||
|
print("Squid Proxy installed")
|
||||||
|
|
||||||
|
|
||||||
|
def add_pw():
|
||||||
|
if platform.platform().find("Ubuntu-16.04"):
|
||||||
|
squid = "squid"
|
||||||
|
else:
|
||||||
|
squid = "squid3"
|
||||||
|
subprocess.call(["sudo", "apt-get", "install", "apache2-utils"])
|
||||||
|
subprocess.call(["sudo", "touch", "/etc/{}/squid_passwd".format(squid)])
|
||||||
|
subprocess.call(["sudo", "chown", "proxy", "/etc/{}/squid_passwd".format(squid)])
|
||||||
|
user = input("Username: ")
|
||||||
|
subprocess.call(["sudo", "htpasswd", "/etc/{}/squid_passwd".format(squid), user])
|
||||||
|
path = "/etc/squid/squid.conf"
|
||||||
|
file = open(path).read()
|
||||||
|
sq = file.replace("http_access allow all\n",
|
||||||
|
"auth_param basic program /usr/lib/squid/basic_ncsa_auth /etc/squid/squid_passwd\n"
|
||||||
|
"acl ncsa_users proxy_auth REQUIRED\n"
|
||||||
|
"http_access allow ncsa_users\n")
|
||||||
|
open("/etc/squid/squid.conf", "w").write(sq)
|
||||||
|
subprocess.call(["sudo", "service", squid, "restart"])
|
||||||
|
print("Succesfully")
|
||||||
|
|
||||||
|
|
||||||
|
def change_pw():
|
||||||
|
if platform.platform().find("Ubuntu-16.04"):
|
||||||
|
squid = "squid"
|
||||||
|
else:
|
||||||
|
squid = "squid3"
|
||||||
|
user = input("Username: ")
|
||||||
|
subprocess.call(["sudo", "htpasswd", "/etc/{}/squid_passwd".format(squid), user])
|
||||||
|
subprocess.call(["sudo", "service", squid, "restart"])
|
||||||
|
print("Succesfully")
|
||||||
|
|
||||||
|
|
||||||
|
def remove_pw():
|
||||||
|
if platform.platform().find("Ubuntu-16.04"):
|
||||||
|
squid = "squid"
|
||||||
|
else:
|
||||||
|
squid = "squid3"
|
||||||
|
os.remove("/etc/{}/squid_passwd".format(squid))
|
||||||
|
path = "/etc/{}/squid.conf".format(squid)
|
||||||
|
file = open(path).read()
|
||||||
|
sq = file.replace("auth_param basic program /usr/lib/squid/basic_ncsa_auth /etc/squid/squid_passwd\n"
|
||||||
|
"acl ncsa_users proxy_auth REQUIRED\n"
|
||||||
|
"http_access allow ncsa_users\n", "http_access allow all\n")
|
||||||
|
open("/etc/{}/squid.conf".format(squid), "w").write(sq)
|
||||||
|
subprocess.call(["sudo", "service", squid, "restart"])
|
||||||
|
print("Succesfully")
|
||||||
|
|
||||||
|
|
||||||
|
def uninstall_squid():
|
||||||
|
if platform.platform().find("Ubuntu-16.04"):
|
||||||
|
squid = "squid"
|
||||||
|
else:
|
||||||
|
squid = "squid3"
|
||||||
|
del_sq = input("Are you sure? (y/n): ")
|
||||||
|
if del_sq == "y" or del_sq == "Y":
|
||||||
|
subprocess.call(["sudo", "apt-get", "purge", "--auto-remove", squid])
|
||||||
|
print("Succesfully")
|
||||||
|
else:
|
||||||
|
pass
|
||||||
|
|
||||||
|
while True:
|
||||||
|
squid_select = input("""
|
||||||
|
1 - Install Squid Proxy
|
||||||
|
2 - Add Password
|
||||||
|
3 - Change Password
|
||||||
|
4 - Remove Password
|
||||||
|
5 - Uninstall Squid Proxy
|
||||||
|
6 - Exit\n""")
|
||||||
|
|
||||||
|
if squid_select == "1":
|
||||||
|
squid()
|
||||||
|
elif squid_select == "2":
|
||||||
|
add_pw()
|
||||||
|
elif squid_select == "3":
|
||||||
|
change_pw()
|
||||||
|
elif squid_select == "4":
|
||||||
|
remove_pw()
|
||||||
|
elif squid_select == "5":
|
||||||
|
uninstall_squid()
|
||||||
|
elif squid_select == "6":
|
||||||
|
break
|
||||||
|
else:
|
||||||
|
pass
|
Loading…
Reference in New Issue
Block a user