youforce

2ちゃんねる勢いランキングの中の人が書く技術系(?)ブログ

おやすみプログラムを本日から開始します

f:id:koiwaiyuji:20150628033123p:plain

おやすみプログラムとは?

  • さて、本日から標題通りの「おやすみプログラム」を実施することにしました。 このおやすみプログラムとは何かというと、毎晩寝る前にどんな簡単なことでも些細な稚拙なことでもよいので、ブログとしてプログラムのTIPSやノウハウを書き連ねていこうという目論見です。

  • これは自分で考案したのでは無く、今は亡き、名音楽プロデューサーの「佐久間 宣行」氏が生前に行っていた「おやすみ音楽」になぞらえたものになります。

rittor-music.jp

  • おそらくこの試み自体は珍しいものでは無いと思うのですが、自分の決めた意思がどこまで続くのか試してみたいこともあり実施することにしました。

おやすみプログラムのお約束

  1. プログラムに関することであればインフラ・ミドル・ソフトウェアなどレイヤーは問わない
  2. プログラムに関することであればレベルは問わない
  3. とにかく「毎日」書くことが大切
  4. もし1日休んでしまった時も「2日分を1日で取り返す」ようなことはせず、無理なく続けて行く

本日のおやすみプログラム

CentOSsquidyumでインストール+設定手順

  • 本日のおやすみプログラムはプロキシサーバとして有名なsquidの導入手順です。 今回ひょんなことからsquidを使う機会があったので導入手順を残しておきます。

環境

  • CentOS 6.6(サーバ側・クライアント側とも)

プロキシサーバ側の設定

squidのインストール

# yum -y install squid

設定ファイル編集

# vi /etc/squid/squid.conf
acl CONNECT method CONNECT
# 追記 (ACLの定義追加で接続元を設定)
acl wan src xxx.xxx.xxx.xxx

# 追記 (定義したACLの許可)
http_access allow wan

# 変更(8080はバッティングしやすいので他を推奨)
http_port 8080

# 最終行に追記 (匿名サーバー化)
request_header_access Referer deny all
request_header_access X-Forwarded-For deny all
request_header_access Via deny all
request_header_access Cache-Control deny all

# ホスト名定義(必要に応じて)
visible_hostname proxy.server

# クライアント情報を表示しない
forwarded_for off

squidの起動

# /etc/rc.d/init.d/squid start 
Starting squid: [ OK ]

サーバ起動時にsquid自動起動するようにchkconfigに追加

# chkconfig squid on 

クライアント側の設定

# vi /etc/profile
# 最終行に追記 (プロキシサーバーを環境変数に設定)
MY_PROXY_URL="111.222.333.444:8080"
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

設定の反映

# source /etc/profile
  • 疎通確認
  • グローバルIPを確認してプロキシサーバ側のIPが表示されればOK
# curl inet-ip.info
111.222.333.444

補足

  • Javaでプロキシサーバを通す場合
// プロキシの情報を設定
System.setProperty("proxySet", "true");
System.setProperty("proxyHost", "111.222.333.444");
System.setProperty("proxyPort", "8080");

// 以下の通信は上で設定したプロキシが利用される
URL url = new URL("http://www.yahoo.co.jp/")
HttpURLConnection conn = (HttpURLConnection) url.openConnection();

本日のおやすみプログラムは以上になります。 みなさん、よい夢を見られますように。 それではおやすみなさい。