sslocal失败解决方法

好久不锻炼,都不知道动作了。

ss_config

1
2
3
4
5
6
7
8
9
10
{
"server":"ip",
"server_port":1081,
"local_address": "127.0.0.1",
"local_port":1080,
"password":"pass",
"timeout":300,
"method":"aes-256-cfb"
"fast_open": true
}

使用方法sslocal -c ss_config
使用会报错“AttributeError: /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1: undefined symbol: EVP_CIPHER_CTX_cleanup”,查询后是由于openssl版本升级,修改了以前的函数名称,而ss还使用了旧函数名。解决方法是修改旧函数名为新名称

1
2
vi /usr/local/lib/python2.7/dist-packages/shadowsocks/crypto/openssl.py
#修改52行和111行的函数,libcrypto.EVP_CIPHER_CTX_cleanup,修改为libcrypto.EVP_CIPHER_CTX_reset

参考链接
https://github.com/shadowsocks/shadowsocks/wiki/Configuration-via-Config-File
http://www.cnblogs.com/lzhd24/p/6686803.html