Hi,
I need to test SSL FP on vSRX 18.4, 19.4 and 20.2. I did everything as I'm used to.
generate a key
build a root CA
Import the CA and the key to vSRX
configure an SSL FP profile
active the profile on a policy
The problem is that the FP doesn't seem to work at all.
root@ssl-lab:~$ openssl s_client -showcerts -servername www.google.com -connect www.google.com:443 2>/dev/null</dev/null | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' | openssl x509 -inform pem -noout -text | grep -i "issuer: "
Issuer: C = US, O = Google Trust Services, CN = GTS CA 1O1
root@vSRX> show security pki local-certificate
LSYS: root-logical-system
Certificate identifier: ssl-lab
Issued to: vSRX, Issued by: C = N/A, ST = N/A, L = N/A, O = SRX SSL FP Lab, OU = IT, CN = vSRX, emailAddress = test@test.com
Validity:
Not before: 09- 7-2020 15:04 UTC
Not after: 09- 5-2030 15:04 UTC
Public key algorithm: rsaEncryption(4096 bits)
root@vSRX> show configuration services ssl
proxy {
global-config {
disable-cert-cache;
}
profile SSL-Lab-Proxy {
preferred-ciphers strong;
trusted-ca all;
root-ca ssl-lab;
actions {
log {
all;
}
renegotiation allow;
allow-strong-certificate;
}
}
}
root@vSRX> show configuration security policies
from-zone trust to-zone untrust {
policy allow-any {
match {
source-address any;
destination-address any;
application any;
}
then {
permit {
application-services {
ssl-proxy {
profile-name SSL-Lab-Proxy;
}
}
}
}
}
}
root@vSRX> show services ssl proxy statistics
PIC:fwdd0 fpc[0] pic[0] ------
sessions matched 32
sessions bypassed:non-ssl 0
sessions bypassed:mem overflow 0
sessions bypassed:low memory 0
sessions created 0
sessions ignored 0
sessions active 0
sessions dropped 0
sessions whitelisted 0
whitelisted url category match 0
default profile hit 0
session dropped no default profile 0
policy hit no profile configured 0
Weirdly, I see matched but no created, ignored, active, etc. sessions.
I set traceoptions on the SSL service, and it seems as the SRX thinks the communication is UDP and not TCP.
[edit]
root@vSRX# show services ssl traceoptions
file SSL-FP.log size 10m files 5 world-readable;
flag all;
[edit]
root@vSRX# run show log SSL-FP.log
Sep 7 21:37:22 vSRX clear-log[28481]: logfile cleared
Sep 7 20:37:31 20:37:30.864921:CID-0:RT:junos-ssl-proxy jssl_proxy_policy_handle_session_interest[1842]: [1207] protocol(17) != IPPROTO_TCP(6)
Sep 7 20:37:36 20:37:36.448154:CID-0:RT:junos-ssl-proxy jssl_proxy_policy_handle_session_interest[1842]: [1209] protocol(17) != IPPROTO_TCP(6)
Sep 7 20:37:36 20:37:36.448522:CID-0:RT:junos-ssl-proxy jssl_proxy_policy_handle_session_interest[1842]: [1210] protocol(17) != IPPROTO_TCP(6)
I'm testing either using openssl s_client
or curl
, and I don't see anything suspicious in flow sessions.
[edit]
root@vSRX# run show security flow session destination-port 443
Session ID: 1284, Policy name: allow-any/4, Timeout: 1798, Valid
In: 192.168.53.10/51518 --> 74.125.193.94/443;tcp, Conn Tag: 0x0, If: ge-0/0/1.0, Pkts: 5, Bytes: 605,
Out: 74.125.193.94/443 --> 172.16.1.146/16678;tcp, Conn Tag: 0x0, If: ge-0/0/0.0, Pkts: 5, Bytes: 2849,
Total sessions: 1
So far, I tested this on 18.4R3 and 19.4R2.6.
Any idea?