不久前,我可以使用:
cat somefile.txt | openssl s_client -connect server:port -quiet -comp
但是,即使使用以下命令,该命令也不起作用-ign_eof
:
$ cat somefile.bmp | openssl s_client -connect server:port -quiet -ign_eof
write:errno=32
因为某些文件由纯二进制数据组成(这.bmp
是服务器唯一能识别的格式,若以somefile.bmp
未压缩的形式发送则会花费太多时间)。
这不是出于安全目的,因为我发送的数据是公开的,但是我无法控制禁止非安全连接的服务器。
答案1
如果您的二进制文件中有任何换行符(例如),您应该向命令\n
添加标志以使其识别换行符。-crlf
openssl s_client
答案2
-comp
已在 openssl 1.1.0 中引入
https://www.openssl.org/docs/manmaster/ssl/SSL_CONF_cmd.html
在 cygwin 上,openssl 是 1.0.2g-3,因此您无法使用它。您可以尝试其他图像格式吗?