Win2008ADからの
許可 、グループ配布、
MACアドレスへのバインド、ファイル拡張子および禁止サイトのフィルターを使用して、
Squidを
CentOS 6.x 64にインストールします。
Win2008AD自体のインストールについては説明しません。 コントローラーが既にインストールおよび構成されていることを意味します。 最初のタスクは、将来特定の権限を持つユーザーの分布のためのグループ構造を作成することです。
私たちは
squidユーザーを作成します。彼は、パスワードとグループ所属のユーザーのリストを受け取る責任があります。 これらの機会に彼の代表団を割り当てます。
ドメインのルートを右クリックし、[
制御の委任]を選択します。 セットアップウィザードが表示されます。
次へをクリックします。
追加をクリックします。 ドメインからの読み取り権限を持つ
squidユーザーを作成しています。
OKをクリックします。 ユーザーが追加されました。
次へをクリックします。
すべてのユーザー に関する情報の読み取りとintOrgPersonのすべての情報の読み取りをオンにします。
次へをクリックします。
完了をクリックします。
ドメインツリーのルートに
プロキシ ユニットを作成します。 ドメインのルートを右クリックして、[
作成]を選択し、[
部門]を選択し
ます 。 名前
プロキシを記述します。
OKをクリックします。 名前
プロキシを持ついわゆる
組織単位がドメインのルートに表示されます。
この部門では、ユーザーを配布して
Squidを介して異なるアクセス権を受け取るためのグループ構造を作成します。
admins-proxyおよび
users-proxyグループを作成します。
プロキシを右クリックして、[
作成 ]を選択し、[
グループ ]を選択し
ます 。
admins-proxyグループの名前を書きます。
OKをクリックします。
users-proxyグループに対して繰り返し
ます 。
最初のグループにはフルアクセスがあり、2番目のグループには制限があります。 既存のユーザーを各グループに追加します。 ユーザー
padminsをadmins -proxy グループに、ユーザー
pusersを以前に作成したとし、
ユーザープロキシグループに追加します。 グループの名前をダブルクリックします。 [
グループのメンバー ]タブを選択します。
追加をクリックします。 適切なユーザーを作成しています。
OKをクリックします。 他のユーザーとグループに対して繰り返します。
Squidパッケージをインストールします。
yum install squidインストールが成功したら、
squidの自動実行を規定します。
上のchkconfig squidLDAPに基づく
squidの 認証を使用し
ます 。 これを行うには、まず
Squidに組み込まれている
Win2008AD LDAPメカニズムとの接続を確認する必要があり
ます 。
ドメインからのログイン
padminsとパスワード
VzRGI5xSユーザーの束を確認します。
私たちは実施します:
echo "padmins VzRGI5xS" | / usr / lib64 / squid / squid_ldap_auth -R -D squid@developer.com -w 3zdjK2H9 -b "dc = developer、dc = com" -f "sAMAccountName =%s" -h 192.168.151.2padmins#/ドメインユーザー/
VzRGI5xS#/ドメイン内のユーザーpadminsのパスワード/
squid@developer.com#/パスワードのユーザーのリストとそれらに関するすべてのデータを表示する権限を持つドメインユーザー/
3zdjK2H9#/委任されたユーザーパスワードsquid /
dc =開発者、dc = com#/ドメインコントローラー/
192.168.151.2#/ドメインIPアドレス/
したがって、これが正しく行われると、
OK応答が返されます。 これは、ユーザー
padminsがドメイン内で見つかり、
VzRGI5xSパスワードに対して検証されることを
意味します。 一致するものがない場合、
エラーERR Successが返されます。
次に、ユーザーが属するドメインからの
padminsログインと
admins -proxyグループ
間の
接続を確認します。
私たちは実施します:
echo "padmins admins-proxy" | / usr / lib64 / squid / squid_ldap_group -R -D squid@developer.com -w 3zdjK2H9 -b "dc = developer、dc = com" -f "(&(objectclass = person)(sAMAccountName =%v)(memberof = cn =%a、ou =プロキシ、dc =開発者、dc = com)) "-h 192.168.151.2したがって、これが正しく行われると、
OK応答が返されます。 これは、ユーザー
padminsがドメインの
admins -proxyグループにあることを意味します。 一致するものがない場合、
エラーERR Successが返されます。
Squidを設定するために撮影されました。
ディレクトリ
/ etc / squid / rulesを作成し
ます 。
mkdir / etc / squid /ルール/ etc / squid / rulesディレクトリで、ルール用のファイルを作成します。
touch block-extension.txtinet-mac.txtをタッチしますurl-block.txtをタッチしますblock-extension.txtファイルの内容(ファイル
拡張子フィルター):
\ .exe $
\ .mp3 $
\ .mpg $
\ .mp4 $
\ .mpeg $
\ .flv $
\ .avi $
\ .wmv $
\ .swf $
\ .mov $
\ .mkv $
\ .wav $
\ .rar $
\ .msi $
\ .zip $
\ .tar $
\ .iso $
\ .nrg $
inet-mac.txtファイルの内容(
MACアドレスフィルタが許可されています):
04:00:27:3a:45:13
10:6e:87:c4:8c
00:1f:d0:b5:c4:65
url-block.txtファイルの内容(URLフィルター):
odnoklassniki \ .ru
vk \ .com
facebook \ .com
/etc/squid/squid.conf構成ファイルを編集用に開き、
次の形式にします。
squid.conf######################################################### #################################
#通常、Squidはポート3128をリッスンします
http_port 3128
visible_hostname router-int.developer.com
#
#推奨される最小構成:
#
ACLマネージャープロトタイプcache_object
acl localhost src 127.0.0.1/32 :: 1
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32 :: 1
#ローカルネットワークからのアクセスを許可するルールの例。
#ブラウジング元の(内部)IPネットワークのリストに適応
#許可する必要があります
acl localnet src 10.0.0.0/8#RFC1918可能な内部ネットワーク
acl localnet src 172.16.0.0/12#RFC1918可能な内部ネットワーク
acl localnet src 192.168.0.0/16#RFC1918可能な内部ネットワーク
acl localnet src fc00 :: / 7#RFC 4193ローカルプライベートネットワーク範囲
acl localnet src fe80 :: / 10#RFC 4291リンクローカル(直接プラグイン)マシン
acl SSL_portsポート443
acl Safe_portsポート80#http
acl Safe_portsポート21#ftp
acl Safe_portsポート443#https
acl Safe_ports port 70#gopher
acl Safe_portsポート210#wais
acl Safe_ports port 1025-65535#未登録ポート
acl Safe_portsポート280#http-mgmt
acl Safe_portsポート488#gss-http
acl Safe_portsポート591#ファイルメーカー
acl Safe_ports port 777#multiling http
acl CONNECTメソッドCONNECT
#
#推奨される最小アクセス許可の構成:
#
#localhostからのcachemgrアクセスのみを許可
http_access allow manager localhost
http_access拒否マネージャー
#特定の安全でないポートへのリクエストを拒否
http_access deny!Safe_ports
#セキュアSSLポート以外への接続を拒否
http_access deny CONNECT!SSL_ports
#無実を保護するために、以下のコメントを外すことを強くお勧めします
#プロキシサーバーで実行されているWebアプリケーションは、
#「localhost」上のサービスにアクセスできるのはローカルユーザー
#http_access de_to_localhost
#
#クライアントからのアクセスを許可するために、ここに独自のルールを挿入します
#
######################################################### #################################
### AD2008R2に接続するためのADコマンド###
######################################################### #################################
auth_param基本プログラム/ usr / lib64 / squid / squid_ldap_auth -R -D squid@developer.com -w 3zdjK2H9 -b "dc = developer、dc = com" -f "sAMAccountName =%s" -h 192.168.151.2
auth_param基本子5
auth_param基本レルムWindows資格情報を挿入してナビゲートしてください
auth_param基本資格情報ttl 1時間
######################################################### #################################
######################################################### #################################
### AD2008R2グループに接続するためのADコマンド###
######################################################### #################################
external_acl_type ldap_group%LOGIN / usr / lib64 / squid / squid_ldap_group -R -D squid@developer.com -w 3zdjK2H9 -b "dc = developer、dc = com" -f "(&(objectclass = person)(sAMAccountName =%v )(memberof = cn =%a、ou = proxy、dc = developer、dc = com)) "-h 192.168.151.2
######################################################### #################################
######################################################### #################################
### AD2008R2からのグループによるリストへのアクセスとロック###
######################################################### #################################
#(AD2008R2にあるadmins-proxyグループのユーザーのアクセスシート)
acl admins-proxy external ldap_group admins-proxy
#(AD2008R2にあるユーザープロキシグループのユーザーアクセスシート)
acl users-proxy external ldap_group users-proxy
#(MACアドレス別ユーザーアクセスシート)
acl inet-mac arp "/etc/squid/rules/inet-mac.txt"
#(URLブロックリスト)
acl url-block url_regex "/etc/squid/rules/url-block.txt"
#(ファイル拡張子リストによるブロックリスト)
acl block-extension url_regex -i "/etc/squid/rules/block-extension.txt"
#(ブロッキングストリームストリーム)
acl media rep_mime_type -i ^オーディオ/.*$
acl media rep_mime_type -i ^ video /.*$
acl media rep_mime_type -i ^ video / x-flv $
acl media rep_mime_type -i ^ application / x-shockwave-flash $
acl media rep_mime_type -i ^ application / octet-stream $
#(macsアドレスにバインドするadmins-proxyグループのすべてを許可します)
http_access allow admins-proxy inet-mac
#(users-proxyグループのURLブロックリストを無効にする)
http_access deny users-proxy url-block
#(ブロック拡張子リストをusers-proxyグループに禁止)
http_access deny users-proxy block-extension
#(ユーザープロキシグループのメディアリストを無効にする)
http_reply_accessは、ユーザープロキシメディアを拒否します
#(すべてのユーザープロキシグループを許可)
http_access allow users-proxy
######################################################### #################################
#そして最後に、このプロキシへの他のすべてのアクセスを拒否します
http_accessすべて拒否
#少なくとも次の行を使用することをお勧めします。
hierarchy_stoplist cgi-bin?
#次のコメントを外して調整し、ディスクキャッシュディレクトリを追加します。
#cache_dir ufs / var / spool / squid 100 16 256
#最初のキャッシュディレクトリにコアダンプを残す
coredump_dir / var / spool / squid
#これらの上に独自のrefresh_patternエントリを追加します。
refresh_pattern ^ ftp:1440 20%10080
refresh_pattern ^ gopher:1440 0%1440
refresh_pattern -i(/ cgi-bin / | \?)0 0%0
refresh_pattern。 0 20%4320
######################################################### #################################
指定された設定は
100%動作しています。
イカの起動:
サービスイカスタートどのように機能しますか?
ブラウザの設定
で 、プロキシサーバーのアドレスとポート
3128を指定します。 サイトページに移動し、ユーザー名とパスワードを入力するための招待状を受け取ります。
ユーザー
padminsがパスワードを正しく入力した場合、
squidはそれを渡し、指定されたグループのルールが適用されます。 configから、
admins-proxyグループに制限がないことが
わかります。 リストからの
MACアドレスへのバインドのみがあります。
ユーザー
pusersがパスワードを正しく入力した場合、
squidはそれをスキップし、指定されたグループのルールが適用されます。 設定から、
users-proxyグループが
url-block (ブロッキングURLのリスト)、
block-extension (ブロッキング拡張のリスト)、および
media (ブロッキングストリームストリームのリスト)フィルターを使用していることがわかります。
また、ポートが閉じている場合は、ポートを開くことを忘れないでください。
iptables -A INPUT -p tcp -m state -m tcp -s 192.168.0.0/16 --dport 3128 --state NEW -j ACCEPT