最新記事

カテゴリ

全記事(数)表示

全タイトルを表示

リンク

カテゴリ内記事一覧

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

カテゴリ「スポンサー広告」の記事一覧

USER-AGENTでsquidのアクセス制限を行う方法

squidのアクセス制限をUser-Agentで行う方法を記載します。


/etc/squid/squid.confを修正します。

acl user-agent browser regexp "/etc/squid/user-agent.txt"
(略)
http_access deny user-agent

 

「/etc/squid/user-agent.txt」に拒否するユーザエージェントの文字列を正規表現にて記載します。

MSIE 5\.0
MSIE 5\.5
MSIE 6\.0
compatible
Mozilla\/3\.0

以上。

スポンサーサイト

タグ : Squid アクセス制限


カテゴリ「Squid」の記事一覧

時間でsquidのアクセス制限を行う方法

squidのアクセス制限を時間で行う方法を記載します。


/etc/squid/squid.confを修正します。

acl Workingtime time MTWHF 08:30-12:00
acl Workingtime time MTWHF 13:00-17:00
(略)
http_access deny !Workingtime

 

ACL timeについて
acl aclname time [曜日の省略] [h1:m2-h2:m2]
曜日の省略…MTWHFAS

 

以上。

タグ : Squid アクセス制限


カテゴリ「Squid」の記事一覧

squidのログの形式をApacheのCommon形式にする

Squidでのログ(/var/log/squid/access_log)をApacheなどで利用しているCommon形式にします。

そうすることで、時間が見やすくなったり、詳細な情報(リファラーやUserAgentなど)を取得することができます。

また、Apacheでのアクセス解析ツール(Analog等)も利用可能になるという利点もあります。

 

/etc/squid/squid.confを修正します。

# Log Type
emulate_httpd_log on
# LogFile
access_log /var/log/squid/access.log auto

※CentOSの場合には「access_log」の設定も必要です。

 

カスタマイズする場合(Common形式プラス上位プロキシを追加)

/etc/squid/squid.confを修正します。

logformat common %>a %ui %un [%tl] "%rm %ru HTTP/%rv" %Hs %<st %Ss:%Sh/%<A
ccess_log /var/log/squid/access.log common

 

以上。

タグ : Squid アクセス制限


カテゴリ「Squid」の記事一覧

プロキシサーバ(squid)にてユーザ認証(NTLM認証)を行う方法

プロキシサーバ(squid)上でWindows統合認証(NTLM認証)を行う方法について記載します。

これにより、ActiveDirectoryアカウントを所有していない場合には、WEBの利用が出来なくなります。

NTLM認証なので、ドメインユーザの場合にはSSO(シングルサインオン)です。

 

作業手順

実際の大きな作業手順は以下になります。

1.サーバをドメインへ参加

2.Squidの設定

 

1.サーバをドメインへ参加

省略します。LinuxサーバをWindowsのActiveDirectoryに参加させる方法 を参照して下さい。

 

2.Squidの設定

/etc/squid/squid.confを修正します。

auth_param ntlm program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp
auth_param ntlm children 5
auth_param ntlm keep_alive on

(略)

acl password proxy_auth REQUIRED
http_access allow password

 

※注意
Squidのバージョンで使用できないオプションがあるので注意。
オリジナルのSquid.confを参照すること。

 

確認

プロキシサーバへアクセスした際に、認証ダイヤログが表示後、認証がクリアされればオッケー。

SSOの場合には表示されません。Squidのログ内にユーザ名が入っていればOKです。

 

注意!
NTLM認証化を行うと、認証を行っていない環境に比べて幾つかのトラブルが発生します。
基本的にIEやFireFoxなどのブラウザを介してのアクセスは問題ありませんが、
独自のアプリケーション(javaなど)からプロキシを介してインターネットへアクセスしようとした際に、
独自のアプリケーションがNTLM認証に対応していないと、エラーとなり、アクセスできません。

