Здраствуйте.
Встала задача применения сабжа.
Начал собирать «стенд».
Настроил openssl согласно README.
Проверяем:
> openssl ciphers | tr ":" "\n" | grep GOST
GOST2001-GOST89-GOST89
GOST94-GOST89-GOST89
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers "GOST2001-GOST89-GOST89:GOST94-GOST89-GOST89";
ssl_prefer_server_ciphers on;
Тестирую:
> openssl s_client -connect 192.168.50.178:443 -state
SSL-Session:
Protocol : TLSv1.2
Cipher : GOST2001-GOST89-GOST89
Пробую curl:
> curl -v -k https://192.168.50.178
* Rebuilt URL to: https://192.168.50.178/
* Trying 192.168.50.178...
* Connected to 192.168.50.178 (192.168.50.178) port 443 (#0)
* successfully set certificate verify locations:
* CAfile: none
CApath: /etc/ssl/certs/
* TLSv1.2, TLS handshake, Client hello (1):
* TLSv1.2, TLS alert, Server hello (2):
* error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure
* Closing connection 0
curl: (35) error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure
2015/04/03 19:38:44 [info] 26751#0: *642 SSL_do_handshake() failed (SSL: error:1408A0C1:SSL routines:SSL3_GET_CLIENT_HELLO:no shared cipher) while SSL handshaking, client: 192.168.50.178, server: 192.168.50.178:443
При этом, если указывать сами чиперы то будет так:
> curl -v --ciphers "GOST2001-GOST89-GOST89:GOST94-GOST89-GOST89" -k https://192.168.50.178
* Rebuilt URL to: https://192.168.50.178/
* Trying 192.168.50.178...
* Connected to 192.168.50.178 (192.168.50.178) port 443 (#0)
* failed setting cipher list: GOST2001-GOST89-GOST89:GOST94-GOST89-GOST89
* Closing connection 0
curl: (59) failed setting cipher list: GOST2001-GOST89-GOST89:GOST94-GOST89-GOST89
Попробовал перекомпилять curl, не помогает.
Кто-нибудь сталкивался? Куда копать?