diff --git a/VM_CONFIG.sh b/VM_CONFIG.sh old mode 100644 new mode 100755 index 64df36b..b8abecb --- a/VM_CONFIG.sh +++ b/VM_CONFIG.sh @@ -1,18 +1,25 @@ #!/bin/bash -# NOTA(vasco): vamos ter q fazer isto mil vezes -sudo yum install -y epel-release -sudo yum install -y openvpn iptables-services -sudo systemctl stop firewalld -sudo systemctl disable firewalld -sudo systemctl mask firewalld -sudo systemctl enable iptables -sudo iptables -F +# NOTA(vasco): feito para correr como root +if [[ "$USER" != "root" ]]; then + echo "corre o script como root" + exit 1 +fi + +yum install -y epel-release +yum install -y openvpn iptables-services +systemctl stop firewalld +systemctl disable firewalld +systemctl mask firewalld +systemctl enable iptables +iptables -F CA_DIR="/etc/pki/CA" -sudo mkdir -p "${CA_DIR}/newcerts" -sudo touch "${CA_DIR}/serial" -sudo cp ca.crt $CA_DIR +mkdir -p "${CA_DIR}/newcerts" +mkdir -p "${CA_DIR}/private" +touch "${CA_DIR}/index.txt" +echo 01 > "${CA_DIR}/serial" +cp ca.crt $CA_DIR -sudo mkdir -p /etc/openvpn/server -sudo mkdir -p /etc/openvpn/client +mkdir -p /etc/openvpn/server +mkdir -p /etc/openvpn/client diff --git a/VM_OPENSSL.sh b/VM_OPENSSL.sh index f80b7d8..97e1a0b 100644 --- a/VM_OPENSSL.sh +++ b/VM_OPENSSL.sh @@ -7,5 +7,5 @@ source VM_CONFIG.sh if_dentro="enp0s8" ip_dentro="10.60.0.1" -sudo ifconfig $if_dentro $ip_dentro netmask 255.255.255.0 +ifconfig $if_dentro $ip_dentro netmask 255.255.255.0 cp openssl.cnf /etc/pki/tls/ diff --git a/VM_ROAD_WARRIOR.sh b/VM_ROAD_WARRIOR.sh index 331c1de..4429e60 100644 --- a/VM_ROAD_WARRIOR.sh +++ b/VM_ROAD_WARRIOR.sh @@ -10,14 +10,10 @@ bash VM_CONFIG.sh ifconfig enp0s8 193.136.212.10 netmask 255.255.255.0 route add default gw 193.136.212.1 # default gateway LIKE A SHEEP -# certificado -[[ -e "user.key" ]] && echo "user.key ja criado" || sudo openssl genrsa -out user.key -[[ -e "user.csr" ]] && echo "user.csr ja criado" || sudo openssl req -new -key user.key -out user.csr -[[ -e "user.crt" ]] && echo "user.crt ja criado" || sudo openssl ca -in user.csr -cert ca.crt -keyfile ca.key -out user.crt - +# copiar tudo vpn_dir="/etc/openvpn/client/" -sudo cp ca.crt $vpn_dir -sudo cp user.csr $vpn_dir -sudo cp user.crt $vpn_dir -sudo cp client.conf $vpn_dir -openvpn --config /etc/openvpn/client/client.conf +cp ca/ta.key $vpn_dir +cp ca/ca.crt $vpn_dir +cp ca/user.crt $vpn_dir +cp client.conf $vpn_dir +openvpn --config "${vpn_dir}/client.conf" diff --git a/VM_VPN_GATEWAY.sh b/VM_VPN_GATEWAY.sh index b1f2615..fb37221 100644 --- a/VM_VPN_GATEWAY.sh +++ b/VM_VPN_GATEWAY.sh @@ -22,33 +22,30 @@ mega_tunel="tun0" ip_mega_tunel="10.8.0.1/24" # --- interfaces --- # -sudo ifconfig $if_fora $ip_fora netmask 255.255.255.0 -sudo ifconfig $if_dentro $ip_dentro netmask 255.255.255.0 +ifconfig $if_fora $ip_fora netmask 255.255.255.0 +ifconfig $if_dentro $ip_dentro netmask 255.255.255.0 # --- ip forwarding --- # -sudo echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf -sudo sysctl -p /etc/sysctl.conf +echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf +sysctl -p /etc/sysctl.conf # --- nat forwardin de vpn para clientes --- # -sudo iptables -A INPUT -p udp --dport 1194 -j ACCEPT # :O -sudo iptables -A FORWARD -i $mega_tunel -o $if_dentro -j ACCEPT # :P -sudo iptables -A FORWARD -i $if_dentro -o $mega_tunel -j ACCEPT # ;) -sudo iptables -t nat -A POSTROUTING -s $ip_mega_tunel -o $if_fora -j MASQUERADE # :D -sudo iptables-save > /etc/sysconfig/iptables # :3 - -# criar certs -[[ -e "vpn.csr" ]] && echo "vpn.csr ja criado" || sudo openssl req -new -key vpn.key -out vpn.csr -[[ -e "vpn.crt" ]] && echo "vpn.crt ja criado" || sudo openssl ca -in vpn.csr -cert ca.crt -keyfile ca.key -out vpn.crt -[[ -e "dh2048.pem" ]] && echo "dh2048 ja foi criado" || openssl dhparam -out dh2048.pem 2048 +iptables -A INPUT -p udp --dport 1194 -j ACCEPT # :O +iptables -A FORWARD -i $mega_tunel -o $if_dentro -j ACCEPT # :P +iptables -A FORWARD -i $if_dentro -o $mega_tunel -j ACCEPT # ;) +iptables -A FORWARD -i $mega_tunel -o $if_fora -j ACCEPT # faltava isto ? +iptables -A FORWARD -i $if_fora -m state --state ESTABLISHED,RELATED -j ACCEPT # faltava isto ? +iptables -t nat -A POSTROUTING -s $ip_mega_tunel -o $if_fora -j MASQUERADE # :D +iptables-save > /etc/sysconfig/iptables # :3 +# servidor vpn_dir="/etc/openvpn/server" -sudo cp vpn.key $vpn_dir -sudo cp vpn.conf $vpn_dir -sudo cp vpn.csr $vpn_dir -sudo cp vpn.crt $vpn_dir -sudo cp dh2048.pem $vpn_dir -sudo openvpn --config "$vpn_dir/vpn.conf" +cp ca/ta.key $vpn_dir +cp ca/ca.crt $vpn_dir +cp ca/user.crt $vpn_dir +cp vpn.conf $vpn_dir +openvpn --config "${vpn_dir}/vpn.conf" # NOTA(vasco): o ficheiro conf vai ser vpn.conf pq isso é o nome do serviço # o serviço nao funciona ???? -# sudo systemctl enable --now openvpn-server@vpn.service +# systemctl enable --now openvpn-server@vpn.service diff --git a/ca.crt b/ca.crt index e225c4b..957c3f5 100644 --- a/ca.crt +++ b/ca.crt @@ -1,21 +1,21 @@ -----BEGIN CERTIFICATE----- -MIIDaTCCAlGgAwIBAgIUD2JnuJYQPRP/h3PPf1FsiNHLUekwDQYJKoZIhvcNAQEL -BQAwXTELMAkGA1UEBhMCUFQxEDAOBgNVBAgMB0NvaW1icmExETAPBgNVBAcMCENv -aW1icmFhMQswCQYDVQQKDAJVQzEOMAwGA1UECwwFRkNUVUMxDDAKBgNVBAMMA1ZQ -TjAeFw0yNjA0MjAxMTAzMDhaFw0yNzA0MjAxMTAzMDhaMF0xCzAJBgNVBAYTAlBU -MRAwDgYDVQQIDAdDb2ltYnJhMREwDwYDVQQHDAhDb2ltYnJhYTELMAkGA1UECgwC -VUMxDjAMBgNVBAsMBUZDVFVDMQwwCgYDVQQDDANWUE4wggEiMA0GCSqGSIb3DQEB -AQUAA4IBDwAwggEKAoIBAQDaDICRTLW69RpumTHY6kBy6Ip4QPzoB+nCbvFEYtM2 -mdgmn0e1PLg1FwosL0h8BxOyWApGlbqYKV0dBt+rC7IF3gKrLNTNCadjk7+zualG -6wvEK1H7Rteo0/Y5DF24/V+GihEUzktu8K9pPcBXsl8LlIodxVe8P2R02Tubgp/i -mKKHvER6y7FPc0UNkqqTWYhqa8KLpuNqZvDJnNUM3oJF1do9JlnjNJZcI63nb+6K -bvZjj9tqRbdbqE3A7NTDg7agTt298UGER7N4kzKGPzdYO8orKKp8fbkrcwRO98gb -lib4gVEdsY3JBCQLs6QtwW+ehwhVVIqHQMOJuLENM+a5AgMBAAGjITAfMB0GA1Ud -DgQWBBRbBGnllBjk6IPuPY16Xr+4surKuzANBgkqhkiG9w0BAQsFAAOCAQEAGP5/ -rS39yY/rs3yc6KE0ag9gIN2YU34nTNps3MUlGJ5/E6mMBLdlNh5EKIn+Df81wNhG -qETLw/1VScZiZK6waH2svDPPKk76e/4oY6JF+xCnOayOIBwYgYvUqrG1I0KjTmEO -Qg0AlZg84pkyLRzd2vN/opzSz/r6hQJgQQ/kwbiJxX3dpwRwrees4OO18LN31l1Y -Gsna3u6IWLWouc4Q60i6AptW9pzCPI0op7UlZyqezLI/osG9jv4RSr8aq0reH0Zs -TWso/PMtltVgLuTLqE5oU+GW/3r0H2LA0q6qsLHCSbQRHcwNdU2UbuFzXKqn5vgv -5tjt5x4YgUgGSth7Qg== +MIIDhzCCAm+gAwIBAgIUIJ7vLVpspdrCt0ZGary7IZ9A04AwDQYJKoZIhvcNAQEL +BQAwUzELMAkGA1UEBhMCUFQxEDAOBgNVBAgMB0NvaW1icmExEDAOBgNVBAcMB0Nv +aW1icmExCzAJBgNVBAoMAlVDMRMwEQYDVQQDDApDb2ltYnJhVlBOMB4XDTI2MDQy +MTE2NDQzM1oXDTI3MDQyMTE2NDQzM1owUzELMAkGA1UEBhMCUFQxEDAOBgNVBAgM +B0NvaW1icmExEDAOBgNVBAcMB0NvaW1icmExCzAJBgNVBAoMAlVDMRMwEQYDVQQD +DApDb2ltYnJhVlBOMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzPJP +agkW/HrzLO5+G6ZKpX2Skz0tflpFtVAaihRrPEXwWMKKIShElNvskDT50OOIYY2Z +gGRUlVZJN2OiM5aJbvlxooAa/xER8y2pU/dgZN8ibllVYT6gd9yzEfdjUs7/y/aa +DFPSBtrmVveCF3J7tu3H977dAc8u78+MoD5OHzu7Ko8FM5ZyMYoERxyB4H+nUKJO +lXDIo3FZDmYfPbmmqoYfCYCiRIgyjXR+/WFL7vFrylrd39Ntt6JF9PixsMkv1beu +IBkE38m72Am9vW5ljlu7kMmUKFKZEuuHV/uqFINqXS7NJpU89eWde9NdS446NLVG +PL2A04Er7c/h/qM8gwIDAQABo1MwUTAdBgNVHQ4EFgQUCJPlxX9Lb9ZQGLq4CaXS +UQV6OuswHwYDVR0jBBgwFoAUCJPlxX9Lb9ZQGLq4CaXSUQV6OuswDwYDVR0TAQH/ +BAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAQEAWvgP1qEwL+z42xis/qjzWrIX2vAF ++NR/d34EzLM5NThARgymMcEfHi+Ozadl0dwp5IyLR/rm2beROeLYal9lpadpNvT1 +eOV8Ck8VtA7a16N5S8sawB8dtkVtfiP/Z6125nTl7aLO1xyQsdbK6XWNLE1GT9I+ +RewJRLtDYJ77se/HSW48tcFL3KsjhALCq6iV0MlmMgLoIrefkClb7hG2Hz9D70Pd +7OY79v0rNerDYQpuzTucIBDjKsHYw3597kxeO376AuO0M49gA2jIzjrHJGOjAirG +PnsDmFjgftwA69kvKjSPuw2feSr0/jNOnKF1LD02M5VMQ3zL6lexP+reOA== -----END CERTIFICATE----- diff --git a/ca.csr b/ca.csr deleted file mode 100644 index 698f26c..0000000 --- a/ca.csr +++ /dev/null @@ -1,17 +0,0 @@ ------BEGIN CERTIFICATE REQUEST----- -MIICojCCAYoCAQAwXTELMAkGA1UEBhMCUFQxEDAOBgNVBAgMB0NvaW1icmExETAP -BgNVBAcMCENvaW1icmFhMQswCQYDVQQKDAJVQzEOMAwGA1UECwwFRkNUVUMxDDAK -BgNVBAMMA1ZQTjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANoMgJFM -tbr1Gm6ZMdjqQHLoinhA/OgH6cJu8URi0zaZ2CafR7U8uDUXCiwvSHwHE7JYCkaV -upgpXR0G36sLsgXeAqss1M0Jp2OTv7O5qUbrC8QrUftG16jT9jkMXbj9X4aKERTO -S27wr2k9wFeyXwuUih3FV7w/ZHTZO5uCn+KYooe8RHrLsU9zRQ2SqpNZiGprwoum -42pm8Mmc1QzegkXV2j0mWeM0llwjredv7opu9mOP22pFt1uoTcDs1MODtqBO3b3x -QYRHs3iTMoY/N1g7yisoqnx9uStzBE73yBuWJviBUR2xjckEJAuzpC3Bb56HCFVU -iodAw4m4sQ0z5rkCAwEAAaAAMA0GCSqGSIb3DQEBCwUAA4IBAQARfdJpU+K1v7rR -IOPfHUq4BWApbhrv7bqwykK+YgyWzmEzNSp7jq91Wa4GnokbHruGsp+M0h3C/5fw -EhZakFDwykThVbxRk+iuPp7MpXPKMPGvFVzxIrD9xk7KSBUnhx0+dhwu5r0U+Uqh -A5HP44nUHjnIWQ+nah9IA4Z4ldks6bvl6rBrZf1znLLq/kZSb6bSsg9zLFJyJzeH -v5amC2OKPqREqeKzNQJhUNMAU360zDi8sf+dvDDtcwaevk71g/SEcZbJbw1KMR6g -orORkT5uSi97mTJ8+hZMw+0hNyqBG/Zflq6aMzm97RlBGHBhFL/5ITpYx+S7vcQC -EehlTcbM ------END CERTIFICATE REQUEST----- diff --git a/ca.key b/ca.key index fc230fe..7acbf88 100644 --- a/ca.key +++ b/ca.key @@ -1,28 +1,28 @@ -----BEGIN PRIVATE KEY----- -MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDaDICRTLW69Rpu -mTHY6kBy6Ip4QPzoB+nCbvFEYtM2mdgmn0e1PLg1FwosL0h8BxOyWApGlbqYKV0d -Bt+rC7IF3gKrLNTNCadjk7+zualG6wvEK1H7Rteo0/Y5DF24/V+GihEUzktu8K9p -PcBXsl8LlIodxVe8P2R02Tubgp/imKKHvER6y7FPc0UNkqqTWYhqa8KLpuNqZvDJ -nNUM3oJF1do9JlnjNJZcI63nb+6KbvZjj9tqRbdbqE3A7NTDg7agTt298UGER7N4 -kzKGPzdYO8orKKp8fbkrcwRO98gblib4gVEdsY3JBCQLs6QtwW+ehwhVVIqHQMOJ -uLENM+a5AgMBAAECggEAAlGgopBGkfvg5DUg8onk4Hv121sd6BX2dSeCzWurdptl -UQgqW28Z/+be8t2YB3P3+wfEkzUs2Ej/U8t9YIdV2ooJV0/unZVufZNQ4MzMNAQp -pRRMsW+yo9mzjC4uxySlqeD+bG0ttZrdvgXRYvVeB/ne9qZWZ/rOGw/Y2mRlxiN8 -9aotelpIFboy1CXyYBRlcVPgqDNCvbvFkJ+uAqWDjvKOzqML45qfhTiTCcPNwZ0v -lZhZtvhIen5hepOII2VSnNoVxdWSIy+p8//1LT5EvSaK7+vyGRS/dLyjAdMTmWUW -92NsuD0hOGZdejy0vzVxowcXEkZ3aDmqAxHZhIY90QKBgQD5ZPtgA2BCdSnnt4lk -nyH0SJqOmLs2NzgzP6jDgLbH5Xd8zQa0Jk41Axttj91d+l31SqKF30+lTfRU6RBq -p6E5kF8LNm0ZA2PgPvmq/a4eS2eEjGl39DHsVMzvCsiN5ic05SP1VKgxM5hD+1U0 -KK8cGwABrc9OIh8sxDmwzdsbUQKBgQDf0vs+DGgLBHwAkenruUGAy/KqFk3wNKG8 -lRzGgvqUqi+XqWLPS7u2FdstCnMTS1L4g/IKkgR15BCi3MkBh1JwQ8MWT/zE0nHQ -3oJHMhXXWLp3ft1PQ74BN2al0TNu/U2h7vrRhlVNg1iLcBfMI4yqqyjV8YEZEBaH -RhsDuNDq6QKBgQCyy/PwNNtpKeh+KLZGvlOwd/DetJ7bUqFnFIegigIAtAGDJtZc -h23gUbbzSIXzH1EHT5fPFHdcUtQNn/3WCRHsXBXXyxBSM30CQwPp0+9l5rdzbtsa -VacJAQ7ffcKlANEw+epas3PVumC6tFC0kUphgvXxPjP2lz30cUXO/PbN0QKBgEq5 -rZexnKrQ/HVUQbypRO0zKfkPKUYgzD6hqdG8uNwZVXpU2uBKcIkCEwKeknzGkRTX -OF+/EC4rzkIRZCpWe3dvqBoy6jjr6YPKRcRvPEuBG//5Ivnrq+vMC0Eg7wMHHnwJ -xUNejewrBczHx6on1DbGngOPdYJglKTlCu/bLCTBAoGAKTHPH1YJPRbn7yEzpdjt -22aoxEjwSVIyQc49Q5Ophuvwit+7CeiJ2bRqHadRmJA65Z/4MJ4O3LupLa0BaGS0 -+F1+sW5ap37qisJrHlSUfVN/IPhonmnULV9DEwj3ronYsmYHaY1TPI/tQaTLN1Q4 -Kcr3D6K2flqH6rmEX3KKLMA= +MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDM8k9qCRb8evMs +7n4bpkqlfZKTPS1+WkW1UBqKFGs8RfBYwoohKESU2+yQNPnQ44hhjZmAZFSVVkk3 +Y6Izlolu+XGigBr/ERHzLalT92Bk3yJuWVVhPqB33LMR92NSzv/L9poMU9IG2uZW +94IXcnu27cf3vt0Bzy7vz4ygPk4fO7sqjwUzlnIxigRHHIHgf6dQok6VcMijcVkO +Zh89uaaqhh8JgKJEiDKNdH79YUvu8WvKWt3f0223okX0+LGwyS/Vt64gGQTfybvY +Cb29bmWOW7uQyZQoUpkS64dX+6oUg2pdLs0mlTz15Z17011Ljjo0tUY8vYDTgSvt +z+H+ozyDAgMBAAECggEAHGM32B0i351RekNymPaDV8GOqvG0unqwiyO++VSeDJQ3 +bWP3lA4q1F+ouHTODD69UPM3HuScHq9RUZMYZYLleHH5aSPLbtHOJbEzx3CixnYY +eSZ16r6s+s1JdHn1elk3xJMHgCD1ci5Ml3aNwMetFofVxJ2IU/bUWTKWF6AUXBjq +KEu4nQF7f2Zv1uCplyEegmq/IOqY96BV1VJ0q3YDAOdTxmIAmQ2hy0A7VOHmN/ov +YzetyCZFufHCrL3yF/JoHCyV7VkPLtIXLs8wi3RI1L2SThDuKhNKoX6atlGrsMwd +X0uu1esRPcRfCA6GDRcCXV1F1AVxT/3r1r1p9xGm8QKBgQDmNTOttVO+02gsuiS3 +ZMyRcjHDJMVj9KQnq3SCVEzsj3003L9hvuKwFczlHKOpwTwxyEd0nufhTN6eLcaO +Cn8xnOZTA4e1HegZBLpkxAp0GU1EXqoysXcqhdBBjRlf/LH+LU+nyrNXKj6+4Zrc +UbirMvIN7An/Inb8vjROpOp4yQKBgQDj6JD7l/Vb7cpTyU3Y8mMlQs84GLyjB3Ki +vH4tP05U+DJ5MNAO4veA/q5EsEjoCT3vZT9sdF3jeiEpf5EAv8JhwWBB35225seM +yM8DZNnJlvFexkP/flrthLvL90ybcwkFXRrJmpXmj8Xn4ybgBkKBYA70CDnnTn09 +dxvvuT186wKBgQCPzc4hhfLxcohR4FnNQidT+BzDxTWVEh51NXKLc3O2FpBlNDxN +J/vdeVDMEk7eXPpoMq8IV7eMEwPBleDBnCcGa/epBbyBVFRHRJ/XEGtjSObufaAe +GKPTKVIFkMm4H1dk6xMmQsYy/g3CGZYuaNJOB34TWk6IVRQ1H+/27KgXmQKBgQDP +aWkAv2OZfQgERpClXroiP/IMEF8kU3PdbIO8M//azmJI7sZ6tc4fxCfe9Tv0h+yo +wND+p8yGaDBj7ueM8fc6Nd2fNZ33xYFXu6zCXvbhQpB5+yAJFfo0bPboAjDiy8cq +7XeigB/py3CFv7Eych/2U/Bn4FCqFEFgPdTbzw6JbwKBgEMh1u/WpFJa3QG3WesZ +o7XoL50q9XLFN8LgHVlGv6QJzG4K9D4Rkc7jgEfWzKEsQqmV7+oSx5jTP19KkO5r +xM8j4VTSsBneyBHe9WrKaJpD0zQYRQDrY+8DAdYUMklz8HVB3/kTzedDPYs0fWKN +QnMabRCqnfZCbIwYjTkT9RoU -----END PRIVATE KEY----- diff --git a/ca/1000.pem b/ca/1000.pem new file mode 100644 index 0000000..9c5773e --- /dev/null +++ b/ca/1000.pem @@ -0,0 +1,74 @@ +Certificate: + Data: + Version: 3 (0x2) + Serial Number: 4096 (0x1000) + Signature Algorithm: sha256WithRSAEncryption + Issuer: C=PT, ST=Coimbra, L=Coimbra, O=UC, CN=CoimbraVPN + Validity + Not Before: Apr 21 16:57:47 2026 GMT + Not After : Apr 21 16:57:47 2027 GMT + Subject: CN=gateway + Subject Public Key Info: + Public Key Algorithm: rsaEncryption + Public-Key: (2048 bit) + Modulus: + 00:ad:da:52:8d:65:c2:8d:68:5a:32:e2:f3:7e:7e: + cd:13:9e:fc:51:72:f1:80:4c:61:fb:38:b4:87:9a: + 57:92:27:5b:ff:86:1f:95:f6:4b:ec:7c:7e:2f:b9: + 37:36:17:18:b2:db:16:0c:91:f2:d5:f5:4d:49:e8: + 3b:b8:0a:1f:8f:e9:f6:16:7a:15:22:7a:4c:f3:6d: + c2:b1:76:f2:2a:81:4e:56:a6:01:16:16:b5:e5:68: + 74:3b:15:35:f2:88:78:e6:f9:7b:1e:5c:d4:b3:f6: + d1:43:13:1d:8e:82:90:38:2d:43:88:7c:35:cc:c1: + 7c:6d:8e:ed:21:5a:9a:31:0e:5f:3d:dc:7c:5e:46: + 1d:f0:46:41:86:70:48:a2:a9:62:4d:ba:14:d3:5b: + 67:25:bf:d9:46:e6:d7:59:26:99:e2:e0:25:16:a0: + 1b:cd:d1:81:ca:75:d7:d6:bd:c5:7b:25:4b:e9:58: + d2:22:f6:b1:bb:b2:5e:7d:67:9f:fd:1d:44:b4:b5: + d2:b6:ca:9e:e7:53:81:a0:4b:bf:b6:0a:61:e6:ba: + a0:e2:0a:a4:bb:21:16:90:36:c7:95:96:ae:9b:23: + e0:06:47:36:24:0b:ec:23:3d:e0:8c:42:b8:aa:9e: + 38:92:18:d7:6f:19:42:76:fd:0f:42:75:46:e6:86: + e6:75 + Exponent: 65537 (0x10001) + X509v3 extensions: + X509v3 Subject Key Identifier: + 9F:68:08:83:F5:DC:C3:11:2B:69:5D:A4:81:EF:DE:7B:7D:6E:AE:3A + X509v3 Authority Key Identifier: + E9:2F:00:A5:42:63:B5:C8:31:7B:FE:46:45:49:02:A8:55:DF:04:C6 + Signature Algorithm: sha256WithRSAEncryption + Signature Value: + 13:0b:5e:3c:0c:dd:e8:e1:04:12:bb:c6:98:e1:52:72:12:b4: + 8f:46:f0:5a:48:b6:f1:69:d3:65:e5:1e:ef:ed:03:fe:9f:ee: + 0f:bc:72:ad:cd:52:b5:18:ca:9c:c0:1c:f1:48:80:64:b6:90: + 33:12:fb:18:4b:e1:a7:c9:0b:1e:16:e5:72:4a:e1:f9:b6:e3: + 5d:b9:06:2d:ed:cc:d7:ee:7d:8c:22:99:69:46:d3:88:64:19: + 1e:3f:02:b7:37:2a:99:6b:ba:07:77:e8:f0:e5:50:41:51:94: + 6e:87:d9:71:5c:47:ef:a9:2a:b5:cf:86:2a:98:a5:c9:bd:01: + 04:f6:81:d3:81:d2:40:c6:83:29:42:2f:ad:d8:4c:ac:6c:df: + 89:93:8c:bb:48:cb:dc:62:a4:55:ed:f7:c9:b6:01:41:48:20: + dd:9f:5f:fa:55:8b:d6:f4:0e:ee:00:63:53:11:19:5a:77:47: + 0e:ec:4b:8d:08:8d:e2:51:3a:d6:97:ee:16:4c:0d:b3:ac:42: + e2:21:18:dd:c0:41:db:95:88:dd:18:cd:61:df:f3:c5:b0:12: + c4:4a:55:75:63:a4:69:44:38:2e:2e:3c:cf:51:6f:b8:36:25: + 24:d2:56:4f:eb:a0:50:93:73:2e:a9:ed:a4:92:41:3b:73:20: + 3f:57:e7:b2 +-----BEGIN CERTIFICATE----- +MIIDIzCCAgugAwIBAgICEAAwDQYJKoZIhvcNAQELBQAwUzELMAkGA1UEBhMCUFQx +EDAOBgNVBAgMB0NvaW1icmExEDAOBgNVBAcMB0NvaW1icmExCzAJBgNVBAoMAlVD +MRMwEQYDVQQDDApDb2ltYnJhVlBOMB4XDTI2MDQyMTE2NTc0N1oXDTI3MDQyMTE2 +NTc0N1owEjEQMA4GA1UEAwwHZ2F0ZXdheTCCASIwDQYJKoZIhvcNAQEBBQADggEP +ADCCAQoCggEBAK3aUo1lwo1oWjLi835+zROe/FFy8YBMYfs4tIeaV5InW/+GH5X2 +S+x8fi+5NzYXGLLbFgyR8tX1TUnoO7gKH4/p9hZ6FSJ6TPNtwrF28iqBTlamARYW +teVodDsVNfKIeOb5ex5c1LP20UMTHY6CkDgtQ4h8NczBfG2O7SFamjEOXz3cfF5G +HfBGQYZwSKKpYk26FNNbZyW/2Ubm11kmmeLgJRagG83Rgcp119a9xXslS+lY0iL2 +sbuyXn1nn/0dRLS10rbKnudTgaBLv7YKYea6oOIKpLshFpA2x5WWrpsj4AZHNiQL +7CM94IxCuKqeOJIY128ZQnb9D0J1RuaG5nUCAwEAAaNCMEAwHQYDVR0OBBYEFJ9o +CIP13MMRK2ldpIHv3nt9bq46MB8GA1UdIwQYMBaAFOkvAKVCY7XIMXv+RkVJAqhV +3wTGMA0GCSqGSIb3DQEBCwUAA4IBAQATC148DN3o4QQSu8aY4VJyErSPRvBaSLbx +adNl5R7v7QP+n+4PvHKtzVK1GMqcwBzxSIBktpAzEvsYS+GnyQseFuVySuH5tuNd +uQYt7czX7n2MIplpRtOIZBkePwK3NyqZa7oHd+jw5VBBUZRuh9lxXEfvqSq1z4Yq +mKXJvQEE9oHTgdJAxoMpQi+t2EysbN+Jk4y7SMvcYqRV7ffJtgFBSCDdn1/6VYvW +9A7uAGNTERlad0cO7EuNCI3iUTrWl+4WTA2zrELiIRjdwEHblYjdGM1h3/PFsBLE +SlV1Y6RpRDguLjzPUW+4NiUk0lZP66BQk3Muqe2kkkE7cyA/V+ey +-----END CERTIFICATE----- diff --git a/ca/1001.pem b/ca/1001.pem new file mode 100644 index 0000000..e22516a --- /dev/null +++ b/ca/1001.pem @@ -0,0 +1,74 @@ +Certificate: + Data: + Version: 3 (0x2) + Serial Number: 4097 (0x1001) + Signature Algorithm: sha256WithRSAEncryption + Issuer: C=PT, ST=Coimbra, L=Coimbra, O=UC, CN=CoimbraVPN + Validity + Not Before: Apr 21 16:57:47 2026 GMT + Not After : Apr 21 16:57:47 2027 GMT + Subject: CN=warrior + Subject Public Key Info: + Public Key Algorithm: rsaEncryption + Public-Key: (2048 bit) + Modulus: + 00:9a:93:a0:1e:45:28:7b:b2:31:7c:06:99:40:ad: + 93:54:ba:14:87:17:f5:23:49:28:85:00:66:7d:94: + 83:79:b0:b9:d7:db:55:12:d0:90:f3:75:51:b8:8e: + 58:47:8c:61:04:23:a1:e4:49:91:b1:99:72:e7:09: + 24:ba:a1:5a:96:4e:b8:c3:c6:51:69:f7:de:15:97: + c4:1e:f2:ac:65:10:43:57:78:c4:0a:f8:9b:23:fa: + 0d:c7:b3:82:90:46:0c:51:48:a4:15:bf:43:92:2c: + b8:ab:ee:b6:8d:17:a4:37:80:45:fe:ab:a6:1c:9c: + cf:73:5f:cb:4d:3c:f7:63:9a:49:d9:96:73:d2:ad: + 0b:7d:ce:13:60:fd:c8:da:35:fd:18:e0:a6:ff:89: + ed:78:22:0f:b2:c8:eb:cb:dc:bd:d9:29:29:7d:e1: + 54:80:83:8b:f1:6b:82:56:2a:1f:18:d0:f8:a5:3c: + 84:79:ad:5b:cf:98:d0:a1:92:33:ca:5d:af:d3:1a: + 04:20:51:e9:0a:81:63:61:12:72:d9:58:3f:dc:a5: + d5:26:7c:a2:7c:fe:67:d2:74:1d:95:22:25:52:02: + 63:bd:0c:fc:10:1d:d6:77:67:5d:a4:48:3d:be:15: + 93:27:b0:17:0d:d5:8e:53:e6:92:3c:76:16:0b:c2: + f1:4b + Exponent: 65537 (0x10001) + X509v3 extensions: + X509v3 Subject Key Identifier: + E5:2F:47:65:47:CE:9E:F4:AC:B3:F8:5C:29:34:92:1E:A8:2C:50:86 + X509v3 Authority Key Identifier: + E9:2F:00:A5:42:63:B5:C8:31:7B:FE:46:45:49:02:A8:55:DF:04:C6 + Signature Algorithm: sha256WithRSAEncryption + Signature Value: + 73:66:cc:33:e4:34:e2:d5:fb:8c:3e:e9:b7:bb:aa:3f:41:bf: + 9e:f8:db:6d:77:2a:d3:7a:88:69:7a:ee:e7:6c:71:91:a7:7e: + c7:6c:7c:c4:f7:cd:bf:eb:e0:b5:7f:2f:90:59:be:18:c8:72: + 5d:4c:09:6a:5c:9d:5c:73:b0:53:0c:c0:08:fa:fc:d6:7c:bb: + cc:d6:39:b0:50:f2:58:73:f4:2b:d6:87:2b:e1:a5:fc:4e:fe: + 4a:f3:8c:6e:94:47:54:c6:06:55:9e:16:06:2f:bd:df:c3:76: + e8:2b:19:eb:49:81:e2:6d:d1:53:2c:d0:18:2c:77:55:09:31: + 90:73:c0:c8:78:79:89:c0:73:08:96:f0:27:04:8c:27:70:f6: + 6f:a1:75:76:3b:4b:c1:0e:81:85:51:8d:25:23:69:ff:3c:b1: + 3f:98:7a:5f:44:dd:75:77:31:f5:06:dd:34:1f:81:9a:53:3f: + 78:9c:a3:5d:74:de:e5:7a:c6:34:39:9a:6c:ad:97:44:7b:93: + 1b:02:ae:9b:66:5f:62:78:2f:37:20:bc:f1:8a:0a:e8:e6:66: + 8d:0b:7a:d4:14:7c:8b:2e:6b:c7:34:2b:56:85:b5:91:9a:ee: + 20:01:f8:3d:e7:22:6e:18:82:52:5c:71:a4:dc:88:4c:09:d8: + 4b:33:1e:35 +-----BEGIN CERTIFICATE----- +MIIDIzCCAgugAwIBAgICEAEwDQYJKoZIhvcNAQELBQAwUzELMAkGA1UEBhMCUFQx +EDAOBgNVBAgMB0NvaW1icmExEDAOBgNVBAcMB0NvaW1icmExCzAJBgNVBAoMAlVD +MRMwEQYDVQQDDApDb2ltYnJhVlBOMB4XDTI2MDQyMTE2NTc0N1oXDTI3MDQyMTE2 +NTc0N1owEjEQMA4GA1UEAwwHd2FycmlvcjCCASIwDQYJKoZIhvcNAQEBBQADggEP +ADCCAQoCggEBAJqToB5FKHuyMXwGmUCtk1S6FIcX9SNJKIUAZn2Ug3mwudfbVRLQ +kPN1UbiOWEeMYQQjoeRJkbGZcucJJLqhWpZOuMPGUWn33hWXxB7yrGUQQ1d4xAr4 +myP6DcezgpBGDFFIpBW/Q5IsuKvuto0XpDeARf6rphycz3Nfy00892OaSdmWc9Kt +C33OE2D9yNo1/Rjgpv+J7XgiD7LI68vcvdkpKX3hVICDi/FrglYqHxjQ+KU8hHmt +W8+Y0KGSM8pdr9MaBCBR6QqBY2ESctlYP9yl1SZ8onz+Z9J0HZUiJVICY70M/BAd +1ndnXaRIPb4VkyewFw3VjlPmkjx2FgvC8UsCAwEAAaNCMEAwHQYDVR0OBBYEFOUv +R2VHzp70rLP4XCk0kh6oLFCGMB8GA1UdIwQYMBaAFOkvAKVCY7XIMXv+RkVJAqhV +3wTGMA0GCSqGSIb3DQEBCwUAA4IBAQBzZswz5DTi1fuMPum3u6o/Qb+e+NttdyrT +eohpeu7nbHGRp37HbHzE982/6+C1fy+QWb4YyHJdTAlqXJ1cc7BTDMAI+vzWfLvM +1jmwUPJYc/Qr1ocr4aX8Tv5K84xulEdUxgZVnhYGL73fw3boKxnrSYHibdFTLNAY +LHdVCTGQc8DIeHmJwHMIlvAnBIwncPZvoXV2O0vBDoGFUY0lI2n/PLE/mHpfRN11 +dzH1Bt00H4GaUz94nKNddN7lesY0OZpsrZdEe5MbAq6bZl9ieC83ILzxigro5maN +C3rUFHyLLmvHNCtWhbWRmu4gAfg95yJuGIJSXHGk3IhMCdhLMx41 +-----END CERTIFICATE----- diff --git a/ca/ca.crt b/ca/ca.crt new file mode 100644 index 0000000..279f88a --- /dev/null +++ b/ca/ca.crt @@ -0,0 +1,21 @@ +-----BEGIN CERTIFICATE----- +MIIDhzCCAm+gAwIBAgIUCDx14n27QIkw70Uvg4zJQAXZvOcwDQYJKoZIhvcNAQEL +BQAwUzELMAkGA1UEBhMCUFQxEDAOBgNVBAgMB0NvaW1icmExEDAOBgNVBAcMB0Nv +aW1icmExCzAJBgNVBAoMAlVDMRMwEQYDVQQDDApDb2ltYnJhVlBOMB4XDTI2MDQy +MTE2NDk1MloXDTI3MDQyMTE2NDk1MlowUzELMAkGA1UEBhMCUFQxEDAOBgNVBAgM +B0NvaW1icmExEDAOBgNVBAcMB0NvaW1icmExCzAJBgNVBAoMAlVDMRMwEQYDVQQD +DApDb2ltYnJhVlBOMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA3Ssz +Rq3Gz8BQx5OEP/chMv3Y9xShkjW6YPXxP2Yn08MyDbBvPk1U2eI4MLtWiAgwqKFp +MhzbrCv+jstNdDd/3AK9k5VN06VjjGrboWQqX+W55Lb5CrT1CRifGbjL6A6CKbTh +fdY8jP9hh0w7SAvHkfUz0SbskpRPMeaKjj1gDme6ZT8jUNAYWHUxikTHdLGi0Rn5 +h6SXW+/rrQmt+iTsM3eeW61JyC0/SUCixdCeu/amwy/aLMUZ4ZxUYL1doSAFYrd1 +kn/1JJZt9VkRwPES7Tyst5bOGZmdfBVEyj+9V+GSzWFV+yNperLTmN/VBX+sm1NF +Szrtbv7z6tFCGETB3wIDAQABo1MwUTAdBgNVHQ4EFgQU6S8ApUJjtcgxe/5GRUkC +qFXfBMYwHwYDVR0jBBgwFoAU6S8ApUJjtcgxe/5GRUkCqFXfBMYwDwYDVR0TAQH/ +BAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAQEAiH/bb7EogzVMiXInLKk+O8SxegZZ +t+rXZRsRqVh/jc0JxEabuAi4yM4Ibdhsbsk7LlKwM7JTh/6kwgvQdUgFRUgV7jTu +HGwPLUhKd1+zfHVzPu/0uJKnY5B9jqzPk1Xp7/T66BEV+Wi3VlOSzwmiz5arj+tn +jAPhdyAmQuXV6MEXT1Oj231JUoDmzgThbvP2MLPmSUy3nRfEY3zaAEoYhu6idK18 +rRnY7ZdZabXaCZsFiMu10eW+iMx2grIeYWrGsqQoAOHI56TlVWUMHbIh1i7GgM/K +QvdpI8G7fh9k3BRePryN8+NN5T+cKOm9LCW0gW9rBjXnlaoqe0pfi2w9Jw== +-----END CERTIFICATE----- diff --git a/ca/ca.key b/ca/ca.key new file mode 100644 index 0000000..0404189 --- /dev/null +++ b/ca/ca.key @@ -0,0 +1,28 @@ +-----BEGIN PRIVATE KEY----- +MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQDdKzNGrcbPwFDH +k4Q/9yEy/dj3FKGSNbpg9fE/ZifTwzINsG8+TVTZ4jgwu1aICDCooWkyHNusK/6O +y010N3/cAr2TlU3TpWOMatuhZCpf5bnktvkKtPUJGJ8ZuMvoDoIptOF91jyM/2GH +TDtIC8eR9TPRJuySlE8x5oqOPWAOZ7plPyNQ0BhYdTGKRMd0saLRGfmHpJdb7+ut +Ca36JOwzd55brUnILT9JQKLF0J679qbDL9osxRnhnFRgvV2hIAVit3WSf/Uklm31 +WRHA8RLtPKy3ls4ZmZ18FUTKP71X4ZLNYVX7I2l6stOY39UFf6ybU0VLOu1u/vPq +0UIYRMHfAgMBAAECggEAN4tg7lA4TPakkurGXPYovVCpS6w/w6OAslcyBlUWjYVJ +LczwsznipHG+4OY7niBIcCFRdQdwV/YYkS4XvqctkkiR6d2mVRAFRz+S9x5b0ge0 +vu8A7qJxo54uXtxdQWNbZzQJKXxDarm8eak4fiiPL2XgZJec9FcQ6JxYkc5yMEt/ +KoAn07ICAyHGqbjQ/DUMazZ/ocdMOBSYgkO3gT24IqiDxVvXUNNtVZeqWS6T6pMV +yoh3SvACW3eo+v/pzhfMVg99Nfua8faBcTappraqgq9nFMNJUtt9A5aSfVLGFhbO +nzyxd8ES/M4E4fFFnMO4yrcUhVXSGGQyvQLSd9goMQKBgQDwzF22apc4gvCqAbD+ +VRSpbi0DSsqfVO6czCZ+bfNRFl76IKXnpPHVhy+lW3/xrzHuw5SR9zqQluiG0MfZ +vENN6gHn2zyzYpEpMamOnUSoNuHeE58wVPweCSM0aH6wQb14NIsVLzhYY7b1gGH5 +RAJ9kUIgtvMMbK+O9nYvCPclWQKBgQDrIZftt9vd/xyiG3HCK6q2x+7sjxXh04Jl +Pzu4t53SylcFaaZNNReDMC/xYQfZ/3xHbQ3+elS3LwQtlMxFAoeJkw9fX66gOQv7 +Ru1LR6EDLkafOt1QPuL2jw7GbNcBuALWvC+RT8ZhHa/8RUi/xiJnMoJDEuImgAbl +ZQDS59Fh9wKBgGi/riB1W9UUeNarp6/rmPJfYCtndJ89FhOVZ0VmVQs4HRbX7vPG +uAC4LwzSseST3rfL0qxwjMRrMTm8RsO79tdE7ZFLuKscPKNb3DOSzFQUk8rEZGJl +BcuXE/5vWnUYE/DfgoUzpmIk9mjzcSs63456CvcqPq5v9SrOofiyALj5AoGASs/h +ey1os3WcMqfwxgsGwilTB8lu+O9HKde4tMkXWh4vGfXHiAFAfekzF+X7jY0QidlU +/ocFtVMsTSRu6fYoEcnMtlfHRAtimIy0q6Maw9xRdBBSolmf9TsHRHMU5eMaZCB0 +MhPj1rqPaADTaNEt2Q/lClpTwlQx3YMJhBFmOXkCgYBk4uIk4fLx04C4UW+5NTps +sJSWwtp3k9yR2v/ptNEbYxhDm7FaL8muyJbASBIRPZH/5CRVfz5hi3ZcuvYxPZxI +d26ENrgY11r2lSij7MdbRVteq6mWt0oxbtPa+fuH+GhfzLS/zlSxOs4+NFHDy/kj +UdzYAqHOYM4ZWcwwN5Lnbw== +-----END PRIVATE KEY----- diff --git a/ca/cheese.cfg b/ca/cheese.cfg new file mode 100644 index 0000000..4b3967a --- /dev/null +++ b/ca/cheese.cfg @@ -0,0 +1,11 @@ +[ ca ] +default_ca = CA_default +[ CA_default ] +default_days = 365 +database = index.txt +serial = serial +new_certs_dir = . +default_md = sha256 +policy = policy_any +[ policy_any ] +commonName = supplied diff --git a/ca/create_all_keys.sh b/ca/create_all_keys.sh new file mode 100755 index 0000000..4350306 --- /dev/null +++ b/ca/create_all_keys.sh @@ -0,0 +1,18 @@ +#!/bin/bash + +cert_ca="/C=PT/ST=Coimbra/L=Coimbra/O=UC/CN=CoimbraVPN" +cert_vpn="/C=PT/ST=Coimbra/L=Coimbra/O=UC/CN=gateway" +cert_user="/C=PT/ST=Coimbra/L=Coimbra/O=UC/CN=warrior" + +echo 1000 > serial + +[[ -e "ca.key" ]] || openssl genrsa -out "ca.key" 2048 +[[ -e "ca.crt" ]] || openssl req -x509 -nodes -days 365 -key "ca.key" -out "ca.crt" -subj "$cert_ca" +[[ -e "vpn.key" ]] || openssl genrsa -out "vpn.key" 2048 +[[ -e "vpn.csr" ]] || openssl req -new -key "vpn.key" -out "vpn.csr" -subj "$cert_vpn" +[[ -e "vpn.crt" ]] || openssl ca -batch -in "vpn.csr" -cert "ca.crt" -keyfile "ca.key" -out "vpn.crt" -config cheese.cfg +[[ -e "dh2048.pem" ]] || openssl dhparam -out "dh2048.pem" 2048 +[[ -e "ta.key" ]] || openvpn --genkey secret "ta.key" +[[ -e "user.key" ]] || openssl genrsa -out user.key +[[ -e "user.csr" ]] || openssl req -new -key user.key -out user.csr -subj "$cert_user" +[[ -e "user.crt" ]] || openssl ca -batch -in "user.csr" -cert "ca.crt" -keyfile "ca.key" -out "user.crt" -config cheese.cfg diff --git a/ca/dh2048.pem b/ca/dh2048.pem new file mode 100644 index 0000000..1e2e8ab --- /dev/null +++ b/ca/dh2048.pem @@ -0,0 +1,8 @@ +-----BEGIN DH PARAMETERS----- +MIIBDAKCAQEAk7rlEA49t+X418jo+PDdouhvha7o5+P4A78GOAirULGZh2sfCWWw +ha90YswleinXvJF/DYR7H6SebcXoXnaJeR4PbB8b9cXUE5a2Bw/bc+tJpSGkuPLF +jHVUqTWehqVvwCFk2ixxA5RAG0ItPemK33fGppc9wlS3MmAPRFwCutsSh4+r96dq +ywKorzgS6WfsTCDTXUqfAwXT1ijtxoscklgB6YuVGyKsiyZLOCCVpBPEVq535dso +0IUJwOdf8Z6eYwnT3COI7zSJkmy5J16s05t07GWslkFcdUyM91CvvfJz/Jd/lAYO +Ge3b6KnJv8YUlLAfzdhIHxlk+dDobJGzRwIBAgICAOE= +-----END DH PARAMETERS----- diff --git a/ca/index.txt b/ca/index.txt new file mode 100644 index 0000000..9a7de2f --- /dev/null +++ b/ca/index.txt @@ -0,0 +1,2 @@ +V 270421165747Z 1000 unknown /CN=gateway +V 270421165747Z 1001 unknown /CN=warrior diff --git a/ca/index.txt.attr b/ca/index.txt.attr new file mode 100644 index 0000000..8f7e63a --- /dev/null +++ b/ca/index.txt.attr @@ -0,0 +1 @@ +unique_subject = yes diff --git a/ca/index.txt.attr.old b/ca/index.txt.attr.old new file mode 100644 index 0000000..8f7e63a --- /dev/null +++ b/ca/index.txt.attr.old @@ -0,0 +1 @@ +unique_subject = yes diff --git a/ca/index.txt.old b/ca/index.txt.old new file mode 100644 index 0000000..e65c804 --- /dev/null +++ b/ca/index.txt.old @@ -0,0 +1 @@ +V 270421165747Z 1000 unknown /CN=gateway diff --git a/ca/serial b/ca/serial new file mode 100644 index 0000000..7d802a3 --- /dev/null +++ b/ca/serial @@ -0,0 +1 @@ +1002 diff --git a/ca/serial.old b/ca/serial.old new file mode 100644 index 0000000..dd11724 --- /dev/null +++ b/ca/serial.old @@ -0,0 +1 @@ +1001 diff --git a/ca/ta.key b/ca/ta.key new file mode 100644 index 0000000..6420f9c --- /dev/null +++ b/ca/ta.key @@ -0,0 +1,21 @@ +# +# 2048 bit OpenVPN static key +# +-----BEGIN OpenVPN Static key V1----- +0acce6a0da9c806f74ffc03625c84d3b +a6120bbfeac829548c5287058179aae4 +09a9738bc7e5d2d57a40cd34dcdfb816 +c52586fa80f959eb31bb5d8d996aaac3 +86fa565c11973811a316d7906cfd39a2 +a4f0f34d8dd53c91cc7a95888970bab5 +c9b39f8879dc2d9f142886a56dda120b +4ac2397f99a8584c03c5cf64cf96b8ba +8a22263975df4314d002f3d6c0e51a27 +92cc8354e43d9981c4e59c6a6798eecf +4052a8ef6d946007b27fb0ee29ab7da1 +7c0dcf85bfd5202f9b65b73212e2716c +d006a1daf0ab5db4c64f0496c08fbb72 +673605654483a44f78b622183346eeb2 +3f5ef0a6a02a33e3c1cf4703a9f449f6 +e8b317d45bc93c4e98a054d014d0f667 +-----END OpenVPN Static key V1----- diff --git a/ca/user.crt b/ca/user.crt new file mode 100644 index 0000000..e22516a --- /dev/null +++ b/ca/user.crt @@ -0,0 +1,74 @@ +Certificate: + Data: + Version: 3 (0x2) + Serial Number: 4097 (0x1001) + Signature Algorithm: sha256WithRSAEncryption + Issuer: C=PT, ST=Coimbra, L=Coimbra, O=UC, CN=CoimbraVPN + Validity + Not Before: Apr 21 16:57:47 2026 GMT + Not After : Apr 21 16:57:47 2027 GMT + Subject: CN=warrior + Subject Public Key Info: + Public Key Algorithm: rsaEncryption + Public-Key: (2048 bit) + Modulus: + 00:9a:93:a0:1e:45:28:7b:b2:31:7c:06:99:40:ad: + 93:54:ba:14:87:17:f5:23:49:28:85:00:66:7d:94: + 83:79:b0:b9:d7:db:55:12:d0:90:f3:75:51:b8:8e: + 58:47:8c:61:04:23:a1:e4:49:91:b1:99:72:e7:09: + 24:ba:a1:5a:96:4e:b8:c3:c6:51:69:f7:de:15:97: + c4:1e:f2:ac:65:10:43:57:78:c4:0a:f8:9b:23:fa: + 0d:c7:b3:82:90:46:0c:51:48:a4:15:bf:43:92:2c: + b8:ab:ee:b6:8d:17:a4:37:80:45:fe:ab:a6:1c:9c: + cf:73:5f:cb:4d:3c:f7:63:9a:49:d9:96:73:d2:ad: + 0b:7d:ce:13:60:fd:c8:da:35:fd:18:e0:a6:ff:89: + ed:78:22:0f:b2:c8:eb:cb:dc:bd:d9:29:29:7d:e1: + 54:80:83:8b:f1:6b:82:56:2a:1f:18:d0:f8:a5:3c: + 84:79:ad:5b:cf:98:d0:a1:92:33:ca:5d:af:d3:1a: + 04:20:51:e9:0a:81:63:61:12:72:d9:58:3f:dc:a5: + d5:26:7c:a2:7c:fe:67:d2:74:1d:95:22:25:52:02: + 63:bd:0c:fc:10:1d:d6:77:67:5d:a4:48:3d:be:15: + 93:27:b0:17:0d:d5:8e:53:e6:92:3c:76:16:0b:c2: + f1:4b + Exponent: 65537 (0x10001) + X509v3 extensions: + X509v3 Subject Key Identifier: + E5:2F:47:65:47:CE:9E:F4:AC:B3:F8:5C:29:34:92:1E:A8:2C:50:86 + X509v3 Authority Key Identifier: + E9:2F:00:A5:42:63:B5:C8:31:7B:FE:46:45:49:02:A8:55:DF:04:C6 + Signature Algorithm: sha256WithRSAEncryption + Signature Value: + 73:66:cc:33:e4:34:e2:d5:fb:8c:3e:e9:b7:bb:aa:3f:41:bf: + 9e:f8:db:6d:77:2a:d3:7a:88:69:7a:ee:e7:6c:71:91:a7:7e: + c7:6c:7c:c4:f7:cd:bf:eb:e0:b5:7f:2f:90:59:be:18:c8:72: + 5d:4c:09:6a:5c:9d:5c:73:b0:53:0c:c0:08:fa:fc:d6:7c:bb: + cc:d6:39:b0:50:f2:58:73:f4:2b:d6:87:2b:e1:a5:fc:4e:fe: + 4a:f3:8c:6e:94:47:54:c6:06:55:9e:16:06:2f:bd:df:c3:76: + e8:2b:19:eb:49:81:e2:6d:d1:53:2c:d0:18:2c:77:55:09:31: + 90:73:c0:c8:78:79:89:c0:73:08:96:f0:27:04:8c:27:70:f6: + 6f:a1:75:76:3b:4b:c1:0e:81:85:51:8d:25:23:69:ff:3c:b1: + 3f:98:7a:5f:44:dd:75:77:31:f5:06:dd:34:1f:81:9a:53:3f: + 78:9c:a3:5d:74:de:e5:7a:c6:34:39:9a:6c:ad:97:44:7b:93: + 1b:02:ae:9b:66:5f:62:78:2f:37:20:bc:f1:8a:0a:e8:e6:66: + 8d:0b:7a:d4:14:7c:8b:2e:6b:c7:34:2b:56:85:b5:91:9a:ee: + 20:01:f8:3d:e7:22:6e:18:82:52:5c:71:a4:dc:88:4c:09:d8: + 4b:33:1e:35 +-----BEGIN CERTIFICATE----- +MIIDIzCCAgugAwIBAgICEAEwDQYJKoZIhvcNAQELBQAwUzELMAkGA1UEBhMCUFQx +EDAOBgNVBAgMB0NvaW1icmExEDAOBgNVBAcMB0NvaW1icmExCzAJBgNVBAoMAlVD +MRMwEQYDVQQDDApDb2ltYnJhVlBOMB4XDTI2MDQyMTE2NTc0N1oXDTI3MDQyMTE2 +NTc0N1owEjEQMA4GA1UEAwwHd2FycmlvcjCCASIwDQYJKoZIhvcNAQEBBQADggEP +ADCCAQoCggEBAJqToB5FKHuyMXwGmUCtk1S6FIcX9SNJKIUAZn2Ug3mwudfbVRLQ +kPN1UbiOWEeMYQQjoeRJkbGZcucJJLqhWpZOuMPGUWn33hWXxB7yrGUQQ1d4xAr4 +myP6DcezgpBGDFFIpBW/Q5IsuKvuto0XpDeARf6rphycz3Nfy00892OaSdmWc9Kt +C33OE2D9yNo1/Rjgpv+J7XgiD7LI68vcvdkpKX3hVICDi/FrglYqHxjQ+KU8hHmt +W8+Y0KGSM8pdr9MaBCBR6QqBY2ESctlYP9yl1SZ8onz+Z9J0HZUiJVICY70M/BAd +1ndnXaRIPb4VkyewFw3VjlPmkjx2FgvC8UsCAwEAAaNCMEAwHQYDVR0OBBYEFOUv +R2VHzp70rLP4XCk0kh6oLFCGMB8GA1UdIwQYMBaAFOkvAKVCY7XIMXv+RkVJAqhV +3wTGMA0GCSqGSIb3DQEBCwUAA4IBAQBzZswz5DTi1fuMPum3u6o/Qb+e+NttdyrT +eohpeu7nbHGRp37HbHzE982/6+C1fy+QWb4YyHJdTAlqXJ1cc7BTDMAI+vzWfLvM +1jmwUPJYc/Qr1ocr4aX8Tv5K84xulEdUxgZVnhYGL73fw3boKxnrSYHibdFTLNAY +LHdVCTGQc8DIeHmJwHMIlvAnBIwncPZvoXV2O0vBDoGFUY0lI2n/PLE/mHpfRN11 +dzH1Bt00H4GaUz94nKNddN7lesY0OZpsrZdEe5MbAq6bZl9ieC83ILzxigro5maN +C3rUFHyLLmvHNCtWhbWRmu4gAfg95yJuGIJSXHGk3IhMCdhLMx41 +-----END CERTIFICATE----- diff --git a/ca/user.csr b/ca/user.csr new file mode 100644 index 0000000..b86c638 --- /dev/null +++ b/ca/user.csr @@ -0,0 +1,16 @@ +-----BEGIN CERTIFICATE REQUEST----- +MIIClTCCAX0CAQAwUDELMAkGA1UEBhMCUFQxEDAOBgNVBAgMB0NvaW1icmExEDAO +BgNVBAcMB0NvaW1icmExCzAJBgNVBAoMAlVDMRAwDgYDVQQDDAd3YXJyaW9yMIIB +IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAmpOgHkUoe7IxfAaZQK2TVLoU +hxf1I0kohQBmfZSDebC519tVEtCQ83VRuI5YR4xhBCOh5EmRsZly5wkkuqFalk64 +w8ZRaffeFZfEHvKsZRBDV3jECvibI/oNx7OCkEYMUUikFb9Dkiy4q+62jRekN4BF +/qumHJzPc1/LTTz3Y5pJ2ZZz0q0Lfc4TYP3I2jX9GOCm/4nteCIPssjry9y92Skp +feFUgIOL8WuCViofGND4pTyEea1bz5jQoZIzyl2v0xoEIFHpCoFjYRJy2Vg/3KXV +JnyifP5n0nQdlSIlUgJjvQz8EB3Wd2ddpEg9vhWTJ7AXDdWOU+aSPHYWC8LxSwID +AQABoAAwDQYJKoZIhvcNAQELBQADggEBAEiTCmeFqewPqLHD9IMLAvgNQhjXjZuJ +adghY9U7BozVu4oYJbMrfdpduZDXt33eVXhr6rCvdx+PB2WAMHcUaOQLx857FCpX +KeFSrXwcDICViGgQArFAR6fVrMqc5363kRx4o96q6ojUGvDup8w6BnSeAaswXsjg +2rz9a4iAXE/DYKCeNUWblQyDhTpDEyedoTxFFnWNuPR8RDwfH1sahOj/hxgiTRfy +JRm7p9BuGNWaik5WpCZAxe1be07W/nmYzZnzTx/vMfznKy2jmLSdYtEQPlGW8fwb +oZreM9grmJK39YDGTyih/EoBx+hRR0VelBrkj/HdxNK4eJMV8eGdbGU= +-----END CERTIFICATE REQUEST----- diff --git a/ca/user.key b/ca/user.key new file mode 100644 index 0000000..7dea51d --- /dev/null +++ b/ca/user.key @@ -0,0 +1,28 @@ +-----BEGIN PRIVATE KEY----- +MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCak6AeRSh7sjF8 +BplArZNUuhSHF/UjSSiFAGZ9lIN5sLnX21US0JDzdVG4jlhHjGEEI6HkSZGxmXLn +CSS6oVqWTrjDxlFp994Vl8Qe8qxlEENXeMQK+Jsj+g3Hs4KQRgxRSKQVv0OSLLir +7raNF6Q3gEX+q6YcnM9zX8tNPPdjmknZlnPSrQt9zhNg/cjaNf0Y4Kb/ie14Ig+y +yOvL3L3ZKSl94VSAg4vxa4JWKh8Y0PilPIR5rVvPmNChkjPKXa/TGgQgUekKgWNh +EnLZWD/cpdUmfKJ8/mfSdB2VIiVSAmO9DPwQHdZ3Z12kSD2+FZMnsBcN1Y5T5pI8 +dhYLwvFLAgMBAAECggEAEerPsgKJLUFb7AjlxbH49Ga3T2tu/j6SJEyGFMNctAPQ +nt0tEMe9LYMpTE+vmueCLVUmBEykxyXGxFHygHGIiwin8QVxVWumQfF8CaxOYE6Q +x7hXXQAxF2v6Ie5EUY3VCqz1XBH19qEZbNB4N4WIguhq9JiX4hQpFbICYjsRX+mJ +w331t1a1sjcamH2GZLM6fxx3iQ4hOG/2q1ItiYO1pX3BjnGRwQV7KwRnSQhJjkAk +UFrsCIRfyVD/6leai+hp0dkjW+xMA8ISAoicYCIkYPkm4dSuOMqI0NYtRwNwInpx +0c7Y0OM70UxFB6mEepQjwogbC84jmf3HJXZm15SEWQKBgQDPGitXWoav/Ur1x+Z5 +l/G027HH1zzZa+ZGcOoXrnYxZqBt2G4gPTnGzkyyjbG/7ZRH67ZwvsWSlg/nw/kc +whxF4nxKRfGh+FrOFshHjWc1NF4vGKhwUf6qwiHA67zAeTJlFuu5323CiisQewXw +fOiVr4uUICdldbrPC7NuhWAIGQKBgQC/EqqCnri/dTrAdzOwTnZAk+TLdY1Z7AKp +WdYJqECDV3n83Yn6f5pOWH+R+t2en8w7btIBnlkXVZSHOdmyM8ezF9xiNv6Z3olm +CieyhoLX1ZI/dK2olvsrKkVQ+nQZT9IGBUrXABMDaas62QBhXr5GbGcdyB2f6GLS +vBttEsjBAwKBgDLDd1wyFFGPBJC6LwQe+mAaeblCSOgCSq95fefQG6iAP1KtelDs +sPzKFIKvuKIS2gXHATEhkcwcfEmS/7zM16FJoq2R92h8N8XMT8s6HdIsw+lHYgIm +FwZED4H6RonnKzMcKyukWIMW2vdvMEWCWIBYRx5Hw2BbOy8E7zZn+uIBAoGBAJpM +vJ2XB6K1TKi4mmk6M4ya4hzb5TZEvTF9drd9w/tM3Roy3YYJHdc+6GY+rFG4wfkM +2VKtSUzqs3MwaHjcD9y03CgEOT6Q02wvrzcgIPGjauMLmmGW62ZEUI3Ac5ktOHHc +PD+7s58B6mEvdHstQ4Mjb3JBdIr54zRC6/L9RFl5AoGAUqXySFS3Acrnq2C6W2BK +7LzsvqihjhUJ9jgmTkJiexqYA7T93DDKBrfaZGuRU2YMffcFcNpgFuw2GIZaaHhN +qMcfxBP1Bllt/KE1B0uohYHqVoSEqKcciAnjnOv506Xy5pf0QgwfD7qUPD4hp57U +yzr1Zo9yl9e8RyqhBrHM9BU= +-----END PRIVATE KEY----- diff --git a/ca/vpn.crt b/ca/vpn.crt new file mode 100644 index 0000000..9c5773e --- /dev/null +++ b/ca/vpn.crt @@ -0,0 +1,74 @@ +Certificate: + Data: + Version: 3 (0x2) + Serial Number: 4096 (0x1000) + Signature Algorithm: sha256WithRSAEncryption + Issuer: C=PT, ST=Coimbra, L=Coimbra, O=UC, CN=CoimbraVPN + Validity + Not Before: Apr 21 16:57:47 2026 GMT + Not After : Apr 21 16:57:47 2027 GMT + Subject: CN=gateway + Subject Public Key Info: + Public Key Algorithm: rsaEncryption + Public-Key: (2048 bit) + Modulus: + 00:ad:da:52:8d:65:c2:8d:68:5a:32:e2:f3:7e:7e: + cd:13:9e:fc:51:72:f1:80:4c:61:fb:38:b4:87:9a: + 57:92:27:5b:ff:86:1f:95:f6:4b:ec:7c:7e:2f:b9: + 37:36:17:18:b2:db:16:0c:91:f2:d5:f5:4d:49:e8: + 3b:b8:0a:1f:8f:e9:f6:16:7a:15:22:7a:4c:f3:6d: + c2:b1:76:f2:2a:81:4e:56:a6:01:16:16:b5:e5:68: + 74:3b:15:35:f2:88:78:e6:f9:7b:1e:5c:d4:b3:f6: + d1:43:13:1d:8e:82:90:38:2d:43:88:7c:35:cc:c1: + 7c:6d:8e:ed:21:5a:9a:31:0e:5f:3d:dc:7c:5e:46: + 1d:f0:46:41:86:70:48:a2:a9:62:4d:ba:14:d3:5b: + 67:25:bf:d9:46:e6:d7:59:26:99:e2:e0:25:16:a0: + 1b:cd:d1:81:ca:75:d7:d6:bd:c5:7b:25:4b:e9:58: + d2:22:f6:b1:bb:b2:5e:7d:67:9f:fd:1d:44:b4:b5: + d2:b6:ca:9e:e7:53:81:a0:4b:bf:b6:0a:61:e6:ba: + a0:e2:0a:a4:bb:21:16:90:36:c7:95:96:ae:9b:23: + e0:06:47:36:24:0b:ec:23:3d:e0:8c:42:b8:aa:9e: + 38:92:18:d7:6f:19:42:76:fd:0f:42:75:46:e6:86: + e6:75 + Exponent: 65537 (0x10001) + X509v3 extensions: + X509v3 Subject Key Identifier: + 9F:68:08:83:F5:DC:C3:11:2B:69:5D:A4:81:EF:DE:7B:7D:6E:AE:3A + X509v3 Authority Key Identifier: + E9:2F:00:A5:42:63:B5:C8:31:7B:FE:46:45:49:02:A8:55:DF:04:C6 + Signature Algorithm: sha256WithRSAEncryption + Signature Value: + 13:0b:5e:3c:0c:dd:e8:e1:04:12:bb:c6:98:e1:52:72:12:b4: + 8f:46:f0:5a:48:b6:f1:69:d3:65:e5:1e:ef:ed:03:fe:9f:ee: + 0f:bc:72:ad:cd:52:b5:18:ca:9c:c0:1c:f1:48:80:64:b6:90: + 33:12:fb:18:4b:e1:a7:c9:0b:1e:16:e5:72:4a:e1:f9:b6:e3: + 5d:b9:06:2d:ed:cc:d7:ee:7d:8c:22:99:69:46:d3:88:64:19: + 1e:3f:02:b7:37:2a:99:6b:ba:07:77:e8:f0:e5:50:41:51:94: + 6e:87:d9:71:5c:47:ef:a9:2a:b5:cf:86:2a:98:a5:c9:bd:01: + 04:f6:81:d3:81:d2:40:c6:83:29:42:2f:ad:d8:4c:ac:6c:df: + 89:93:8c:bb:48:cb:dc:62:a4:55:ed:f7:c9:b6:01:41:48:20: + dd:9f:5f:fa:55:8b:d6:f4:0e:ee:00:63:53:11:19:5a:77:47: + 0e:ec:4b:8d:08:8d:e2:51:3a:d6:97:ee:16:4c:0d:b3:ac:42: + e2:21:18:dd:c0:41:db:95:88:dd:18:cd:61:df:f3:c5:b0:12: + c4:4a:55:75:63:a4:69:44:38:2e:2e:3c:cf:51:6f:b8:36:25: + 24:d2:56:4f:eb:a0:50:93:73:2e:a9:ed:a4:92:41:3b:73:20: + 3f:57:e7:b2 +-----BEGIN CERTIFICATE----- +MIIDIzCCAgugAwIBAgICEAAwDQYJKoZIhvcNAQELBQAwUzELMAkGA1UEBhMCUFQx +EDAOBgNVBAgMB0NvaW1icmExEDAOBgNVBAcMB0NvaW1icmExCzAJBgNVBAoMAlVD +MRMwEQYDVQQDDApDb2ltYnJhVlBOMB4XDTI2MDQyMTE2NTc0N1oXDTI3MDQyMTE2 +NTc0N1owEjEQMA4GA1UEAwwHZ2F0ZXdheTCCASIwDQYJKoZIhvcNAQEBBQADggEP +ADCCAQoCggEBAK3aUo1lwo1oWjLi835+zROe/FFy8YBMYfs4tIeaV5InW/+GH5X2 +S+x8fi+5NzYXGLLbFgyR8tX1TUnoO7gKH4/p9hZ6FSJ6TPNtwrF28iqBTlamARYW +teVodDsVNfKIeOb5ex5c1LP20UMTHY6CkDgtQ4h8NczBfG2O7SFamjEOXz3cfF5G +HfBGQYZwSKKpYk26FNNbZyW/2Ubm11kmmeLgJRagG83Rgcp119a9xXslS+lY0iL2 +sbuyXn1nn/0dRLS10rbKnudTgaBLv7YKYea6oOIKpLshFpA2x5WWrpsj4AZHNiQL +7CM94IxCuKqeOJIY128ZQnb9D0J1RuaG5nUCAwEAAaNCMEAwHQYDVR0OBBYEFJ9o +CIP13MMRK2ldpIHv3nt9bq46MB8GA1UdIwQYMBaAFOkvAKVCY7XIMXv+RkVJAqhV +3wTGMA0GCSqGSIb3DQEBCwUAA4IBAQATC148DN3o4QQSu8aY4VJyErSPRvBaSLbx +adNl5R7v7QP+n+4PvHKtzVK1GMqcwBzxSIBktpAzEvsYS+GnyQseFuVySuH5tuNd +uQYt7czX7n2MIplpRtOIZBkePwK3NyqZa7oHd+jw5VBBUZRuh9lxXEfvqSq1z4Yq +mKXJvQEE9oHTgdJAxoMpQi+t2EysbN+Jk4y7SMvcYqRV7ffJtgFBSCDdn1/6VYvW +9A7uAGNTERlad0cO7EuNCI3iUTrWl+4WTA2zrELiIRjdwEHblYjdGM1h3/PFsBLE +SlV1Y6RpRDguLjzPUW+4NiUk0lZP66BQk3Muqe2kkkE7cyA/V+ey +-----END CERTIFICATE----- diff --git a/ca/vpn.csr b/ca/vpn.csr new file mode 100644 index 0000000..e0dd728 --- /dev/null +++ b/ca/vpn.csr @@ -0,0 +1,16 @@ +-----BEGIN CERTIFICATE REQUEST----- +MIIClTCCAX0CAQAwUDELMAkGA1UEBhMCUFQxEDAOBgNVBAgMB0NvaW1icmExEDAO +BgNVBAcMB0NvaW1icmExCzAJBgNVBAoMAlVDMRAwDgYDVQQDDAdnYXRld2F5MIIB +IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArdpSjWXCjWhaMuLzfn7NE578 +UXLxgExh+zi0h5pXkidb/4YflfZL7Hx+L7k3NhcYstsWDJHy1fVNSeg7uAofj+n2 +FnoVInpM823CsXbyKoFOVqYBFha15Wh0OxU18oh45vl7HlzUs/bRQxMdjoKQOC1D +iHw1zMF8bY7tIVqaMQ5fPdx8XkYd8EZBhnBIoqliTboU01tnJb/ZRubXWSaZ4uAl +FqAbzdGBynXX1r3FeyVL6VjSIvaxu7JefWef/R1EtLXStsqe51OBoEu/tgph5rqg +4gqkuyEWkDbHlZaumyPgBkc2JAvsIz3gjEK4qp44khjXbxlCdv0PQnVG5obmdQID +AQABoAAwDQYJKoZIhvcNAQELBQADggEBAGk0ZlKtKypPFXkJo9uAtLj6WZ/Q5FAR +HGWGxbJgUNSC760/D4b9Ul0kKY6Pu6aI20+Ugst8jEv4rmuC93p3w9QEAmnHmwZs +5zLKGzrRr8/MeCJMi4bptB0WOr/37F2sDseI9LEjKFQ5XQeU8lrozcCk4ekNc8HD +gyQVXudA1aGPUDAZWaT+10SYSENjF5aRZjDpNti6pLgAFj2wIccWbrR3k9xHZF68 +SXVifN+bmEXc4yKyrZ+sIi1B327qDz2r8VdS8+YSx8EyBO5D9JPM9oiQbJ/9/ifn ++6YTaZj6zsyJbZDRZwkp/kmsz/Klccz9SeNLyJ9vUP6CHqcqxyGg6bk= +-----END CERTIFICATE REQUEST----- diff --git a/ca/vpn.key b/ca/vpn.key new file mode 100644 index 0000000..8a4438c --- /dev/null +++ b/ca/vpn.key @@ -0,0 +1,28 @@ +-----BEGIN PRIVATE KEY----- +MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCt2lKNZcKNaFoy +4vN+fs0TnvxRcvGATGH7OLSHmleSJ1v/hh+V9kvsfH4vuTc2Fxiy2xYMkfLV9U1J +6Du4Ch+P6fYWehUiekzzbcKxdvIqgU5WpgEWFrXlaHQ7FTXyiHjm+XseXNSz9tFD +Ex2OgpA4LUOIfDXMwXxtju0hWpoxDl893HxeRh3wRkGGcEiiqWJNuhTTW2clv9lG +5tdZJpni4CUWoBvN0YHKddfWvcV7JUvpWNIi9rG7sl59Z5/9HUS0tdK2yp7nU4Gg +S7+2CmHmuqDiCqS7IRaQNseVlq6bI+AGRzYkC+wjPeCMQriqnjiSGNdvGUJ2/Q9C +dUbmhuZ1AgMBAAECggEAAKgBSkWRUR9D1C/YxtFbypvZNcWksxhkbwJOQQLuv59i +V457zq7c3ktGJ/SbEZIYiPNzROSqAWZm54nEkMzksmSzKoHE+JVP0dZssma6y6bH +zppJCNX9d9yenbQNQjBexC5xRMlk/pXrQTxi2BHWvyyvI4rvolczo908E/6MGPXN +lebDIWLGFRzvuJAYw/4tv2o7qsb4U4aSYzhqRRe6+pkeQnPgbAMISfEB+AEi0q1Y +4g3OutUlnmdICYg31ZybmQ5jMJ9v/EaIkyKjdXw6qOB7aecrKBj9DSiTGZmmyB/U +3H+RfRofQP/A6W8UaV2FWP57JWu9a6isy/ap/vqoaQKBgQDXdVI0733kPW7rhgbx ++OfKV5HajasxBOH6g1L/o6NDddIhOUdhz3pbOwU4huq37Ojp2TgYIRM/+eLCT4y4 +IRpDIIJpAACrkNeR9JvpkOzOWN/MbPEOKFkYyUz20nND8p+GtoibFO6HRwG/p5ru +1rCrVZOwNFj8hkttpzjyNBNsfQKBgQDOkNsbj0FnFn6EA3uWgXT95wZTwwPPwyz5 +QVxq3PIY2TzgM69C7FDaPA3bDve1PME3s6+28Vkzw+jzLwg99csh23gCQt8NPvXA +yFRYQLZkB165TVwyVGVPaQ93OEDFi5xGWA8JiBIflrYatlH8luh9cLuOcMn44QlD +0H59DbkbWQKBgQCrBfh0BmpiopUKJQAcUFwFFE+1MODjbyHFTTqzqvusT7i1IJdV +v3A7PHUfcpCb4FTdUswg8xgpnzvsy2JCwhvrjsGVgSgHB1jmBUlBNAWUoZ070nnh +qAtZDmimP1S5abxRHVD/8LSJ8sYjkHH+BbKEvdAWfObpw9vZtXQRZV7JrQKBgB+q +x1xXPuCN60FTw1uUZxoRk7+9ktUEB94CbieXzamPjCyW39RzpAWA1WLyzXjEYp6m +dlamc1VjQFAfsrTE/KopGiHGnKlMMKKoU33gFdYJ5zSjLnIszAc7hPpy7kManw+N +qmh8qsKa+TnpH3KItAWfBbHVirET1rbFvM5xDyKpAoGACI1lpHa565PERYlopV6U +9s7UeSNVwEq0mddzrJT+1YGB1yEKfWOAUzBeq8j1jpL6n3Zl/n33JyWiy6A4V/qH +hQsjxX96jO8fhxOJlx9wiwv/NF4iYoD5f9XYkQw0me8u65rDzPzEoDtngSk7b6xq +xyJenIzC39NgPpZySK4Aewo= +-----END PRIVATE KEY----- diff --git a/client.conf b/client.conf index 2f40a2a..4853b00 100644 --- a/client.conf +++ b/client.conf @@ -1,11 +1,25 @@ client dev tun proto udp -remote 10.60.0.3 1194 +remote 10.60.0.3 1194 # ip da vpn gateway persist-tun persist-key + +# certificados ca ca.crt cert user.crt key user.key +# criamos key +# crismos csr resquest +# -> gateway +# el certificado +# -> user + +# 2FA +auth-user-pass +cipher AES-256-GCM +auth SHA256 + +tls-auth ta.key 1 key-direction 1 diff --git a/dh2048.pem b/dh2048.pem new file mode 100644 index 0000000..9063e44 --- /dev/null +++ b/dh2048.pem @@ -0,0 +1,8 @@ +-----BEGIN DH PARAMETERS----- +MIIBDAKCAQEA3nwUY/Bv8Vb0b6iqb2AKull2IL1MJHn8P40f/mdcAZjB+6BTLL9s +jblzZJaEooE5+WjfaAWghjbEqzYt99/eQA0nDWm3yqlvekNmXjR5TzFS/qV/zbIw +PoXmOSDr39HK7Z2DQz5aVP5j48b+rPAwwAVdkEmnUL49ef0NewYkOYhn9LTBqny+ +l3fDXy1FIE/KJNP/3pV9tHdccxNHDklyW8xRSAKHvYfKeQBm6ZxhB8Wekg3uyUfW +ab81VdZrYY9wTpnOARcZzKt63gNbd+N9er+a4IJ5btA0vn4IODeT1gS9/WUZUbuW +MdQ2Mwkc8O6a/z3cbacXvnyWf/raidN5rwIBAgICAOE= +-----END DH PARAMETERS----- diff --git a/relatorio/relatorio.log b/relatorio/relatorio.log index b45e341..277e452 100644 --- a/relatorio/relatorio.log +++ b/relatorio/relatorio.log @@ -1,9 +1,9 @@ -This is pdfTeX, Version 3.141592653-2.6-1.40.29 (TeX Live 2026/Arch Linux) (preloaded format=pdflatex 2026.4.13) 19 APR 2026 21:36 +This is pdfTeX, Version 3.141592653-2.6-1.40.29 (TeX Live 2026/Arch Linux) (preloaded format=pdflatex 2026.4.13) 21 APR 2026 14:33 entering extended mode \write18 enabled. %&-line parsing enabled. -**/home/raw/uni/fsi/trabalho/relatorio -(/home/raw/uni/fsi/trabalho/relatorio.tex +**/home/raw/uni/fsi/trabalho/relatorio/relatorio +(/home/raw/uni/fsi/trabalho/relatorio/relatorio.tex LaTeX2e <2025-11-01> L3 programming layer <2026-01-19> (/usr/share/texmf-dist/tex/latex/base/article.cls @@ -135,55 +135,55 @@ Package: listings 2025/11/14 1.11b (Carsten Heinz) 2025/11/14 1.11b (Carsten Heinz) so I'm assuming it got fixed. LaTeX Font Info: Trying to load font information for OT1+EBGaramond-LF on in -put line 28. +put line 33. (/usr/share/texmf-dist/tex/latex/ebgaramond/OT1EBGaramond-LF.fd File: OT1EBGaramond-LF.fd 2023/03/19 (autoinst) Font definitions for OT1/EBGara mond-LF. ) LaTeX Font Info: Font shape `OT1/EBGaramond-LF/m/n' will be -(Font) scaled to size 12.0pt on input line 28. +(Font) scaled to size 12.0pt on input line 33. (/usr/share/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def File: l3backend-pdftex.def 2025-10-09 L3 backend support: PDF output (pdfTeX) \l__color_backend_stack_int=\count294 ) -(/home/raw/uni/fsi/trabalho/relatorio.aux +(/home/raw/uni/fsi/trabalho/relatorio/relatorio.aux Package babel Info: 'portuguese' activates 'portuges' shorthands. (babel) Reported on input line 5. ) \openout1 = `relatorio.aux'. -LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 28. -LaTeX Font Info: ... okay on input line 28. -LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 28. -LaTeX Font Info: ... okay on input line 28. -LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 28. -LaTeX Font Info: ... okay on input line 28. -LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 28. -LaTeX Font Info: ... okay on input line 28. -LaTeX Font Info: Checking defaults for TS1/cmr/m/n on input line 28. -LaTeX Font Info: ... okay on input line 28. -LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 28. -LaTeX Font Info: ... okay on input line 28. -LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 28. -LaTeX Font Info: ... okay on input line 28. +LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 33. +LaTeX Font Info: ... okay on input line 33. +LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 33. +LaTeX Font Info: ... okay on input line 33. +LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 33. +LaTeX Font Info: ... okay on input line 33. +LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 33. +LaTeX Font Info: ... okay on input line 33. +LaTeX Font Info: Checking defaults for TS1/cmr/m/n on input line 33. +LaTeX Font Info: ... okay on input line 33. +LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 33. +LaTeX Font Info: ... okay on input line 33. +LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 33. +LaTeX Font Info: ... okay on input line 33. \c@mv@tabular=\count295 \c@mv@boldtabular=\count296 \c@lstlisting=\count297 LaTeX Font Info: Font shape `OT1/EBGaramond-LF/m/n' will be -(Font) scaled to size 20.74pt on input line 29. +(Font) scaled to size 20.74pt on input line 34. LaTeX Font Info: Font shape `OT1/EBGaramond-LF/m/n' will be -(Font) scaled to size 14.4pt on input line 29. +(Font) scaled to size 14.4pt on input line 34. LaTeX Font Info: External font `cmex10' loaded for size -(Font) <14.4> on input line 29. +(Font) <14.4> on input line 34. LaTeX Font Info: External font `cmex10' loaded for size -(Font) <7> on input line 29. +(Font) <7> on input line 34. LaTeX Font Info: Font shape `OT1/EBGaramond-LF/m/n' will be -(Font) scaled to size 17.28pt on input line 30. +(Font) scaled to size 17.28pt on input line 35. LaTeX Font Info: Font shape `OT1/EBGaramond-LF/b/n' will be -(Font) scaled to size 17.28pt on input line 30. +(Font) scaled to size 17.28pt on input line 35. -(/home/raw/uni/fsi/trabalho/relatorio.toc +(/home/raw/uni/fsi/trabalho/relatorio/relatorio.toc LaTeX Font Info: Font shape `OT1/EBGaramond-LF/b/n' will be (Font) scaled to size 12.0pt on input line 2. ) @@ -201,27 +201,27 @@ File: lstlang1.sty 2025/11/14 1.11b listings language file File: lstlang1.sty 2025/11/14 1.11b listings language file ) LaTeX Font Info: Font shape `OT1/EBGaramond-LF/m/n' will be -(Font) scaled to size 10.0pt on input line 37. +(Font) scaled to size 10.0pt on input line 44. [2] -(/home/raw/uni/fsi/trabalho/relatorio.aux) +(/home/raw/uni/fsi/trabalho/relatorio/relatorio.aux) *********** LaTeX2e <2025-11-01> L3 programming layer <2026-01-19> *********** ) Here is how much of TeX's memory you used: - 4333 strings out of 469495 - 71923 string characters out of 5470098 - 655827 words of memory out of 5000000 - 32986 multiletter control sequences out of 15000+600000 + 4339 strings out of 469495 + 72086 string characters out of 5470098 + 672829 words of memory out of 5000000 + 32992 multiletter control sequences out of 15000+600000 638248 words of font info for 53 fonts, out of 8000000 for 9000 16 hyphenation exceptions out of 8191 - 62i,7n,99p,213b,1276s stack positions out of 10000i,1000n,20000p,200000b,200000s + 62i,7n,99p,223b,1274s stack positions out of 10000i,1000n,20000p,200000b,200000s -Output written on /home/raw/uni/fsi/trabalho/relatorio.pdf (2 pages, 44498 byte -s). +Output written on /home/raw/uni/fsi/trabalho/relatorio/relatorio.pdf (2 pages, +48079 bytes). PDF statistics: 27 PDF objects out of 1000 (max. 8388607) 16 compressed objects within 1 object stream diff --git a/relatorio/relatorio.pdf b/relatorio/relatorio.pdf index e2d51ef..3ff1509 100644 Binary files a/relatorio/relatorio.pdf and b/relatorio/relatorio.pdf differ diff --git a/relatorio/relatorio.tex b/relatorio/relatorio.tex index c462e7e..c61a9d5 100644 --- a/relatorio/relatorio.tex +++ b/relatorio/relatorio.tex @@ -3,6 +3,8 @@ \usepackage[lining]{ebgaramond} \usepackage{listings} +% \usepa + \lstdefinestyle{mystyle}{ basicstyle=\ttfamily\footnotesize, breakatwhitespace=false, @@ -19,6 +21,9 @@ \lstset{style=mystyle} +\setlength{\parindent}{0em} +\setlength{\parskip}{2ex} + \title{Practical Assignment \#2} \author{ João Neto -- 2023234004\\[1em] @@ -33,10 +38,17 @@ \section{Introduction} Introdução!!!! +Criar chaves com 2048 bits. + \begin{lstlisting}[language=bash] -hmmmm \end{lstlisting} +Criar chave secreta. +\begin{lstlisting}[language=bash] +openssl --genkey secret ta.key +\end{lstlisting} + + \section{Conclusion} Conclusão!!! diff --git a/ta.key b/ta.key new file mode 100644 index 0000000..8926b59 --- /dev/null +++ b/ta.key @@ -0,0 +1,21 @@ +# +# 2048 bit OpenVPN static key +# +-----BEGIN OpenVPN Static key V1----- +b822bc6ea100a4b00d1092624e8068c9 +b7ac87935d53933cfa1b3e904816d0c5 +e9a5dac77782f9255b37819b10220bb4 +6f0d73452eeeaee3905740a1e581f8dd +12242dd375e7439e209ba8be9e355dec +ab576ea78be9edb0eee9bfcb5ee6b28b +f195a01438283037b0aaba18cfcee32e +df4db43684a5554a81cdfe396aadf7b2 +0c6cd0ad17c8882cb013d4b65cc33906 +eb5ead6dc9eb7a5f80974a88bf9c0cb0 +8992e5b03a4b8263fb46b6abba61de91 +b1b6dd378157c0e428c189df7550b45b +5a6851c1f14f00d647d4b90030a09e78 +30f2130dccce52e98bbc9ea18dd8f80a +ffabe35260a0d5de7aba6cd240b2a380 +ca8c69fdbb58460db89300115a67f6fd +-----END OpenVPN Static key V1----- diff --git a/user.key b/user.key new file mode 100644 index 0000000..e7cc8e4 --- /dev/null +++ b/user.key @@ -0,0 +1,28 @@ +-----BEGIN PRIVATE KEY----- +MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCafnw4yGYr8ddY +O9TRoKZMZ7qcGKCTGpN8g1iHv2+ptiYg9ZYAB9oxr+noOO1Yhyen/ld7tcoCD/zE +zALTYIXpOj+WcAwKRS2PCKHNjhwNSqK5detZ5BRR2E34b5Ry5b2okXeliDfZjoXH +7p8+hCepReJ3zXl946/CTi1N8UfnXahBbwLaGaQeBUCktvT5/xoFPhDKDT5uRjyx +BgCoXJvbBKnKK5UkIWGBKq13qMnKYo/O+DS+4o8CvY5OMMCnmAhNNXvWyBr9T4E3 +yQCteijfRpxHmIfKU98f4lO90HcZVbtEHLPwDBrKESV6w7unlwKektu0KLEZIt61 +DqHuJuapAgMBAAECggEADyfLTdKy2yq9QkWUSgAlcCdY0glEb0nTIArOe3qXHKHm +uaL91QDwMaGdI4+6EM4pYLx9noAl0e/5juCogk3ctRVmuX5CYBuLLZXeMYj4TYF9 +1w2vScErESBT/cQMXv0Ujt2+S/nB6NCnZQaOjpZuQZe+cJwyh9v3GOuMXDIIKLUL +QGRSL0DpyC+2a38lgxnCaPl6eMPV8VquyVBGcg0+piJl05oOaEOSzM4isH7Fewsy +9n/BNNIwBtj1/bbXKYjpX1bc985rO0m8vgPKihlJv4ePCb87ygV3tQCkNMkPLjdZ +Q6y9fHiHd0ZrNfw7qGyTQy/kbUQUXTjnF7eeg8CjgQKBgQDSkMVM9fZkKyBBuTSt +InW51cbxmENv+YCGN7B2RvaWmbMG6zFnGebXkUXCcpOZz1+itwOzHCV5syNij1uO +4VwStBClVM3BEAYnRXOyg2LUch2xXS3HKq+AXGT/QU7fgBwq2spfxl0tpYuaNgU6 +EM+KZS11ZzyNiNTv/Y8WkNuxEQKBgQC71HAbxD0C+yhERv3hVibr4g9+WoLwdFll +4Rn65cVmeryiCOl0jDNUNJXldbbGtHbC0TT8apPL4dwoiHIrB6eimq/+vRg25bjY +TdE918BKUcqkYhBhZ6VBy8xIrsmqvaOBPT28UomeMDGBYI90JMQ3huD5oGdlLKAb +h2hcNAjcGQKBgQCXqbayrCaAF5/wNtn+KmfpJlVZBnbsXCV6hvoO9yX9a09LmHPI +8xsWAYjheW1ex8L2jCOaCpfjhGfkQaWM0D1lK1UiAGcCu+vytU+UMJYqttc0PQ0P ++2rVZbdJM10AFmIza8uAGHxcuHRI6sfw/tK9uAp6GZW/y+KzyUoa0tOqQQKBgFJ3 +dTlbsYXri8Refv0+fBw4xqCtUKwOCWonqOZ1l3PlE4j47LcVDzw7UkzKoBMiDLqA +bAkfKgDsC2NodOfblohX7kmj8Eu6FKwzjljerzhyLMx7mcGKZg47UlffFf/2/yCx +KLfUbUOc2T96i8FsmxHeEEzJVlwfebRcgT9qQTGRAoGARjxT7byFNH8drC9NOZ1Z +PENQE/o+4B6J0YwavZqm0Hp+LHQWUyq0W1d6t9oRqsXBK2UV2UEh1HwQwAa481tD +Sdzi63YTC7116uLsCzIUMPcNMHEMCMYMcK+52mNdod4Oe4bogUL9Aw9lTqCkswvc +4i4XwIiPLAl+IS+TlpEcHOs= +-----END PRIVATE KEY----- diff --git a/vpn.conf b/vpn.conf index 0d5e6c3..86b4afc 100644 --- a/vpn.conf +++ b/vpn.conf @@ -8,8 +8,7 @@ key vpn.key # ya dh dh2048.pem server 10.60.0.0 255.255.255.0 -;verb4 -;plugin something -;tls-auth adjjkjdhsadhkjh - +verb 4 +plugin /usr/lib/openvpn/plugins/openvpn-plugin-auth-pam.so openvpn +tls-auth ta-key 0 key-direction 0 diff --git a/vpn.csr b/vpn.csr index 5904d72..0de2e50 100644 --- a/vpn.csr +++ b/vpn.csr @@ -1,17 +1,16 @@ -----BEGIN CERTIFICATE REQUEST----- -MIICoTCCAYkCAQAwXDELMAkGA1UEBhMCUFQxEDAOBgNVBAgMB0NvaW1icmExEDAO -BgNVBAcMB0NvaW1icmExCzAJBgNVBAoMAlVDMQ4wDAYDVQQLDAVGQ1RVQzEMMAoG -A1UEAwwDVlBOMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuO077R1T -T0l5yDyEdQBKRWu50exIMEQKANHh7AHfuLCoqfGsvulphnNVuQPXoH+pnos4NkAn -C3ME5u0kt2UwmGLRj9tzrUK/AGQ6WXokXMco0FBIxDzYSVkq+0V52x24JNiEBrTY -ZwYcrC7bqbmIDiAR5siI82KSgO7Mv6EU15rzcMpO73C5uiG3sJzWqd9rMB65s7Ei -cw6w1ZETE9g0AwW2CyeR/uYA35ieRwIznDMBO+Rm8BngymtVE+PWhad9NAL58K9n -nKqjGuOEWd7HNdP/IoDcbDWV0LLhL7+GMVwzmVYpDD8QJ7ebfcKu1j8CwoeBtDVF -GrE0hlEWyWE70wIDAQABoAAwDQYJKoZIhvcNAQELBQADggEBAKayFAqGxJg1GCjf -VC3K+f2fYAWYWObnRk57k9+dDoAicjq+RiUHmsxmbskZPclRxPpAeev+acXlCBnL -Bj/pKegDHwM0k+3+9vvFI5Co3UE5hsMACSql20lWPFrJlZzEIjW8HpDqotp4fE4O -49X1Fekz/FOby44UeqtUDUpLkYc5QMuXVV+DblwkYNrjyLlqy8BFQnRuWLTJjFAG -FFgJfVEfAfd+3V3G7700rAtszGpwvr5E3BhRyvbliQJr7wGUkqV2HQ3IpoG3HovO -QFAxAfMbnMJe81k8GhSHYBeD9gFFbyq9e18RO/mwJF357G/asEe/nyAko1FCbDrl -/bjTKBA= +MIIClTCCAX0CAQAwUDELMAkGA1UEBhMCUFQxEDAOBgNVBAgMB0NvaW1icmExEDAO +BgNVBAcMB0NvaW1icmExCzAJBgNVBAoMAlVDMRAwDgYDVQQDDAdnYXRld2F5MIIB +IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAv8Nkjr7LB/XrDza3hgnnCnqR +SVOknvKxAmQJ2EYbGyAjlPyaFcJadizOjid9TKvQQG9a6bpWD1Ne3Nro1ykHu4Az +Geufb9/U53wbuATRTa6TQVf1gfGMhO/YFC34T+x/jOXL7U/TU8t11dRkjaHWvWKQ +Zzfpri2HHkMZeUYflQ4PYmFMLxvn5eKj/oug+ROVuwefyj9353lrp4o+mcG6GCbg +9Lvc0f48EN7Iu+6+q+KQt65kD8JzkKwTu/kkJiRjEschp6FNZEqiJgBCELH4ZFN6 +cF9g/e0C6fqhikftBi2ZCv252cY95lv30MkOzQyu/z5fQ7jCLUzJmiYnHHivHwID +AQABoAAwDQYJKoZIhvcNAQELBQADggEBAEwxobvYufcrpsPYu5KFtsb5J38drh9c +xm0UwuXHHw/CDGvPTqflQmhxWKGsSFe9OHZb/61ZJEtT6ZpfXA8oO7U7OTIcUbkX +pKkX89+mZxSlTFsefNbhEoySN+x3MdLNqw1iUUtAB3kTjPYM9h663Y+hA/j3zUZS +JS0vox61T5+L/CfqIcOEsfPEaMrvCUEItZM8wXFdAO3yiCoYPpdPFJ6aPk9XV/8Q +/4eLAcnQPrWkbrVrEv6PRkpnau0Yc3bI2u49AIWgfxdheiiBSy4fh6mY/SRlh7aM +Jwj6uXJubKRmNU9WqHh3ovZ63B0V9YOzd+f0m5K44K2g6mLBLI+r07s= -----END CERTIFICATE REQUEST----- diff --git a/vpn.key b/vpn.key index be81c08..c67ad22 100644 --- a/vpn.key +++ b/vpn.key @@ -1,28 +1,28 @@ -----BEGIN PRIVATE KEY----- -MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQC47TvtHVNPSXnI -PIR1AEpFa7nR7EgwRAoA0eHsAd+4sKip8ay+6WmGc1W5A9egf6meizg2QCcLcwTm -7SS3ZTCYYtGP23OtQr8AZDpZeiRcxyjQUEjEPNhJWSr7RXnbHbgk2IQGtNhnBhys -LtupuYgOIBHmyIjzYpKA7sy/oRTXmvNwyk7vcLm6IbewnNap32swHrmzsSJzDrDV -kRMT2DQDBbYLJ5H+5gDfmJ5HAjOcMwE75GbwGeDKa1UT49aFp300Avnwr2ecqqMa -44RZ3sc10/8igNxsNZXQsuEvv4YxXDOZVikMPxAnt5t9wq7WPwLCh4G0NUUasTSG -URbJYTvTAgMBAAECggEAA8zlozZWkiBlmc6wlCz42cYLJWbF3Flm8Tm0UGLWI61c -Z1MET09sWpXVMv5YDerXDrSNZ66tfr09jQyzk/dG5o16rApWWBRb6NimdanzxFpY -GuEuKvuVyvrDo4f70fEhlH7vRlSsxn/oJ/ELP54vTxxWnIJjhMjyT3xY2y6mxyrV -mKfp2YVPyKCj5R01Fw4BfL9Xu4qn0ROCZuVYYgffLGFKEPJluTdxfQ4XFTgOdC4/ -aemWIZQ9wGRoL0A3kCeNhwsPcWbtHSLE1/oR6E0TAMlMvNWRkrvxx9CmGRCtePiH -a2Yi9qjX42G/77ueL6N52fkK/GUB1F827rZ6xgiiVQKBgQDcZr23Gvyhxm2vLKhB -/tsOBiM1lbSMp38RxsLKOoSzFbQMZKjDWNL1GIF2n5r/VQh79N0fV4QUEq4bhtTo -WF/cD11xsjSkq66CAvmzgu4En0Ef0FXfZib19HRSAWKznhXgnnYiyirsBibOj3b+ -kNgVCftedLvuEZEQ1ZPiZJTQxwKBgQDWy6u/oawz983pMx9G+O4FpkLEOerXCsMz -BJb7o3RpRzM6qi1T1pti3UA/k4uiWZjHNAVWxUbzV08f9LMoxrZIO6EJT/3IqdsH -QoG1RYEo4BNLo3ZGns+ksIpaRIyOV3bIVWdaR0+P9MbRBVDuWGkVrZtBrAIm18LJ -Qosvi1aIlQKBgF9rJ5VfXKJZOuFNDydLQ+EFbTbksj72wP+cMnbE8PBrZAC9j4bL -LMGps1r87GjAkqS/tP+9rtPV5oTKUeCpag7mpAj2Iu5r2Wg2C47ZD1z26YXxd0v5 -eMKg678ZFHc46LXPRMv5BK4cV66z08uQP8yT/ry9AyOlfU1xec3Yx8i/AoGBAMhM -oVpQLz8+5DuEurP6SivmgPhvcfkaRjD7JLiAEnxiMvmP3DkENV6aJ+Ghe2Ln3jpU -3m2uBZ3CWzzXeYKa2zy8rkz61RQcoO1CLaaWq/0sB5JPWmo8ijFvl3TZ26CZG2Fx -krFzMlRx1DzykifRNh1LCS7Scic6qJ/5d8XcT9OJAoGAQFuWM2jhSAfrQw64nWuO -PkDYOKKtZij6RPdbxWH/A8uew8UCxJel8Q703GPRmRX0+1rhQ5jFfwWTgmQt5Kyb -zm8uk7Xa6CIZyC83F8j93AvBWHzJh7eI9xWuiTc9KGva4gKn443HM/Uz4NCGogWr -a428qWxj5+yxEpeZhqvhPic= +MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQC/w2SOvssH9esP +NreGCecKepFJU6Se8rECZAnYRhsbICOU/JoVwlp2LM6OJ31Mq9BAb1rpulYPU17c +2ujXKQe7gDMZ659v39TnfBu4BNFNrpNBV/WB8YyE79gULfhP7H+M5cvtT9NTy3XV +1GSNoda9YpBnN+muLYceQxl5Rh+VDg9iYUwvG+fl4qP+i6D5E5W7B5/KP3fneWun +ij6ZwboYJuD0u9zR/jwQ3si77r6r4pC3rmQPwnOQrBO7+SQmJGMSxyGnoU1kSqIm +AEIQsfhkU3pwX2D97QLp+qGKR+0GLZkK/bnZxj3mW/fQyQ7NDK7/Pl9DuMItTMma +JicceK8fAgMBAAECggEAAKC/xCV+l4CuciobgO/bw55rhviKi6hML6+eLKKGIjLO +JJ9Zh2q2Gx71PWS5tbX2UTYY74Nk44xbvVz/vpY4aHYrmxEfc4e7GoryGEpdWRcr +2kUfqhSqNIeiIIBjol3Dr48GrOwO/n4/3SEvg+gDKP//bKcaBJaXk6zKksNJ0fyG +JWsgoLwyqJIThTAjLQgXAuXf4TTmnpd3zhTABFySKxX9G1NJl0X07n7q/aV93XCn +8yXL6mw41dTY54GUhNprG4/OHEDZnUxAkWNX8tUHqEtwqsgv4aTqfD0/NCEId8ts ++2ORnGKqzbk11FKEdxMsvLQIDqEF/VsZDHFK3L8kgQKBgQDrb7RU+KxtOncsNgN4 +d32XLubzK22ONsFfloF+8rkpBX4pRIwP+TGpsQk9Cq+rSF+e2I4THY7NoR2ICRhR +OK/eYnDf6f1pW6gU/dhhrirHvyXSeg/gOdXDcJjTFtLS/lRfU/i/VSOBUucv/UIt +fPQKG1jacHJrZPuSXCadGyH73wKBgQDQgytcDwnZqdPb6WM4hzvCM0WubqY4jRDN +22gQozr9zJEbR7GwgJXuKpIpcEDZ+LhmS77mCag/CuU6ZbcKt18Xrg4eXFhq5T6+ +u/HLLhC+7k6gTRcfJenDOcLb1yQ5uqyjY9ADZnslFi7ujqPDf8Puwg4gEiop9By4 +3TQkFV+0wQKBgCXdNTdlNvXqLThjB3PcY8potKPvHBN/IuJopjLwfm7mfz/L0mrP +PPl5i27RxSba4OX/FfplCo5vlvxF2i9V2pL9agHY8/R51TJrEN3E0QSG7WJIVz1M +j+B6v1lTllxwoskiDCNZYfhuiNfi9z2xlt35P/UBmKVE/GCxiVRDBNgpAoGBAIwt +ksnaBlpBtP9kAONw7vjY9WCWXMMp+wEaHvUId9FGZMs9QLUTTTiHgCnBoKepcXa8 +N4N5PJXdYkwHM65Npu1Jg45fsMV0huE9gwmAV5u0pEFack/rciNgQqL/GQiCeiuC +H8cZb3J4XmbcmDYHQBbUeSCQda4swd56P+J+SBBBAoGBAJgtIFcbUhKH4LCNOz6J +MsmoNutatjs5AjvIu1x+5QXUYMSpjmmIrFdY5TJEkVGq2nbq4TQDIer9i5WcVOoB +PvZFwzKm6csKUJeEfy2k5EC2wCzps6h6v9uF2lIdEwJ8ucVU1xhMTtfbO2xpVQEw +WZ8aZ9fOTcKE6T9NdpnpvBtG -----END PRIVATE KEY-----