具体的に私が把握している限りでは、
・WindowsUpdateサイト
・駅すぱあと
・Microsoft アクティベーション
・Microsoft Officeアクティベーション
・Verisignアクティベーション
・Macintosh アップデート
・Adobe update
・IE7 Fishing機能
・各種ウイルスソフトのアップデート
 → Live OneCare、McAfee、ウイルスバスター、ノートンアンチウイルス等、、、
・JAVA アップデート
・Linux yumコマンド

などなど、かなりたくさんのアプリが利用できません。

 

これでは困るという場合があります。

そこで、そういう場合にはNTLM認証で失敗した際に、Basic認証を行う様にします。

 

/etc/squid/squid.confを修正します。

auth_param ntlm program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp
auth_param ntlm children 5
auth_param ntlm keep_alive on

auth_param basic program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-basic
auth_param basic children 5
auth_param basic realm Squid Basic Auth
auth_param basic credentialsttl 2 hours


(略)

acl password proxy_auth REQUIRED
http_access allow password

 

注意!
NTLM認証の際には、パスワードは暗号化されているので保護されますが、
Basic認証の際はパスワードが平文でながれてしまいます。
セキュリティ的にBasic認証が問題な場合には使用しないほうがよいでしょう。
とくにActiveDirectoryユーザパスワードは再重要パスワードですよ!

 

また、NTLM認証ではドメインユーザの場合だとSSO(シングルサインオン)ですが、Basic認証の場合にはSSOにはなりません。

 

以上。

タグ : Squid


カテゴリ「Squid」の記事一覧

プロキシサーバ(squid)にてユーザ認証(Basic認証)を行う方法

プロキシサーバ(squid)上でユーザ認証を行う方法について記載します。

Basic認証、いわゆるHTTP基本認証にてユーザ認証を行います。

 

パスワードファイルを作成後、squidの設定を行います。


htpasswdコマンドでパスワードファイルを作成する

# htpasswd -c /etc/squid/squid-passwd testuser
(パスワード入力)
(パスワード再入力)

 

/etc/squid/squid.confを修正します。

auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/squid-passwd # パスワードファイルの場所。ncsa_authライブラリで認証する。
auth_param basic children 5
auth_param basic realm Http Basic Auth ! # 認証の時に出るメッセージ
auth_param basic credentialsttl 2 hours # 何時間ごとに認証をするか?
acl password proxy_auth REQUIRED
http_access allow password


確認

プロキシサーバへアクセスした際に、認証ダイヤログが表示後、認証がクリアされればオッケー。

または、Squidのログ内にユーザ名が入っていればOKです。

 

補足

Basic認証の場合には、簡単に認証を実現可能です。

ですが、人数が増えてくると、パスワードファイルをいちいち作成するのは非常に手間がかかります。(っつーか無理です)

ユーザ認証部分はWindowsのActiveDirectoryに任せてしまう方法があります。

ActiveDirectoryに参加していることが前提なのですが、参考にどうぞ。

 

プロキシサーバ(squid)にてユーザ認証(NTLM認証)を行う方法

 

以上。

タグ : Squid


カテゴリ「Squid」の記事一覧

squidのNTLM認証の補足。NTLMヘルパーの数の調整について。

squidでNTLM認証を行っている場合に、NTLMヘルパー数が足りない場合には、

以下の様なエラーがログ(/var/log/messages)に出力されます。

# cat messages.* | grep -i squid
Jun 30 11:29:19 hoge-proxy01 (squid): Too many queued ntlmauthenticator requests (51 on 10)
Jun 30 11:29:19 hoge-proxy01 squid[2934]: Squid Parent: child process 8349 exited due to signal 6
Jun 30 11:29:20 hoge-proxy01 squid[2934]: Squid Parent: child process 2483 started
(略)

 

そんな場合にはNTLMヘルパーの数の調整を行いましょう。

/etc/squid/squid.confを編集します。

auth_param ntlm program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp
auth_param ntlm children 30
auth_param ntlm keep_alive on

 

設定変更後は、たまにログを見て数を調整するほうがいいでしょう。

 

以上。

タグ : Squid


カテゴリ「Squid」の記事一覧


上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。