VPSでShadowsocksをセットアップして検閲を回避する方法
安全で高速なインターネット検閲回避のために、Hiddence VPSでShadowsocksをインストールして構成するためのステップバイステップガイド。

Shadowsocksは、インターネット検閲を回避するための最も効果的なツールの1つで、特に厳格な制限がある国で人気があります。従来のVPNとは異なり、Shadowsocksは暗号化を備えたSOCKS5プロキシを使用し、そのトラフィックを通常のHTTPSと事実上区別できなくします。このガイドでは、10分でHiddence VPSに独自のShadowsocksサーバーをデプロイする方法を説明します。
なぜShadowsocksなのか?
- ステルス性:トラフィックは通常のHTTPS接続としてマスクされ、DPIシステムによる検出が困難
- 速度:VPNと比較してオーバーヘッドが少なく、ほぼネイティブの速度
- 柔軟性:アプリケーションレベルで動作し、特定のプログラム用に構成可能
- クロスプラットフォーム:Windows、macOS、Linux、Android、iOS用のクライアント
- オープンソース:完全なコードの透明性とセキュリティ
要件
- Hiddence VPS(最小1 GB RAM、任意のLinux OS)
- Ubuntu 22.04または24.04(推奨)
- サーバーへのrootアクセス
- 接続用のSSHクライアント
- 5〜10分の時間
Shadowsocks-Rustのインストール(推奨)
shadowsocks-rust実装を使用します - Rustで書かれた最速で最も現代的なバージョンです。
ステップ1:システムの準備
# SSH経由でサーバーに接続する
ssh root@your-server-ip
# システムを更新する
sudo apt update && sudo apt upgrade -y
# 必要なパッケージをインストールする
sudo apt install curl wget -yステップ2:Shadowsocks-Rustのインストール
# 最新バージョンをダウンロードする
wget $(curl -s https://api.github.com/repos/shadowsocks/shadowsocks-rust/releases/latest | grep 'browser_download_url.*x86_64-unknown-linux-gnu.tar.xz' | cut -d '"' -f 4)
# アーカイブを展開する
tar -xvf shadowsocks-*.tar.xz
# バイナリをシステムディレクトリに移動する
sudo mv ssserver /usr/local/bin/
sudo mv sslocal /usr/local/bin/
sudo chmod +x /usr/local/bin/ss*
# インストールを確認する
ssserver --versionステップ3:設定
# 設定用のディレクトリを作成する
sudo mkdir -p /etc/shadowsocks
# 設定ファイルを作成する
sudo nano /etc/shadowsocks/config.json
# 以下の設定を挿入する:
{
"server": "0.0.0.0",
"server_port": 8388,
"password": "YOUR_STRONG_PASSWORD_HERE",
"timeout": 300,
"method": "chacha20-ietf-poly1305",
"fast_open": true,
"mode": "tcp_and_udp",
"nameserver": "8.8.8.8"
}
# YOUR_STRONG_PASSWORD_HEREを強力なパスワードに置き換える
# 生成可能:openssl rand -base64 32
# 推奨される暗号化方法:
# chacha20-ietf-poly1305(推奨)- 速度とセキュリティのバランス
# aes-256-gcm - AES標準
# aes-128-gcm - より高速、モバイル用
# 2022-blake3-aes-256-gcm - 最新のSS2022ステップ4:自動起動
システム起動時に自動的にShadowsocksを起動するためのsystemdサービスを作成します。
# サービスファイルを作成する
sudo nano /etc/systemd/system/shadowsocks.service
# 挿入:
[Unit]
Description=Shadowsocks-Rust Server
After=network.target
[Service]
Type=simple
User=root
ExecStart=/usr/local/bin/ssserver -c /etc/shadowsocks/config.json
Restart=on-failure
RestartSec=5s
[Install]
WantedBy=multi-user.target
# 保存してサービスをアクティブ化する
sudo systemctl daemon-reload
sudo systemctl enable shadowsocks
sudo systemctl start shadowsocks
# ステータスを確認する
sudo systemctl status shadowsocksステップ5:ファイアウォール
# UFWを使用する場合
sudo ufw allow 8388/tcp
sudo ufw allow 8388/udp
sudo ufw reload
# firewalldを使用する場合
sudo firewall-cmd --permanent --add-port=8388/tcp
sudo firewall-cmd --permanent --add-port=8388/udp
sudo firewall-cmd --reloadステップ6:最適化
最大接続速度のためにシステムを構成します。
# ネットワークスタックの最適化
sudo nano /etc/sysctl.conf
# ファイルの末尾に追加:
# BBR輻輳制御
net.core.default_qdisc=fq
net.ipv4.tcp_congestion_control=bbr
# バッファを増やす
net.core.rmem_max=134217728
net.core.wmem_max=134217728
net.ipv4.tcp_rmem=4096 87380 67108864
net.ipv4.tcp_wmem=4096 65536 67108864
net.ipv4.tcp_mtu_probing=1
# Fast Open
net.ipv4.tcp_fastopen=3
# 変更を適用する
sudo sysctl -pステップ7:クライアント
サーバーをセットアップした後、クライアントデバイスを接続する必要があります。各プラットフォームの詳細な手順は以下を参照してください。
Windowsクライアント
1. ダウンロードとインストール
shadowsocks/shadowsocks-windows GitHubページに移動し、最新バージョン(Shadowsocks-x.x.x.zipファイル)をダウンロードします。アーカイブを任意のフォルダに展開し、Shadowsocks.exeを実行します。
2. サーバーの追加
システムトレイ(時計の近く)のShadowsocksアイコンを右クリックし、「サーバー」>「サーバーを編集」を選択します。詳細を入力します:
3. プロキシを有効にする
トレイアイコンを右クリック > システムプロキシ > グローバル(すべてのトラフィックをプロキシする場合)またはPAC(ブロックされたサイト用の自動モード)。「システムプロキシを有効にする」を有効にします。完了!すべてのトラフィックがShadowsocks経由になります。
Androidクライアント
1. アプリのインストール
Google PlayストアからMax Lvによる「Shadowsocks」をインストールするか、GitHub(shadowsocks/shadowsocks-android)からAPKをダウンロードします。インストール後、アプリを開きます。
2. プロファイルの追加
右下隅の「+」(プラス)ボタンをタップします。「手動設定」を選択します。フィールドに入力します:
3. 接続
画面下部の紙飛行機アイコンをタップして接続します。初回接続時、AndroidはVPN接続を作成する許可を要求します - 「OK」をタップします。接続後、ステータスバーにキーアイコンが表示されます。
iOSクライアント
1. アプリのインストール
App Storeを開き、「Shadowrocket」(有料、約3ドル)または「Potatso Lite」(無料)を検索します。Shadowrocketはより機能的で安定しています。アプリをインストールします。
2. サーバー設定
Shadowrocketの場合:アプリを開き、右上隅の「+」をタップします。タイプ:Shadowsocksを選択します。入力します:
3. 接続をアクティブ化する
サーバー名の横のスイッチをONに切り替えます。iOSはVPN設定を追加する許可を要求します - アクションを確認します(Face ID / Touch IDが必要な場合があります)。ステータス「接続済み」は接続成功を意味します。
macOSクライアント
1. ShadowsocksX-NGをインストールする
GitHub(shadowsocks/ShadowsocksX-NG/releases)からShadowsocksX-NGをダウンロードします。DMGファイルを開き、アプリケーションをアプリケーションフォルダにドラッグします。ShadowsocksX-NGを起動します。
2. サーバーを追加する
メニューバー(右上)の飛行機アイコンをクリックします。「サーバー」>「サーバー設定」を選択します。「+」をクリックして新しいサーバーを追加します:
3. プロキシを有効にする
メニューバーアイコンをクリック > Shadowsocksをオンにする。プロキシモードを選択する:「自動プロキシモード」(推奨、スマートルーティングにPACを使用)または「グローバルモード」(すべてのトラフィックをプロキシ経由)。完了!
ボーナス:マルチユーザーセットアップ
友人や家族とサーバーを共有したい場合は、マルチポート設定を使用します。
# 設定を編集する
sudo nano /etc/shadowsocks/config.json
# 異なるユーザー用のポート形式を使用する:
{
"servers": [
{
"server": "0.0.0.0",
"server_port": 8388,
"password": "user1_password",
"method": "chacha20-ietf-poly1305"
},
{
"server": "0.0.0.0",
"server_port": 8389,
"password": "user2_password",
"method": "chacha20-ietf-poly1305"
},
{
"server": "0.0.0.0",
"server_port": 8390,
"password": "user3_password",
"method": "chacha20-ietf-poly1305"
}
],
"timeout": 300,
"mode": "tcp_and_udp"
}
# ファイアウォールで新しいポートを開くことを忘れないでください
sudo ufw allow 8389:8390/tcp
sudo ufw allow 8389:8390/udp
# サービスを再起動する
sudo systemctl restart shadowsocks高度:難読化プラグインの使用
DPIに対する追加の保護のために、Shadowsocksトラフィックをマスクするプラグインを使用します。
v2ray-plugin(推奨)
# v2ray-pluginをインストールする
wget https://github.com/shadowsocks/v2ray-plugin/releases/download/v1.3.2/v2ray-plugin-linux-amd64-v1.3.2.tar.gz
tar -xvf v2ray-plugin-*.tar.gz
sudo mv v2ray-plugin_linux_amd64 /usr/local/bin/v2ray-plugin
sudo chmod +x /usr/local/bin/v2ray-plugin
# Shadowsocks設定を更新する
{
"server": "0.0.0.0",
"server_port": 443,
"password": "your_password",
"method": "chacha20-ietf-poly1305",
"plugin": "/usr/local/bin/v2ray-plugin",
"plugin_opts": "server;tls;host=your-domain.com;cert=/path/to/cert.pem;key=/path/to/key.pem"
}
# クライアントで追加:
# プラグイン:v2ray-plugin
# プラグインオプション:tls;host=your-domain.comトラブルシューティング
一般的な問題と解決策
- 接続できない:ファイアウォールを確認し、ポートが開いていることを確認する
- 接続が遅い:異なる暗号化方法を試す(aes-128-gcmはより高速)
- 定期的な切断:TCP Fast OpenとBBRを有効にする
- サーバーがブロックされる:難読化プラグインとポート443を使用する
- ログを確認する:sudo journalctl -u shadowsocks -f
セキュリティのヒント
- 強力なパスワードを使用する(最小20文字、ランダム)
- Shadowsocksを最新バージョンに定期的に更新する
- サーバーの詳細を公開で共有しない - 信頼できる人とのみ共有する
- デフォルトポート(8388)を非標準に変更する
- 現代的な暗号化方法を使用する(chacha20-ietf-poly1305以降)
- 積極的な検閲がある地域では難読化プラグインの使用を検討する
- トラフィック使用量を監視する:sudo apt install vnstat && vnstat -l
- 自動システム更新を設定する