Использование одной связки ключей для всех OpenVPN клиентов.
В случае, когда OpenVPN настроен на внешнюю авторизацию, например AD или облачную, то не имеет особого смысла генерировать ключи для каждого пользователя, а использовать только один, ограничивая доступ к OpenVPN на стороне LDAP сервера через участие пользователя в группе.
Для удобства можно все пять клиентских файлов объединить в один. Данные настройки клиента будут отправными. Итак, пользовательские файлы это User.crt
, User.key
, ca.crt
, ta.key
и файл конфига User.ovpn
, пусть он будет лежать в домашнем каталоге.
Объявить переменные:
client_conf=$(cat ~/User.ovpn) client_cert=$(cat ~/easy-rsa-master/easyrsa3/pki/issued/User.crt) client_key=$(cat ~/easy-rsa-master/easyrsa3/pki/private/User.key) ca=$(cat ~/easy-rsa-master/easyrsa3/pki/ca.crt) ta=$(cat /etc/openvpn/keys/ta.key)
Запихать их в один файл:
cat <<EOF > clients.ovpn $client_conf EOF cat <<EOF >> clients.ovpn <ca> $ca </ca> EOF cat <<EOF >> clients.ovpn <tls-auth> $ta </tls-auth> EOF cat <<EOF >> clients.ovpn <cert> $client_cert </cert> EOF cat <<EOF >> clients.ovpn <key> $client_key </key> EOF
И из части настроек клиента удалить строки, касающиеся файлов User.crt
, User.key
, ca.crt
, ta.key
, поскольку они уже присутствуют в объединенном конфиге. И заменить строку tls-auth "ta.key" 1
на key-direction 1
В конечном итоге должно получиться так:
client dev tun proto udp remote xxx.xxx.xxx.xxx 1194 cipher AES-256-CBC tls-client #ca "ca.crt" # Удалить эту строку #tls-auth "ta.key" 1 # Удалить эту строку #cert "User.crt" # Удалить эту строку #key "User.key" # Удалить эту строку remote-cert-tls server comp-lzo auth-user-pass key-direction 1 # Вместо строки 'tls-auth "ta.key" 1' <ca> -----BEGIN CERTIFICATE----- MIIDGzCCAgOgAwIBAgIJAMw476lQYVc8MA0GCSqGSIb3DQEBCwUAMA4xDDAKBgNV BAMMA0VFRTAeFw0xODA0MjAwMzI0MjJaFw0yODA0MTcwMzI0MjJaMA4xDDAKBgNV BAMMA0VFRTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL8IveHkzhtY hAhMfsw1DYdvHwQo0QmVu9nPxC4ElT8dDSzaVbBpEG8CinDId3B145g8FIOllp1r f9hZsp2xvJMgjbfInFg0GTAcH23dmAR648Xez8TKYn7WiLfFU04c1hXR1S9PpPQM 1zUYLgTyYgUVgQJYJwdwO5k18xYU/lOMlETRNr1ZCnungAUgUr/0D5L2qsL1MjZ/ ll23jNLE0u28KNAQe7vfYeMcwRq9XsD4XPg59CBJoUSz6WhGaVFL7srIjHpxVgtM f3WKK9SVMtx6RRCAZs08ApuPrT01DCt6loEB3WPKmBWycDvnFAFtbBLDu/2HPTxm Suku14J8DUMCAwEAAaN8MHowHQYDVR0OBBYEFKm8HRBQCzcPOb9Wd9/kXeZZIVMD MD4GA1UdIwQ3MDWAFKm8HRBQCzcPOb9Wd9/kXeZZIVMDoRKkEDAOMQwwCgYDVQQD DANFRUWCCQDMOO+pUGFXPDAMBgNVHRMEBTADAQH/MAsGA1UdDwQEAwIBBjANBgkq hkiG9w0BAQsFAAOCAQEAXTwQAbRAFwu/jHv8RcG/ZKRBa0KZJLoghF3ZtHfZ+zqy 9IiEHcrNDUrJxYDtZtbUspHOTJHsk73O68jiWhnUbs0AeXMfF6dLRWjwhZb7wJxt LpXOJSiNrvH7EpLWiPsWYiJBtSJFlt+fSjFgNZ1keHJIz8ttuGbF+Xqr9VYp2rUF EigKsb/m5N1OTqcJdfJsQcqGQP/oxoaNBCIe2eNmRCflrV/QniUb2WoU5q1nKw6F xEr4Kx8IUH2oQonm+cbzNxCuDjpzSL4AELd9u4UQa5SuBwx5jGaVq9MoGrCk1z3D lnpTpVS0SA+AjYxHLbz4c6P/FLYvqoORWTH/jx4CWw== -----END CERTIFICATE----- </ca> <tls-auth> # # 2048 bit OpenVPN static key # -----BEGIN OpenVPN Static key V1----- 531c5dd5de66c05ff7252f9521030f56 1407c152a6fed983a29af49872e6fbe2 0817381610f435f0016c2ba345530ea6 200bb28d2d216b2159405f059217a74e e2fd5bd9a447aba46548e4b4c6907f6f d94ae4d853ffe9066bc13c3b36c976e9 298e356631005aa78bbddfdaa15f3076 c15965748d74efa039e2a47fe556f702 e7198a4a997ce19ebe2199db58444b29 3699dc6b6d45bab26099b9403cc44801 8e0a03b8d7627a071d8bdfb0acadf651 7322463eaa20b711c94e0e3dd9dfe38e 25c87b1cd3188f2d789e4a7b4fe0a141 706859085faf17a6b1131068cc96a266 5a2f4cfbb23daf1548c639a93b49195d 36651fcbdde523f6b6c73a2c2b1e4cce -----END OpenVPN Static key V1----- </tls-auth> <cert> Certificate: Data: Version: 3 (0x2) Serial Number: 39:ac:06:6c:ae:3a:ed:10:c0:d2:07:49:6f:71:c3:8c Signature Algorithm: sha256WithRSAEncryption Issuer: CN=EEE Validity Not Before: Apr 20 06:57:56 2018 GMT Not After : Apr 17 06:57:56 2028 GMT Subject: CN=User Subject Public Key Info: Public Key Algorithm: rsaEncryption Public-Key: (2048 bit) Modulus: 00:ec:54:aa:fc:d6:de:d4:4b:fa:29:01:f8:2c:ae: 4e:d0:a1:2f:72:b7:b8:ce:bc:83:85:29:5c:ee:22: fc:40:41:b5:4f:83:31:fb:34:a7:ba:ec:04:a9:0e: a8:f9:64:09:29:cc:9d:22:4f:06:83:38:bb:74:dc: dc:0f:72:77:f6:e3:86:7d:e3:c0:17:9e:08:c5:a4: 5d:f8:9e:ba:42:eb:cf:79:d7:80:fd:4b:11:4a:1b: f9:5d:68:b4:3d:3a:1c:f9:e7:7f:74:97:52:78:8b: 7c:2b:35:c7:79:98:02:1e:78:53:49:f8:e8:c0:eb: c6:7b:87:2d:c8:04:80:60:80:3d:63:21:a4:5b:03: e3:1d:63:f2:6f:31:0a:aa:90:41:30:8f:bb:72:7f: 76:e8:df:ac:3a:44:d1:d9:fa:8f:3d:69:a6:0b:c2: af:7d:61:49:ae:b3:5a:7a:28:ba:1c:28:0a:de:a8: 01:33:dd:d1:13:99:ac:8c:58:ad:53:37:a7:3e:64: bb:5b:b7:a9:a9:e4:71:86:2f:bc:cb:59:b2:37:3b: 07:9a:33:76:54:be:b1:77:9e:60:ea:bf:ff:54:c6: 5d:63:61:93:2c:1d:76:5d:fc:d5:72:05:bc:45:89: 3d:2b:9e:db:a8:78:d6:63:16:ab:3f:07:d7:95:de: 6c:d7 Exponent: 65537 (0x10001) X509v3 extensions: X509v3 Basic Constraints: CA:FALSE X509v3 Subject Key Identifier: 92:45:0A:A9:AE:C7:12:C4:B5:44:37:5D:34:C3:5A:95:21:94:31:7F X509v3 Authority Key Identifier: keyid:A9:BC:1D:10:50:0B:37:0F:39:BF:56:77:DF:E4:5D:E6:59:21:53:03 DirName:/CN=EEE serial:CC:38:EF:A9:50:61:57:3C X509v3 Extended Key Usage: TLS Web Client Authentication X509v3 Key Usage: Digital Signature Signature Algorithm: sha256WithRSAEncryption 70:f0:13:41:fe:c7:45:90:46:cf:24:e1:a8:cc:be:42:17:78: 02:e6:fd:a8:81:61:d0:0c:de:20:e4:79:26:4a:fb:5d:52:b6: 2b:92:2d:b4:a9:46:04:c0:f1:70:d7:bc:24:60:0d:4b:b8:a9: 44:d8:23:23:20:e7:af:67:3d:27:e9:93:c5:85:f0:a8:c1:0d: 2e:d9:dc:ad:c9:5a:1b:d0:6c:61:bb:61:65:3e:80:f6:cf:53: 3c:cf:80:fb:1e:01:26:6d:ae:54:9d:3b:19:1f:db:ea:05:8c: ee:ff:61:94:cc:4f:86:3e:d2:f4:a2:d5:ac:04:16:d7:ca:1f: 67:df:20:66:4d:5d:90:28:06:29:89:fa:20:b1:32:bb:a5:38: 35:38:5b:65:21:fb:4d:f6:43:7c:5c:57:f0:13:a0:89:ad:a1: 2a:0e:bd:3d:1a:8c:71:e5:5c:71:6e:54:ad:7d:57:14:05:5f: 89:3b:ed:6e:2c:ea:8e:f1:3c:b4:ee:a0:b2:9b:e1:a3:fb:2c: 60:3a:0d:79:72:5e:83:19:73:69:1e:2a:62:47:60:ed:fd:1b: 57:f7:91:45:86:52:eb:72:4e:05:d0:ae:ee:4a:2b:c4:5a:c0: be:53:4a:f5:6d:31:2c:47:b3:48:4b:75:98:48:1c:53:36:28: 81:63:58:d9 -----BEGIN CERTIFICATE----- MIIDNzCCAh+gAwIBAgIQOawGbK467RDA0gdJb3HDjDANBgkqhkiG9w0BAQsFADAO MQwwCgYDVQQDDANFRUUwHhcNMTgwNDIwMDY1NzU2WhcNMjgwNDE3MDY1NzU2WjAP MQ0wCwYDVQQDDARVc2VyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA 7FSq/Nbe1Ev6KQH4LK5O0KEvcre4zryDhSlc7iL8QEG1T4Mx+zSnuuwEqQ6o+WQJ KcydIk8Ggzi7dNzcD3J39uOGfePAF54IxaRd+J66QuvPedeA/UsRShv5XWi0PToc +ed/dJdSeIt8KzXHeZgCHnhTSfjowOvGe4ctyASAYIA9YyGkWwPjHWPybzEKqpBB MI+7cn926N+sOkTR2fqPPWmmC8KvfWFJrrNaeii6HCgK3qgBM93RE5msjFitUzen PmS7W7epqeRxhi+8y1myNzsHmjN2VL6xd55g6r//VMZdY2GTLB12XfzVcgW8RYk9 K57bqHjWYxarPwfXld5s1wIDAQABo4GPMIGMMAkGA1UdEwQCMAAwHQYDVR0OBBYE FJJFCqmuxxLEtUQ3XTTDWpUhlDF/MD4GA1UdIwQ3MDWAFKm8HRBQCzcPOb9Wd9/k XeZZIVMDoRKkEDAOMQwwCgYDVQQDDANFRUWCCQDMOO+pUGFXPDATBgNVHSUEDDAK BggrBgEFBQcDAjALBgNVHQ8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAHDwE0H+ x0WQRs8k4ajMvkIXeALm/aiBYdAM3iDkeSZK+11StiuSLbSpRgTA8XDXvCRgDUu4 qUTYIyMg569nPSfpk8WF8KjBDS7Z3K3JWhvQbGG7YWU+gPbPUzzPgPseASZtrlSd Oxkf2+oFjO7/YZTMT4Y+0vSi1awEFtfKH2ffIGZNXZAoBimJ+iCxMrulODU4W2Uh +032Q3xcV/AToImtoSoOvT0ajHHlXHFuVK19VxQFX4k77W4s6o7xPLTuoLKb4aP7 LGA6DXlyXoMZc2keKmJHYO39G1f3kUWGUutyTgXQru5KK8RawL5TSvVtMSxHs0hL dZhIHFM2KIFjWNk= -----END CERTIFICATE----- </cert> <key> -----BEGIN PRIVATE KEY----- MIIEwAIBADANBgkqhkiG9w0BAQEFAASCBKowggSmAgEAAoIBAQDsVKr81t7US/op Afgsrk7QoS9yt7jOvIOFKVzuIvxAQbVPgzH7NKe67ASpDqj5ZAkpzJ0iTwaDOLt0 3NwPcnf244Z948AXngjFpF34nrpC689514D9SxFKG/ldaLQ9Ohz55390l1J4i3wr Ncd5mAIeeFNJ+OjA68Z7hy3IBIBggD1jIaRbA+MdY/JvMQqqkEEwj7tyf3bo36w6 RNHZ+o89aaYLwq99YUmus1p6KLocKAreqAEz3dETmayMWK1TN6c+ZLtbt6mp5HGG L7zLWbI3OweaM3ZUvrF3nmDqv/9Uxl1jYZMsHXZd/NVyBbxFiT0rntuoeNZjFqs/ B9eV3mzXAgMBAAECggEBANh0P9uuDY9SO0B97kk2KTfKucOPZDPt02QOW3A9GN7d j+vQlOGo+4sniqkwpTEuH3pqTu1Shft/5amGdAOt6xR0lgUNqS24b/5dqjgBYUXT 50aITDsyGxbOglm8gYCmjk2Ra1plEoMX9lU5P4ct45r2yAozcTLpf/Q5/oN5I/+9 EmmtRLuxSnlLKqIRaaONQij76K/mlAnX7OZGPPKeoi0m93k0HqXita6djIzwGiQS CLvIaJ93LsWXto+jkFcJnQ9pqGZWPNpmL803+8gNPB7/pgNxbnVGV14gyg8aLO1v G8eTacv8/Bl/e09AP21gIbQ77M5ugXAKavnp/g385GkCgYEA9veaCZBTVxvYvKzS bLhJCnXNU2QwOYWxx2pOPDwhufUeD3YxfIsaWOxvIHd9xBDaofoPqkuzQdcQgRjd 8eeYJ7BM1VuHjSW32jO7TPPyM6dh8ME/NThfmz14wxPVhSlOI7oFtUyCTQU+m4Wz OLKDPcDf+1o+Q0P2F270Iy5lKasCgYEA9Pl5oZGe/NXgis8F+PWUY2Cr/do4pzgG +2cSaomcpMQULRU775un2ngadbeAKIkSvzyGESRycF9W6nco1EppnGgr0Pdg0vuN cz1I6v6FkuvnAWqAByo++C7pnO+R/CKs3sCk8sCtlMkjMsa83EBicXEGbZZJfDz1 9VHOd/duVYUCgYEA6mk35w37XLoMrYEoNZNxmKEZ46Y7881HYe0wFxJIPNZA0xIv hHQP7Ql1rQ5d7ETHEGlmhxBVNBArFS4CNALLtBgtxXGcJsf/SvhBNphxcr/UQY1b Lmu0q4fcYOUpjLwY8+Y0VtIo92wb8cgkxZMC6RFyR4Rvhq8yHSnuRppZ4QMCgYEA 1J5mm/2YwRcckT2HkIINLYetH2G0hCYToUXfbQpNI5BvdoWUhK1TrUFKrdr7Z7M4 yzRLpDs+/Bszg8KydDa1nSOoy/C5X8UnCtspG5SW+GK5F7iIsC9RgfStnCEuUmkC Iz+Oqobi4V0FqL9nEb7r8kvH6XtkAmmijC5ZhjQB1kUCgYEAgSicV+DdoixTYJPD mm13kR1wlkyTHkJ+KWKPbmWa8oIBz5lBhgD1Hg5iMd6bSS7MSMK0AecXIuqijJHM 0ANfLG7wuB4/17GyP0DJtdhRju97vckcjh8ktMaCnhdbTQrVITX1XvhLZJv8kWDc KggEPmqVPYDG1tBMB5tycUl86b4= -----END PRIVATE KEY----- </key>
Опечатка?
cat < client.ovpn
А ниже уже clients.ovpn
cat <> clients.ovpn
Опечатка. Поправил. Спасибо!
Уведомление: Работа с Easy RSA для OpenVPN | er0p's blog
Уведомление: Пятитысячное хауту по OpenVPN | IT Блог
Бери мне опен впн коды
Бери сам себе эти ключи
Автор, как тут отписаться от комментариев? Столько лет всякий бред пишут )
Согласен с вами, не понимаю чего они хотят. Отпишу от обеих подписок после этого коммента.
Мне надо ключ опен