備忘録

備忘録

UbuntuでSOCKSサーバ(Dante)を構築する方法

Ⅰ. はじめに

タイトルの通り「UbuntuでSOCKSサーバ(Dante)を構築する方法」です。

CentOSでSOCKSサーバ(Dante)を構築する方法はこちら
https://kagasu.hatenablog.com/entry/2017/08/26/173052

Ⅱ. 手順(認証なし)

1. Danteをインストールする
apt install dante-server
2. 設定ファイルを編集する

※以下の内容は認証なしで全てのアクセスを許可します。
セキュリティに問題がある為適切な設定を行って下さい。
/etc/danted.conf

$ vim /etc/danted.conf
internal: 0.0.0.0 port = 1080
external: eth0
socksmethod: none
clientmethod: none

client pass {
  from: 0.0.0.0/0 to: 0.0.0.0/0
  # log: connect disconnect
}

socks pass {
  from: 0.0.0.0/0 to: 0.0.0.0/0
}
3. Danteを起動する
systemctl enable danted
systemctl restart danted
# systemctl status danted
4. 接続テストする
$ curl --socks5-hostname 127.0.0.1:1080 http://api.ipify.org/
x.x.x.x

Ⅲ. 手順(ユーザー認証あり)

1. Danteをインストールする
apt install dante-server
2. 設定ファイルを編集する

※以下設定の場合/etc/shadowにパスワードが設定されているユーザーがログイン可能になります(rootを含む)
/etc/danted.conf

logoutput: stderr
internal: 0.0.0.0 port = 1080
external: eth0
clientmethod: none
socksmethod: username
user.privileged: root
user.unprivileged: nobody
user.libwrap: nobody
compatibility: sameport

client pass {
  from: 0.0.0.0/0 to: 0.0.0.0/0
  # log: connect disconnect
}

socks pass {
  from: 0.0.0.0/0 to: 0.0.0.0/0
}
3. Dantedを起動する
systemctl enable danted
systemctl restart danted
4. ユーザーを追加する
adduser --shell /sbin/nologin --gecos "" user01
echo 'user01:pass1234' | chpasswd
5. 接続テストする
$ curl http://api.ipify.org -x socks5://user01:pass1234@127.0.0.1:1080
x.x.x.x