changed tags for ek_facility and added VPN tests
This commit is contained in:
31
VPN/UniFi/unifi.ovpn
Normal file
31
VPN/UniFi/unifi.ovpn
Normal file
@@ -0,0 +1,31 @@
|
||||
client
|
||||
dev tun
|
||||
proto tcp
|
||||
remote 216.82.205.207 1194
|
||||
resolv-retry infinite
|
||||
nobind
|
||||
|
||||
# Downgrade privileges after initialization (non-Windows only)
|
||||
user nobody
|
||||
group nogroup
|
||||
|
||||
persist-key
|
||||
persist-tun
|
||||
|
||||
auth-user-pass
|
||||
remote-cert-tls server
|
||||
cipher AES-256-CBC
|
||||
comp-lzo
|
||||
verb 3
|
||||
|
||||
auth SHA1
|
||||
key-direction 1
|
||||
|
||||
reneg-sec 0
|
||||
|
||||
redirect-gateway def1
|
||||
|
||||
ca unifi_ca.crt
|
||||
cert unifi_client.crt
|
||||
key unifi_client.key
|
||||
tls-auth unifi_tls.key 1
|
||||
26
VPN/UniFi/unifi_ca.crt
Normal file
26
VPN/UniFi/unifi_ca.crt
Normal file
@@ -0,0 +1,26 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIEfDCCA2SgAwIBAgIIA0R07HDJsWIwDQYJKoZIhvcNAQELBQAwgYExCzAJBgNV
|
||||
BAYTAlVTMREwDwYDVQQIDAhOZXcgWW9yazERMA8GA1UEBwwITmV3IFlvcmsxFjAU
|
||||
BgNVBAoMDVViaXF1aXRpIEluYy4xGTAXBgNVBAsMEFVuaUZpX09wZW5WUE5fQ0Ex
|
||||
GTAXBgNVBAMMEFVuaUZpX09wZW5WUE5fQ0EwHhcNMjQwNTE0MTUwNzE1WhcNMzkw
|
||||
NTExMTUwNzE1WjCBgTELMAkGA1UEBhMCVVMxETAPBgNVBAgMCE5ldyBZb3JrMREw
|
||||
DwYDVQQHDAhOZXcgWW9yazEWMBQGA1UECgwNVWJpcXVpdGkgSW5jLjEZMBcGA1UE
|
||||
CwwQVW5pRmlfT3BlblZQTl9DQTEZMBcGA1UEAwwQVW5pRmlfT3BlblZQTl9DQTCC
|
||||
ASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALqJRitzCBAP6TVctoTuWZhR
|
||||
wuMoxnwIJ+pffJAhw8fQH5ni7oimp/szCo3m49PwwdbX2vV1lu0BouUszCaLIX4p
|
||||
zP3cVx82iUM/DSDnFOlStIKT/fVfxhMa9rIz2VsAmFm/J51O7CPusZXacd4w/VU4
|
||||
TxJzbNmJIhHIsiRyTeyuXQ70NAh2ltrQd1mV/t/QGaLP5VtuKYbMmTsImduWUjep
|
||||
6MOmla6m+jwjjxdWr64E0U1QnwRp5ODMU+jDicAhjAJ+sISByMpNsDkZXefo1Daq
|
||||
d56pOpu8Me625lCR/LnT8UYigYJZ+1z1qBYfCn1BwMPZqbYHRAVcSfIHfISZ1f0C
|
||||
AwEAAaOB9TCB8jALBgNVHQ8EBAMCAQYwDAYDVR0TBAUwAwEB/zCBtQYDVR0jBIGt
|
||||
MIGqgBQXKaRymujXM7SDGzRjwKHXYyEeJKGBh6SBhDCBgTELMAkGA1UEBhMCVVMx
|
||||
ETAPBgNVBAgMCE5ldyBZb3JrMREwDwYDVQQHDAhOZXcgWW9yazEWMBQGA1UECgwN
|
||||
VWJpcXVpdGkgSW5jLjEZMBcGA1UECwwQVW5pRmlfT3BlblZQTl9DQTEZMBcGA1UE
|
||||
AwwQVW5pRmlfT3BlblZQTl9DQYIIA0R07HDJsWIwHQYDVR0OBBYEFBcppHKa6Ncz
|
||||
tIMbNGPAoddjIR4kMA0GCSqGSIb3DQEBCwUAA4IBAQBLdExSs2TbQ7YOigHVjGhB
|
||||
Gy2akr3a5N1Tvrt5pn4ZjuB58cxNaUVem33fQn0TQ3aW0P/HrqVja6MbBhhA7TEw
|
||||
7oLbfuIjAaGHwpuLdN56AzesvqlUIpUreizPj4AO3E3s3x/gmtdLMW8Jjv0xLtSV
|
||||
GXbptinfP40QdWRUAAEENdOU2+sWknaYEJDOm/2poM5l8o+emr1THMrGhQ/3emVy
|
||||
eb/iApCKVtAxdz+kOmb6gCDGkfrjisgQz8/BrT+Q+KatEPhIckBCsh1Q3jyjLSFD
|
||||
HOPQIXjc9xC5Q/yAaBc3MGejVjdqEDGtZEpteUYu9A8Ld3d2z6aaobpmxbEh+pkL
|
||||
-----END CERTIFICATE-----
|
||||
27
VPN/UniFi/unifi_client.crt
Normal file
27
VPN/UniFi/unifi_client.crt
Normal file
@@ -0,0 +1,27 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIEmDCCA4CgAwIBAgIIZWuMvlBLrI8wDQYJKoZIhvcNAQELBQAwgYExCzAJBgNV
|
||||
BAYTAlVTMREwDwYDVQQIDAhOZXcgWW9yazERMA8GA1UEBwwITmV3IFlvcmsxFjAU
|
||||
BgNVBAoMDVViaXF1aXRpIEluYy4xGTAXBgNVBAsMEFVuaUZpX09wZW5WUE5fQ0Ex
|
||||
GTAXBgNVBAMMEFVuaUZpX09wZW5WUE5fQ0EwHhcNMjQwNTE0MTUwNzE1WhcNMjkw
|
||||
NTEzMTUwNzE1WjCBiTELMAkGA1UEBhMCVVMxETAPBgNVBAgMCE5ldyBZb3JrMREw
|
||||
DwYDVQQHDAhOZXcgWW9yazEWMBQGA1UECgwNVWJpcXVpdGkgSW5jLjEdMBsGA1UE
|
||||
CwwUVW5pRmlfT3BlblZQTl9DbGllbnQxHTAbBgNVBAMMFFVuaUZpX09wZW5WUE5f
|
||||
Q2xpZW50MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwngmvLPFNe6z
|
||||
o9ujaboYwOdnyvV1v794m6LJ9zFSCyLNfv8G5IaRVmwe7aUCaIKmsb9LaqMegfbt
|
||||
qnqoSj/fUPmcTjn0rWosbGOwdQyJ8fi4miw/JifI/pHubxzb2NpRCZtut/vEVsZI
|
||||
NEUcfkOasRWm9KDm6YUJ9+fQn9BuoOH9koNBi7NNn+2eFIOiv0LLQcWIC9D3hbOH
|
||||
mwPJfHhRmwhMFP98wud64N/N65DF9M83aK3bjKijVwBMHjjySP1nQ4TM0ee8vb9O
|
||||
gy9M2dSU2RCKA6/9w/JiH9iOwFo9qDQkGI7Mbhh7XiWkyauWXhr/XefFQk/DDPcQ
|
||||
vUiB7vzOQwIDAQABo4IBCDCCAQQwgbUGA1UdIwSBrTCBqoAUFymkcpro1zO0gxs0
|
||||
Y8Ch12MhHiShgYekgYQwgYExCzAJBgNVBAYTAlVTMREwDwYDVQQIDAhOZXcgWW9y
|
||||
azERMA8GA1UEBwwITmV3IFlvcmsxFjAUBgNVBAoMDVViaXF1aXRpIEluYy4xGTAX
|
||||
BgNVBAsMEFVuaUZpX09wZW5WUE5fQ0ExGTAXBgNVBAMMEFVuaUZpX09wZW5WUE5f
|
||||
Q0GCCANEdOxwybFiMAkGA1UdEwQCMAAwCwYDVR0PBAQDAgeAMBMGA1UdJQQMMAoG
|
||||
CCsGAQUFBwMCMB0GA1UdDgQWBBQx7O3PhTotnfFnE65Zfp/Ot9ZeTzANBgkqhkiG
|
||||
9w0BAQsFAAOCAQEASnV26/u3aSR37DFhByeUteyWdYLN6mlTpjaA3DtkNZ702m/g
|
||||
+ifvLlYQiTJstueF4qBoebZc68dqd3m4f8eqk4MzEoBrcsDNrNeuaH8cgz+8xq+/
|
||||
5IBZKOQt47CPjh+htpLgW1FaIw4pNoBJZK/RVaiLNorJy5TnOEh38KoeGX9ZULmD
|
||||
dJM0te6E5Twk82nNIiIg0uZTCT77FWGhsihXwK+1tO+3ph/vXhjUMrkmUeHLto5+
|
||||
6rPYDOrbZjG7NKnPnLNTbMQEvSupSP8LOpD4stCpnKvP96rChayDcZG+DXv4y92/
|
||||
z5vBUYxI4cujkvd51bbEULl5xyGI3mqzEhVvSQ==
|
||||
-----END CERTIFICATE-----
|
||||
28
VPN/UniFi/unifi_client.key
Normal file
28
VPN/UniFi/unifi_client.key
Normal file
@@ -0,0 +1,28 @@
|
||||
-----BEGIN PRIVATE KEY-----
|
||||
MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDCeCa8s8U17rOj
|
||||
26NpuhjA52fK9XW/v3ibosn3MVILIs1+/wbkhpFWbB7tpQJogqaxv0tqox6B9u2q
|
||||
eqhKP99Q+ZxOOfStaixsY7B1DInx+LiaLD8mJ8j+ke5vHNvY2lEJm263+8RWxkg0
|
||||
RRx+Q5qxFab0oObphQn359Cf0G6g4f2Sg0GLs02f7Z4Ug6K/QstBxYgL0PeFs4eb
|
||||
A8l8eFGbCEwU/3zC53rg383rkMX0zzdorduMqKNXAEweOPJI/WdDhMzR57y9v06D
|
||||
L0zZ1JTZEIoDr/3D8mIf2I7AWj2oNCQYjsxuGHteJaTJq5ZeGv9d58VCT8MM9xC9
|
||||
SIHu/M5DAgMBAAECggEAHYxwJmASaR16Aj3PWLNEK5t9s+MUHyySwOM9WOgPlU2W
|
||||
d+N8QqEH2F/ZWzalZQflGED+zpc2fXzto+e7RnzqC73BuEkqGmd1lIqZN0/Obgvi
|
||||
0NpERiHpcnTuC8gQx6R0h8csTZxduump8vdFWxIeoSWvFqCUNYtXdmms03uyM5Of
|
||||
MVSp7WqnXcG9oQjtBBwFg0GfORbtIv7Sddcy9EMXi6AIoVkgi0Qe3FXqrf4rr+Sx
|
||||
k6vf6wLHnkEIBNj7/sp/HP+gN8K9osibeiv+XohLabsw4zNhjM54jTdUkphgLz5M
|
||||
tZRI3EN/NPNyXi7IOylIskYJbUZ3i8HBZG2ERoOO0QKBgQDrv0kBRDZr6QUn9u0V
|
||||
M5Wjw+//qQv/quVDF4RWBsLYzqC6+t4/SvpbqT5TvaBMm3Adr5jVyC/0Im6bVglz
|
||||
n0SE54jGbTIxTfSfnS2AJWLIcyNo6Mase2InkQR9i7mlwbGtDlJ8xpr9wNWQv5eC
|
||||
6tOa+M1olYYdjvF7ow6EFHfc1wKBgQDTLQ4NbUN7O2DksPu8+dWGhtqpermzyDG4
|
||||
VjWLvfJ0xQLwcXC7YEIBpDOGHDr75H5FrJomIwHluyjLhXkm9AFvQIJlHgn8ND7t
|
||||
jfHzGVth6kFiV4Yd6gJJKwh3KlHbAg5ed124X9vNF5Ao+aWs4H+yQANjBEzj581o
|
||||
G9k1bvYgdQKBgQC9NfHqSk1Dnuq8gLsYYSahIgnmME+pDAimKKHWSebpDC6E5ASs
|
||||
2AjIuLWFkJSv57G8ocsRCnMyhtAvbIZ5fkMISKzGVa4LVH4Z/ZUfXOJD7+VjtjB/
|
||||
DyhgiUwJV7PRDf0E4JHkA6MyNysx2hRIxyC/KSHz5s6VurymduCXsbXiUQKBgA4w
|
||||
AbivNZBq7diPd2o70remCbzHLQDCG20KBbDswwRLVCY5SNyd2/FmSbvh26ieskkW
|
||||
DokvYuo/R79cqUYPsKT7zYbjnMIf9HZbSf0OIBCU/22O+ci6twqZZIk1A6jWG4cH
|
||||
N/myHv9JbPsDwri5oHqmSFP3rv7EzQ0IifBIEysdAoGAPTrU9+QjKeP4Ar7wVKiz
|
||||
8U2v6ZgqKGZYD3l9PeHeT/pgebIxv+H0RC3VdtHg0WAi2v/LrI+Lgk62/EuwpuPR
|
||||
NUuGwpvUGIn1l9vVNrAqI60bibFYGtigvkLpllvFXDmdONiFz5pxFm7DzPifczTL
|
||||
jl+qzuis45TK6vypRtZa6t0=
|
||||
-----END PRIVATE KEY-----
|
||||
18
VPN/UniFi/unifi_tls.key
Normal file
18
VPN/UniFi/unifi_tls.key
Normal file
@@ -0,0 +1,18 @@
|
||||
-----BEGIN OpenVPN Static key V1-----
|
||||
e966ec45ce5404440fea2dc1e09a2c80
|
||||
7e64f634f8041c89effd0f2cd9d2698b
|
||||
d0e7802a8243373c595d113b3b0aafb4
|
||||
b73a5c15ad6353ef8d62f638f5afc341
|
||||
92fe64d292dd72bb1fe4585cfdde7fe8
|
||||
1411302e1aa7027363728cca2b74269e
|
||||
bad9547ea7d580b6e18204b50b089809
|
||||
ead0c8661bc10badbb627a1e384f9961
|
||||
88b06771e7827fbdc02843e4a11db54e
|
||||
c847166f065d303683e42059096bcc51
|
||||
5687ec7b80b791610cd5bc98d0e9bc29
|
||||
fbc7da5f81bd00069b59ed0bc3fb0979
|
||||
616d7dfb2332cdb945925716dbf67c66
|
||||
969774aac0d2e15f5c64dc11cf1dd427
|
||||
489ad83a29ffd9b47764dbaeb0e8c3d8
|
||||
d085b7495395290d451dcbe21afd11c0
|
||||
-----END OpenVPN Static key V1-----
|
||||
BIN
VPN/UniFi/working_config.png
Normal file
BIN
VPN/UniFi/working_config.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 120 KiB |
51
VPN/extract_creds.py
Normal file
51
VPN/extract_creds.py
Normal file
@@ -0,0 +1,51 @@
|
||||
import os
|
||||
import re
|
||||
import argparse
|
||||
|
||||
def extract_and_save(ovpn_path):
|
||||
"""Extracts certificates/keys from an .ovpn file and saves them as separate files in the same directory."""
|
||||
|
||||
# Check if file exists
|
||||
if not os.path.isfile(ovpn_path):
|
||||
print(f"Error: File '{ovpn_path}' not found.")
|
||||
return
|
||||
|
||||
# Define regex patterns for extracting sections
|
||||
sections = {
|
||||
"ca": r"<ca>(.*?)</ca>",
|
||||
"cert": r"<cert>(.*?)</cert>",
|
||||
"key": r"<key>(.*?)</key>",
|
||||
"tls-auth": r"<tls-auth>(.*?)</tls-auth>"
|
||||
}
|
||||
|
||||
# Read the .ovpn file
|
||||
with open(ovpn_path, "r", encoding="utf-8") as file:
|
||||
data = file.read()
|
||||
|
||||
# Get directory of the .ovpn file
|
||||
output_dir = os.path.dirname(ovpn_path) or "."
|
||||
|
||||
# Loop through sections and extract data
|
||||
for name, pattern in sections.items():
|
||||
match = re.search(pattern, data, re.DOTALL)
|
||||
if match:
|
||||
content = match.group(1).strip()
|
||||
filename = f"{name.replace('-', '_')}.crt" if name in ["ca", "cert"] else f"{name.replace('-', '_')}.key"
|
||||
file_path = os.path.join(output_dir, filename)
|
||||
|
||||
with open(file_path, "w", encoding="utf-8") as f:
|
||||
#f.write(f"-----BEGIN {name.upper()}-----\n")
|
||||
f.write(content + "\n")
|
||||
#f.write(f"-----END {name.upper()}-----\n")
|
||||
|
||||
print(f"Extracted: {file_path}")
|
||||
|
||||
print("Extraction complete!")
|
||||
|
||||
# Command-line argument handling
|
||||
if __name__ == "__main__":
|
||||
parser = argparse.ArgumentParser(description="Extract certificates and keys from an OpenVPN .ovpn file.")
|
||||
parser.add_argument("ovpn_file", help="Path to the OpenVPN .ovpn configuration file")
|
||||
args = parser.parse_args()
|
||||
|
||||
extract_and_save(args.ovpn_file)
|
||||
Reference in New Issue
Block a user