squid.conf
| squid.conf | 説明 | 
|---|---|
| http_port | ポート番号 | 
| visible_hostname | ホスト名 | 
| hierarchy_stoplist | キャッシュを利用しない文字列 | 
| maximum_object_size | キャッシュ可能な最大サイズ | 
| minimum_object_size | キャッシュ可能な最小サイズ | 
| maximum_object_size_in_memory | メモリ上の最大ファイルサイズ | 
| ipcache_size | キャッシュするIPアドレス数 | 
| cache_dir | キャッシュを格納するディレクトリと容量などのパラメータ | 
| cache_mem | メモリ上のキャッシュサイズ | 
| cache_access_log | クライアントのアクセスログ | 
| cache_log | キャッシュのログ | 
| ftp_user | anonymousでFTPアクセスする際のパスワード | 
| ftp_passive | FTPのパッシブモード | 
| reference_age | キャッシュの保存期間 | 
| request_header_max_size | HTTPリクエストヘッダの最大サイズ | 
| request_body_max_size | HTTPリクエストボディの最大サイズ | 
| reply_body_max_size | レスポンスの最大サイズ | 
| acl | アクセスコントロールリストの設定 | 
| http_access | アクセスコントロールリストの制御 | 
アクセス制御
acl
ホストやプロトコルの集合にアクセスコントロールリストを行う。
書式 : acl ACL名 ACLタイプ 文字列もしくはファイル名
| ACLタイプ | 説明 | 
|---|---|
| src | クライアント側のIP | 
| dst | 代理アクセス先サーバーのIP | 
| srcdomain | クライアントのドメイン名 | 
| dstdomain | 代理アクセス先サーバーのドメイン名 | 
| port | 代理アクセスサーバーのポート番号 | 
| myport | クライアントのポート番号 | 
| arp | MACアドレス | 
| proto | プロトコル | 
| method | HTTPのメソッド | 
| time | 有効な時間 | 
| proxy_auth | ユーザ認証 | 
http_access
アクセスコントロールリストに対しての制御を、http_access で行う。
書式 : http_access allow|deny ACL名
アクセス制御の設定例
次の例では、192.168.0.0/24からのアクセスを禁止しています。
squid.conf
acl test src 192.168.0.0/255.255.255.0
http_access deny test
やってみる系(Amazon Linux2)
AWSでは、まあ、NAT ゲートウェイを使えばいいでしょうが。
準備
クライアントからプロキシを経由して、yumなどを実行できるようにする。
- 
サブネット 
- 
piblic-subnet(プロキシサーバー) 
- 
private-subnet(クライアント) 
- 
セキュリティグループ 
- 
public-sg:22,3128 
- 
private-sg:22(public-sgからの接続を許可する。) 
プロキシサーバー設定
1
Squidの設定ファイルに直接対象のIPアドレスまたはサブネットのCIDRを記述する。
squid.conf
acl private-subnet src <プライベートサブネットのCIDR>
http_access allow private-subnet
2
/etc/squid/acl/whitelist.txtにプロキシを経由したいサーバーのプライベートIPアドレスまたは、サブネットのCIDRを記述する。
squid.conf
acl Whitelist dstdomain "/etc/squid/acl/Whitelist.txt"
http_access allow Whitelist
http_access deny all
クライアント側設定
/etc/yum.conf
proxy=http://<proxyのプライベートIP>:3128
/etc/wgetrc.
http_proxy=http://<proxyのプライベートIP>:3128
https_proxy=http://<proxyのプライベートIP>:3128
~/.curlrc
proxy=http://<proxyのプライベートIP>:3128
