Venue 8 Proでサイト見てる時に自分で構築したRSSサイトが使いづらいという問題が発生していました。
その理由としては
- RSSサイトのログイン状態を接続元IPで判断しているためにGlobalIPが変わるごとにログアウトしてしまう
というもの。
ならばProxyをかませてGlobalIPを固定化してしまおうと考えたわけです。
ちょうどよくVPSサービスを利用しているのでこいつをProxy化です。
環境としてはCentOS6.5を使用。
Squidは自分でcompileするだけの力がないのでyumで引っ張ってきました。
とりあえずの目標が
- Proxyの構築
- 特定IPからのアクセスのみ許可
- 特定IP以外からはユーザ認証有で使用可能
としました。
構築自体は単純で
- yum install squidを実行
- /etc/squid/squid.confに下記を記載
acl Mynet src <自分のIP>/32 # 自IP
http_access allow Mynet # Mynetからのアクセスを許可
# Proxyを踏んでいることをごまかす設定
forwarded_for off
visible_hostname unkown
request_header_access X-Forwarded-For deny all
request_header_access Via deny all
request_header_access Cache-Control deny all - iptablesでPort開放
- iptables再起動 & squid起動
だけでした。
これで特定IPからのProxyは可能に。
次にユーザ認証の導入をしてみました。
- /etc/squid/squid.confに下記を記載
auth_param basic program /usr/lib64/squid/ncsa_auth /etc/squid/.htpasswd
auth_param basic children 5
auth_param basic realm Squid proxy-caching web server
auth_param basic credentialsttl 2 hours
acl password proxy_auth REQUIRED
http_access allow password - htpasswd -c /etc/squid/.htpasswd <ユーザ名> でユーザ追加
- squid再起動
これでOKでしたが、特定IPからもユーザ認証必須な状況に・・・
非常にめんどくさい状態になってしまいました。
なのでユーザ認証設定は一度削除。
何らかの別の方法を検討している最中です。
多分VPNで一度自分のネットワークにつないでそこからSquidを利用する、というのがいいのかも。
参考サイト:
http://tejunsho.com/squid/20130319000170.html
http://centossrv.com/apache-htpasswd.shtml