web-dev-qa-db-ja.com

認証付きダンテッドソックスプロキシ

私はLinux上でdantedを使用してSOCKSプロキシをセットアップしようとしています。認証なしでプロキシが完全に機能していますが、method: usernamemethod: pamの両方で認証を追加しようとすると、設定したユーザー名またはパスワードでログインできません。

method: pamを使用する場合、これは私が使用する構成です

logoutput: stderr /var/log/danted.log

/#Interfaces for listening on
internal: eth0 port=1080 #AP external interface
internal: eth0 port=53
external: eth0 #interface on AODV network

/#Auth Method
method: pam

user.privileged: root
user.notprivileged: nobody
user.libwrap: nobody

client pass {
    from: 0.0.0.0/0 to: 0.0.0.0/0
    log: error
}

/#Allow any connection
pass {
    from: 0.0.0.0/0 to: 0.0.0.0/0
    command: connect udpassociate
    protocol: udp tcp
    log: error
    method: pam
    pamservicename: sockd
 }

しかし、danted -dを実行すると、ユーザー名とパスワードの誤りに関する認証エラーが発生します。私のPam構成は

auth required pam_pwdfile.so pwdfile /etc/danted/sockd.passwd
account required pam_permit.so

ユーザー名とパスワードはhtpasswd -dで作成され、crypt()を強制します。

method: usernameでも試してみましたが、system password userauthentication failedでも同じ問題が発生します。私はこれらをプロキシプロキシチェッカーでテストしていますが、常に不正なユーザー名またはパスワードを返します。

現在、認証なしで実行しているため、この問題を修正することは非常に重要です。

パスワード「password」を使用して「test」という新しいユーザーを作成しましたが、これはエラーです。

Jul 12 14:45:07 ip-172-31-26-147 danted: pam_pwdfile(sockd:auth): setting fail delay 
Jul 12 14:45:07 ip-172-31-26-147 danted: pam_pwdfile(sockd:auth): username is estt 
Jul 12 14:45:07 ip-172-31-26-147 danted: pam_pwdfile(sockd:auth): user not found in password database
3
Ed R

Apt経由でインストールしたdanteのバージョンを削除し、dante Webサイトからダウンロードしてソースからコンパイルしたバージョンに置き換えることで、最終的に問題を修正しました。 ubuntuのリポジトリのバージョンにバグがあるはずです。

3
Ed R