EverKB

Knowledge Base Ever

Installige teenus Shadowsocks, kasutades skripti TeddySun, CentOS7-le ja optimeerige TcpBBR

2020-01-13 14:39:19

Silt: Shadowsocks,ShadowsocksR,Shadowsocks-Python,Shadowsocks-Libev,CentOS,CentOS7,Tcp BBR,

Mõne stsenaariumi korral peate kasutama teenust Shadowsocks. Shadowsocksi installimiseks CentOS 7-le saate vaadata ametlikku dokumentatsiooni või kasutada TeddySuni väga mugavat skripti.

Vajaliku tarkvara ettevalmistamine, installimine

sudo -i
yum install wget vim -y

Kolmerealine käsk teenuse Shadowsocks installimiseks skripti abil

wget --no-check-certificate -O shadowsocks-all.sh https://raw.githubusercontent.com/teddysun/shadowsocks_install/master/shadowsocks-all.sh

chmod +x shadowsocks-all.sh

./shadowsocks-all.sh 2>&1 | tee shadowsocks-all.log
Skript küsib, millist serverit kasutada, sealhulgas Python, R, Go ja libev.
Python: küps
R: lisatud segadus
Mine: võib olla parem samaaegsus
libev: põhineb asünkroonsetel raamatukogudel, teoreetiliselt parim samaaegsus

Kui eriti nõudlikke nõudeid pole, võite kasutada vaikekomplekti Shadowsocks-Python, seejärel küsib skript parooli ja pordi ning krüptimismeetodit, mida saab kasutada: xchacha20-ietf-poly1305, chacha20-ietf-poly1305, aes-256-gcm jne.
Which Shadowsocks server you'd select:
1.Shadowsocks-Python
2.ShadowsocksR
3.Shadowsocks-Go
4.Shadowsocks-libev
Please enter a number (default 1):
Pärast installimise lõppu annab skript tagasisidet installi konfiguratsiooniteabe kohta. See konfiguratsioon on /etc/shadowsocks-python/config.json. Vajadusel saate VIM-i abil seda ka pärast installimist muuta.
Congratulations, Shadowsocks-Python server install completed!
Your Server IP        :  x.x.x.x
Your Server Port      :  12345
Your Password         :  PASSWORD
Your Encryption Method:  aes-256-gcm

Täpsem konfiguratsiooniosa

BBR Lühend on Bottleneck Bandwidth and Round-trip Time, siin pakub TeddySun ka installimiseks skripti.
wget --no-check-certificate https://github.com/teddysun/across/raw/master/bbr.sh

chmod +x bbr.sh

./bbr.sh
Pärast täitmise lõppu saate käsku sysctl kasutada konfigureeritud väärtuste vaatamiseks ja kinnitamiseks järgmiselt
[root@instance-1 ~]# sysctl net.ipv4.tcp_available_congestion_control
net.ipv4.tcp_available_congestion_control = reno cubic bbr
[root@instance-1 ~]# sysctl net.ipv4.tcp_congestion_control
net.ipv4.tcp_congestion_control = bbr
[root@instance-1 ~]# sysctl net.core.default_qdisc
net.core.default_qdisc = fq
[root@instance-1 ~]# lsmod | grep bbr
tcp_bbr                20480  12
Kui tagastusväärtus erineb ülaltoodust, sisestage järgmine kood:
echo "net.core.default_qdisc = fq" >> /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control = bbr" >> /etc/sysctl.conf
Lõpuks alustage teenust. Võite kirjutada ka skripti.
/etc/init.d/shadowsocks-python restart
Mitte-CentOS kasutab kontrollskriptide loomiseks Linuxi tavalisi meetodeid
sudo vim /etc/init.d/shadowsocks
#!/bin/sh
### BEGIN INIT INFO
# Provides: shadowsocks
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: start shadowsocks
# Description: start shadowsocks
### END INIT INFO
start(){
   ssserver -c /etc/ss-conf.json -d start
}
stop(){
   ssserver -c /etc/ss-conf.json -d stop
}
case “$1” in
start)
   start
   ;;
stop)
   stop
   ;;
reload)
   stop
   start
   ;;
*)
   echo “Usage: $0 {start|reload|stop}”
   exit 1
   ;;
esac
sudo chmod +x /etc/init.d/shadowsocks
Lisage alglaadimisse
sudo vim /etc/init/shadowsocks.conf
start on (runlevel [2345])stop on (runlevel [016])pre-start script
/etc/init.d/shadowsocks start
end script
post-stop script
/etc/init.d/shadowsocks stop
end script
sudo update-rc.d shadowsocks defaults

Silt

CentOS7 CentOS PHP Linux Python3 Python MySQL MariaDB YUM JavaScript MySQL8 caching_sha2_password HTML mysql_native_password PHP7 CSS Redis TestCase Compiling PHP frequency conflict set_error_handler apr Elasticsearch7.3 PHPUnit ss5.conf Vincent Garreau daemon HTTP particles.js Slim Failed to build these modules: _uuid MongoDB Sudo width DATE_ADD ip command pg_bha.conf SQL Server Tcp BBR Compiling Apache Frameworks MySQL-python scrollbar Apache2.4 Elasticsearch libpython3.7m.so.1.0 PHPStorm ss5-3.8.9 VIM CURLOPT_POSTFIELDS NodeJs show Bluetooth Failed to build these modules: _ctypes Minimal ISO substr Wi-Fi date sub INTERVAL PECL SQL Date Funcitons Tag Cloud CodeIgniter font-size root apache httpd dual network interfaces Laravel ss5 vertical-align CURLFille horiz-align node.js ShadowsocksR BarManager exec mb_substr PyCharm SUBDATE WebStorm date add IntelliJIDEA PEAR SOCKS5 Proxy Server Tag Chrome find remi Apache du jQuery PHP5.5 src V2Ray cURL hide nginx Shadowsocks-Python availability eth0 MariaDB10.4 PostgreSQL sub folder Web Server date Install MongoDB pdo_sqlsrv SOCKS5 Symfony File Upload mssql-tools register_shutdown_function Zend Framework ADDDATE DevExpress JetBrain php-fpm sqlsrv unixODBC-devel height network interface Shadowsocks-Libev Aura error_get_last Port 80 string Web Development data INDENTIFIED BY password policy requirements SOCKS Fedora Media Writer msodbcsql Redis5 SVN absolute Deepin jemalloc SQLAlchemy toggle convert FuelPHP mysqlclient Shadowsocks at-symbol Error Control Operator margin PHPUnit Framework ss5.passwd vps daemon process IIS password SOCKET center Fatal Errors MongoDB4 sudoers WiFi .htaccess DATE_SUB Phalcon SQL Server 2017