Ledger Nano X - The secure hardware wallet
SHARE
TWEET

ss+v2ray behind nginx over cf

freedom_threand Mar 25th, 2019 (edited) 1,484 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. Пердолинг shadowsocks с v2ray плагином через cloudflare с nginx перед ss для Ubuntu.
  2.  
  3. 0. Подготовка:
  4. Получаем фриномовский домен и привязываем его к клауде, см 1 и 2 части инструкции ss over cf в шапке (https://telegra.ph/shadowsocks-over-cloudflare-05-17)
  5. Скачиваем и устанавливаем Shadowsocks клиент и плагин к нему - виндусятники берут по ссылкам https://github.com/shadowsocks/shadowsocks-windows/releases/latest и https://github.com/shadowsocks/v2ray-plugin/releases/latest (разархивируем в папку с клиентом и переименовываем в v2ray.exe), жмупинусники роются в своих репах/компилят/ищут бинарники в сети
  6. Скачиваем и устанавливаем PuTTY - https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
  7. Скачиваем и устанавливаем WinSCP - https://winscp.net/eng/download.php (линуксобоги могут использовать любой другой FTP клиент)
  8. Hostname - адрес сервера, port - 22, пароль настраивается у провайдера vps
  9. Скачиваем и распаковываем странички нашего сайта https://anonfile.com/T8W6u1T4m8 (если очень хочется, можно использовать свои хтмлки)
  10.  
  11. 1. Устанавливаем nginx на своей впсочке:
  12. Коннектимся через PuTTY к серверу, в консоли вводим:
  13. sudo apt update
  14. sudo apt install nginx
  15. sudo systemctl status nginx - если инактив, значит 80 порт чем то занят.
  16.  
  17. 2. Перекидываем стрейзенд странички из шапки на сервак:
  18. Коннектимся через WinSCP к своей впсочке
  19. Идем по пути /usr/share/nginx/html, правой кнопкой - New - Directory, даем папке имя своего фриномовского домена
  20. Перетаскиваем 3 файла из ss-web архива, который мы скачали выше, в созданную папку.
  21.  
  22. 3. Ставим носки последней версии:
  23. sudo wget --no-check-certificate -O shadowsocks-libev-debian.sh https://raw.githubusercontent.com/teddysun/shadowsocks_install/master/shadowsocks-libev-debian.sh
  24. sudo chmod +x shadowsocks-libev-debian.sh
  25. sudo ./shadowsocks-libev-debian.sh 2>&1 | tee shadowsocks-libev-debian.log
  26. Установщик попросит назначить параметры для носков, т.к. у нас соединение будет через v2ray, что вводить сюда неважно ( если нужен еще и чистый сс сервер, можно настроить его сейчас, но нужно учитывать, что 80 и 443 порты заняты энжинксом)
  27. Выключаем сервис чистых носков (или нет, если он нужен)
  28. sudo systemctl disable shadowsocks
  29.  
  30. 3.5 v2ray плагин к носкам:
  31. sudo wget https://github.com/shadowsocks/v2ray-plugin/releases/download/v1.3.0/v2ray-plugin-linux-amd64-v1.3.0.tar.gz - скачиваем плагин (тут вместо "v1.3.0/v2ray-plugin-linux-amd64-v1.3.0.tar.gz" может быть что-то другое, последняя версия лежит тут https://github.com/shadowsocks/v2ray-plugin/releases/latest)
  32. sudo tar -xf v2ray-plugin-linux-amd64-v1.3.0.tar.gz - разархивируем сам плагин, тут опять же может быть другой файл в зависимости от скачиваемой версии.
  33. sudo mv v2ray-plugin_linux_amd64 /etc/shadowsocks-libev/v2ray-plugin - переносим и переименовывем плагин.
  34. sudo setcap 'cap_net_bind_service=+eip' /etc/shadowsocks-libev/v2ray-plugin - даем возможность v2ray-плагину биндиться к привилегированным портам.
  35. sudo nano /etc/shadowsocks-libev/v2ray.json - вставляем следующее (вместо <пароль> нужно придумать пароль):
  36.  
  37. {
  38. "server":"localhost",
  39. "server_port":8008,
  40. "password":"<пароль>",
  41. "timeout":600,
  42. "method":"xchacha20-ietf-poly1305",
  43. "fast_open":true,
  44. "plugin":"/etc/shadowsocks-libev/v2ray-plugin",
  45. "plugin_opts":"server;loglevel=none;path=/v2ray",
  46. "nameserver":"1.1.1.1",
  47. "reuse_port": true,
  48. "mode": "tcp_only"
  49. }
  50. Сохраняем ctrl + o, закрываем ctrl + x
  51. sudo nano /etc/systemd/system/ss-v2ray.service - вставляем следующее:
  52.  
  53. [Unit]
  54. Description=Shadowsocks-libev with V2RAY-websocket obfuscation
  55. Documentation=man:shadowsocks-libev(8)
  56. After=network.target
  57.  
  58. [Service]
  59. Type=simple
  60. User=nobody
  61. Group=nogroup
  62. LimitNOFILE=51200
  63. ExecStart=/usr/local/bin/ss-server -c /etc/shadowsocks-libev/v2ray.json
  64.  
  65. [Install]
  66. WantedBy=multi-user.target
  67.  
  68. Сохраняем ctrl + o, закрываем ctrl + x
  69. sudo systemctl enable ss-v2ray.service  - включаем сервис
  70.  
  71. 4. Настраиваем клиент:
  72. Конфиг клиента для пользователей виндовс (<домен> заменить на свой домен, <пароль> на придуманный ранее пароль):
  73. server addr - <домен>
  74. server port - 80
  75. password - <пароль>
  76. encryption - xchacha20-ietf-poly1305
  77. plugin program - v2ray
  78. plugin options - host=<домен>;path=/v2ray
  79. proxy port - локальный порт куда будем направлять браузер (по дефолту 1080, можно не трогать)
  80.  
  81. Конфиг клиента для пользователей линукс (<домен> и <пароль> заменить на свои домен и пароль):
  82.  
  83. sudo nano /etc/shadowsocks-libev/v2ray.json - вставляем (путь к плагину может быть другим)
  84.  
  85. {
  86. "server":"<домен>",
  87. "server_port":80,
  88. "local_port":1080,
  89. "password":"<пароль>",
  90. "timeout":600,
  91. "method":"xchacha20-ietf-poly1305",
  92. "plugin":"/etc/shadowsocks-libev/v2ray-plugin",
  93. "plugin_opts":"host=<домен>;path=/v2ray",
  94. "reuse_port": true,
  95. "mode": "tcp_only"
  96. }
  97.  
  98. sudo nano /etc/systemd/system/ss-v2ray.service - вставляем (путь к ss-local может быть другим):
  99.  
  100. {
  101. [Unit]
  102. Description=Daemon to start Shadowsocks Client with v2ray plugin
  103. Wants=network-online.target
  104. After=network.target
  105.  
  106. [Service]
  107. Type=simple
  108. ExecStart=/usr/bin/ss-local -c /etc/shadowsocks-libev/v2ray.json
  109.  
  110. [Install]
  111. WantedBy=multi-user.target
  112.  
  113. }
  114.  
  115. sudo systemctl enable ss-v2ray.service - включаем сервис клиента
  116.  
  117. 5. Настраиваем nginx (<домен> заменить на свой домен):
  118. sudo rm /etc/nginx/sites-available/default - удаляем дефолтный конфиг
  119. sudo nano /etc/nginx/sites-available/<домен> - вставляем следующее:
  120. server {
  121.         listen 80;
  122.         #listen [::]:80;
  123.         server_name <домен>;
  124.         root /usr/share/nginx/html/<домен>;
  125.         index index.html;
  126.         location /v2ray {
  127.             proxy_redirect off;
  128.             proxy_http_version 1.1;
  129.             proxy_pass http://localhost:8008;
  130.             proxy_set_header Host $http_host;
  131.             proxy_set_header Upgrade $http_upgrade;
  132.             proxy_set_header Connection "upgrade";
  133.         }
  134.  
  135. }
  136. Сохраняем ctrl + o, закрываем ctrl + x
  137. sudo ln -s /etc/nginx/sites-available/<домен> /etc/nginx/sites-enabled/ - линкуем конфиг
  138.  
  139. sudo systemctl restart nginx - рестартим энжинкс
  140. sudo systemctl restart ss-v2ray - рестартим v2ray (пердольки на линуксе тыкают в своей консоли тоже самое чтобы запустить клиент)
  141. Переходим на свой сайт, убеждаемся, что все работает.
  142.  
  143. Ставим прокси расширение для браузера (например Proxy SwitchyOmega, протокол - socks5, сервер - 127.0.0.1, порт - 1080)
  144. Все! Теперь провайдер видит как от вас к серверам клауды идет обычный http, при этом если фрином решит просканировать наш домен, он найдет нашу страничку и пройдет мимо (фрином может отобрать домен, если ничего не найдет).
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Top