1 views
実現する機能
CentOS7にProxyサーバーを立て、旧WebサーバーPC(ufuso.dip.jp 192.168.24.241)と新WebサーバーPC(topi.0t0.jp 192.168.24.240)の両方を別々のドメインで公開しましたが、au光のルーターにはドメイン名と内部IPを関連させる機能がないので、インターネットから両方のWebサーバーにアクセスするとtopi.0t0.jpでアクセスしても80番ポート(=http)をマッピングしているufuso.dip.jpのサイトが表示されます。この症状を解消するためにProxyサーバーを構築し、ドメイン名(=URL)でtopi.0t0.jpにもアクセスできるようにしました。
以下はProxyサーバー構築までの備忘録です。
事前準備
※ieServer.Net(無料)やDynamic DO!.jp(無料)やお名前.com(有料)などからドメインを取得済であること
※CentOS 7.0 でWebサーバー構築・公開(Apache)やCentOS 7.0 で複数ドメイン管理の内部DNSサーバー構築(BIND)を構築済であること
Squid導入手順
1.Squidインストール
[root@ufuso ~]# yum -y install squid ← ProxyサーバーSquidのインストール インストール: squid.x86_64 7:3.3.8-12.el7_0 依存性関連をインストールしました: libecap.x86_64 0:0.2.0-8.el7 libtool-ltdl.x86_64 0:2.4.2-20.el7 perl-Digest.noarch 0:1.17-245.el7 perl-Digest-MD5.x86_64 0:2.52-3.el7 完了しました! |
2 Squid設定(リバースプロキシの設定)
[root@ufuso ~]# vi /etc/squid/squid.conf ← Squid設定ファイル編集 # Example rule allowing access from your local networks. # Adapt to list your (internal) IP networks from where browsing # should be allowed acl localnet src 10.0.0.0/8 # RFC1918 possible internal network acl localnet src 172.16.0.0/12 # RFC1918 possible internal network acl localnet src 192.168.0.0/16 # RFC1918 possible internal network acl localnet src fc00::/7 # RFC 4193 local private network range acl localnet src fe80::/10 # RFC 4291 link-local (directly plugged) machines acl SSL_ports port 443 acl Safe_ports port 80 # http acl Safe_ports port 21 # ftp acl Safe_ports port 443 # https acl Safe_ports port 70 # gopher acl Safe_ports port 210 # wais acl Safe_ports port 1025-65535 # unregistered ports acl Safe_ports port 280 # http-mgmt acl Safe_ports port 488 # gss-http acl Safe_ports port 591 # filemaker acl Safe_ports port 777 # multiling http acl CONNECT method CONNECT acl lan src 192.168.24.0/24 ← 追記。Proxyの利用を自宅内ネット内のPCに制限 (192.168.24.0/24は自宅ネットのIPに変更のこと) ... ... # Example rule allowing access from your local networks. # Adapt localnet in the ACL section to list your (internal) IP networks # from where browsing should be allowed http_access allow localnet http_access allow localhost http_access allow all ← 追記。インターネットからのアクセスを許可 ... # Squid normally listens to port 3128 http_port 8181 accel defaultsite=topi.0t0.jp ← 追記。portを8181に、 アクセスサイトのURLをtopi.0t0.jpに設定(設定はお宅のものに変更のこと) # Uncomment and adjust the following to add a disk cache directory. cache_dir ufs /var/spool/squid 100 16 256 ← 行頭の#を削除。2000がディ スクキャッシュ容量(MB)、16が一次ディレクトリ数、256が二次ディレクトリ数 ... visible_hostname ufuso.dip.jp ← 追記。プロキシサーバーのホスト名を入力のこと forwarded_for off ← 追記。プロキシサーバーの接続元IPアドレスを非表示 cache_peer topi.0t0.jp parent 80 0 no-query originserver ← 追記。上 位プロキシーのホスト名を設定 [root@ufuso ~]# systemctl start squid ← Squidの起動 [root@ufuso ~]# systemctl enable squid ← Squidの自動起動設定 ln -s '/usr/lib/systemd/system/squid.service' '/etc/systemd/system/multi-user.target.wants/squid.service' |
3 サイトの確認(iPhone5Sで確認)
(1)旧サーバーのURL、ufuso.dip.jpでアクセスすると下のCentOS7の画面が出る
(2)新サーバーのURL、topi.0t0.jpでアクセスしても同じ画面が出る
(3)ポート8181を指定して、再度topi-.0t0.jp:8181にアクセスすると、
(4)新サーバーUbuntu14.04のWebサイト初期画面が表示される。一件落着
以上