Debian 11 Bullseye
Sponsored Link

Squid : Basic 認証の設定2021/09/15

 
Basic 認証の設定をして、Squid の接続に認証が必要なように制限します。
[1] ユーザー登録の際に必要となる htpasswd コマンドが含まれるパッケージをインストールしておきます。
root@prox:~#
apt -y install apache2-utils
[2] Squid への Basic 認証の設定です。
root@prox:~#
vi /etc/squid/squid.conf
acl CONNECT method CONNECT
# 1209行目 : Basic 認証の設定を追記

auth_param basic program /usr/lib/squid/basic_ncsa_auth /etc/squid/.htpasswd
auth_param basic children 5
auth_param basic realm Squid Basic Authentication
# 再認証を必要とする間隔

auth_param basic credentialsttl 5 hours
acl password proxy_auth REQUIRED
http_access allow password
root@prox:~#
systemctl restart squid
# ユーザーを登録 : [-c] でファイル新規作成

root@prox:~#
htpasswd -c /etc/squid/.htpasswd debian

New password:    
# パスワード設定

Re-type new password:
Adding password for user debian
プロキシクライアントの設定 : Debian
[3] Debian クライアントの場合の Basic 認証の設定です。
root@client:~#
vi /etc/profile.d/proxy.sh
# 新規作成 (プロキシサーバーを環境変数に設定)

# ユーザー名:パスワード@プロキシサーバー

MY_PROXY_URL="debian:password@prox.srv.world:3128"

HTTP_PROXY=$MY_PROXY_URL
HTTPS_PROXY=$MY_PROXY_URL
FTP_PROXY=$MY_PROXY_URL
http_proxy=$MY_PROXY_URL
https_proxy=$MY_PROXY_URL
ftp_proxy=$MY_PROXY_URL

export HTTP_PROXY HTTPS_PROXY FTP_PROXY http_proxy https_proxy ftp_proxy

root@client:~#
source /etc/profile.d/proxy.sh
# 以上でシステム全体に適用されるが各コマンドごとの個別設定も可能

# apt の個別設定

root@client:~#
vi /etc/apt/apt.conf
# 新規作成

Acquire::http::proxy "http://debian:password@prox.srv.world:3128/";
Acquire::https::proxy "https://debian:password@prox.srv.world:3128/";
Acquire::ftp::proxy "ftp://debian:password@prox.srv.world:3128/";
# curl の個別設定

[root@client ~]#
vi ~/.curlrc
# 新規作成

proxy=prox.srv.world:3128
proxy-user=debian:password
# wget の個別設定

root@client:~#
vi /etc/wgetrc
# 最終行に追記

http_proxy = prox.srv.world:3128
https_proxy = prox.srv.world:3128
ftp_proxy = prox.srv.world:3128
proxy_user = debian
proxy_passwd = password
プロキシクライアントの設定 : Windows
[4] Windows クライアントの場合、通常のプロキシの設定をした状態で Web アクセスすると、設定した Basic 認証にしたがって、以下のように認証を求められるので、認証すると通常通り Web アクセスできます。
関連コンテンツ