Description
shadowsocks-libev
、simple-obfs
and libsodium
rpm package for CentOS 7 、CentOS 8 and Fedora
Installation Instructions
HOW
Enough is more :
shadowsocks-libev
andsimple-obfs
SPEC with--disable-documentation
option for NOT dependingasciidoc
,xmlto
pakcages.- backport new version
libsodium-1.0.18
for CentOS 7
install from Fedora Copr yum repo :
CentOS 7 / CentOS 8
# CentOS7
URL=https://copr.fedorainfracloud.org/coprs/outman/shadowsocks-libev/repo/epel-7/outman-shadowsocks-libev-epel-7.repo
# CentOS8
URL=https://copr.fedorainfracloud.org/coprs/outman/shadowsocks-libev/repo/epel-8/outman-shadowsocks-libev-epel-8.repo
curl -sSL "$URL" -o /etc/yum.repos.d/outman-shadowsocks-libev.repo
yum install -y epel-release && yum install -y libsodium shadowsocks-libev simple-obfs
Fedora
dnf copr enable -y outman/shadowsocks-libev
dnf install -y shadowsocks-libev simple-obfs
troubleshoot
When shadowsocks-libev
depending packages updated, library with newer name would cause shadowsocks-libev
not finding right lib :
# systemctl status shadowsocks-libev
● shadowsocks-libev.service - Shadowsocks-libev Default Server Service
Loaded: loaded (/usr/lib/systemd/system/shadowsocks-libev.service; enabled; vendor preset: disabled)
Active: failed (Result: exit-code) since Wed 2018-08-22 18:55:10 CST; 1s ago
Docs: man:shadowsocks-libev(8)
Process: 4971 ExecStart=/usr/bin/ss-server -c $CONFFILE $DAEMON_ARGS (code=exited, status=127)
Main PID: 4971 (code=exited, status=127)
systemd[1]: Started Shadowsocks-libev Default Server Service.
systemd[1]: Starting Shadowsocks-libev Default Server Service...
systemd[1]: shadowsocks-libev.service: main process exited, code=exited, status=127/n/a
systemd[1]: Unit shadowsocks-libev.service entered failed state.
systemd[1]: shadowsocks-libev.service failed.
# ss-server -c /etc/shadowsocks-libev/config.json
ss-server: error while loading shared libraries: libmbedcrypto.so.1:
cannot open shared object file: No such file or directory
# ldd /bin/ss-server
linux-vdso.so.1 => (0x00007ffd84bed000)
libm.so.6 => /lib64/libm.so.6 (0x00007f4ff50b0000)
libev.so.4 => /lib64/libev.so.4 (0x00007f4ff4ea2000)
libcares.so.2 => /lib64/libcares.so.2 (0x00007f4ff4c91000)
libsodium.so.23 => /lib64/libsodium.so.23 (0x00007f4ff4a3e000)
libmbedcrypto.so.1 => not found <-- missing lib
libpcre.so.1 => /lib64/libpcre.so.1 (0x00007f4ff47dc000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f4ff45c0000)
libc.so.6 => /lib64/libc.so.6 (0x00007f4ff41f3000)
/lib64/ld-linux-x86-64.so.2 (0x00007f4ff53b2000)
# yum whatprovides libmbedcrypto*
mbedtls-2.7.5-1.el7.x86_64 : Light-weight cryptographic and SSL/TLS library
Repo : epel
Matched from:
Provides : libmbedcrypto.so.2()(64bit)
# rpm -ql mbedtls | grep lib
/usr/lib64/libmbedcrypto.so.2
/usr/lib64/libmbedcrypto.so.2.7.5
/usr/lib64/libmbedtls.so.10
/usr/lib64/libmbedtls.so.2.7.5
/usr/lib64/libmbedx509.so.0
/usr/lib64/libmbedx509.so.2.7.5
# ll /lib64/libmbedcrypto.so.*
lrwxrwxrwx 1 root root 22 | 2018-08-22 18:53 | /lib64/libmbedcrypto.so.2 -> libmbedcrypto.so.2.7.5*
-rwxr-xr-x 1 root root 350K | 2018-07-27 20:38 | /lib64/libmbedcrypto.so.2.7.5*
# cd /lib64/ && ln -s libmbedcrypto.so.2 libmbedcrypto.so.1
‘libmbedcrypto.so.1’ -> ‘libmbedcrypto.so.2’
# ll /lib64/libmbedcrypto.so.*
lrwxrwxrwx 1 root root 18 | 2018-08-22 18:56 | /lib64/libmbedcrypto.so.1 -> libmbedcrypto.so.2*
lrwxrwxrwx 1 root root 22 | 2018-08-22 18:53 | /lib64/libmbedcrypto.so.2 -> libmbedcrypto.so.2.7.5*
-rwxr-xr-x 1 root root 350K | 2018-07-27 20:38 | /lib64/libmbedcrypto.so.2.7.5*
# ldd /bin/ss-server
linux-vdso.so.1 => (0x00007fffd1707000)
libm.so.6 => /lib64/libm.so.6 (0x00007ff78a53e000)
libev.so.4 => /lib64/libev.so.4 (0x00007ff78a330000)
libcares.so.2 => /lib64/libcares.so.2 (0x00007ff78a11f000)
libsodium.so.23 => /lib64/libsodium.so.23 (0x00007ff789ecc000)
libmbedcrypto.so.1 => /lib64/libmbedcrypto.so.1 (0x00007ff789c73000)
libpcre.so.1 => /lib64/libpcre.so.1 (0x00007ff789a11000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007ff7897f5000)
libc.so.6 => /lib64/libc.so.6 (0x00007ff789428000)
/lib64/ld-linux-x86-64.so.2 (0x00007ff78a840000)
# systemctl restart shadowsocks-libev
# systemctl status shadowsocks-libev
● shadowsocks-libev.service - Shadowsocks-libev Default Server Service
Loaded: loaded (/usr/lib/systemd/system/shadowsocks-libev.service; enabled; vendor preset: disabled)
Active: active (running) since Wed 2018-08-22 18:56:20 CST; 7s ago
Docs: man:shadowsocks-libev(8)
Main PID: 5027 (ss-server)
CGroup: /system.slice/shadowsocks-libev.service
└─5027 /usr/bin/ss-server -c /etc/shadowsocks-libev/config.json -u
WHAT
libsodium
https://github.com/jedisct1/libsodium
https://src.fedoraproject.org/rpms/libsodium/blob/master/f/libsodium.spec
shadowsocks-libev
https://github.com/shadowsocks/shadowsocks-libev
simple-obfs
https://github.com/shadowsocks/simple-obfs
Active Releases
The following unofficial repositories are provided as-is by owner of this project. Contact the owner directly for bugs or issues (IE: not bugzilla).
Release | Architectures | Repo Download |
---|---|---|
EPEL 7 | x86_64 [modified] (12)* | EPEL 7 (85 downloads) |
EPEL 8 | x86_64 (30)* | EPEL 8 (127 downloads) |
* Total number of downloaded packages.
Quick Enable
#> dnf copr enable emtohere/shadowsocks-libev
More info about enabling Copr repositories