/etc/squid/squid.conf の
#error_directory /usr/share/squid/errors/Englishを
error_directory /usr/share/squid/errors/Japaneseに
変える
-
最近の投稿
最近のコメント
アーカイブ
カテゴリー
メタ情報
/etc/squid/squid.conf の
#error_directory /usr/share/squid/errors/Englishを
error_directory /usr/share/squid/errors/Japaneseに
変える
開発機の証明書の期限が切れていたので更新。そのメモ。
まず秘密鍵を作る。パスフレーズはどうせ解除するので1234とかにしとく。
openssl genrsa -des3 -out server.key 1024
そのままだとapacheの起動時にパスフレーズの入力が必要になってしまうので、除去しておく。
openssl rsa -in server.key -out server.key
オレオレ証明書を作成。面倒なので有効期限を10年くらいにしちゃうため、-daysオプションを指定。
openssl req -new -key server.key -x509 -days 3650 -out server.crt
Country Name (2 letter code) [AU]: JP
State or Province Name (full name) [Some-State]: Test
Locality Name (eg, city) []: Test
Organization Name (eg, company) [Internet Widgits Pty Ltd]: Test
Organizational Unit Name (eg, section) []: Test
Common Name (eg, YOUR name) []: FQDN
Email Address []:
これで用意は完了。あとは作った鍵ファイルと証明書を以下に上書きコピーする。
/etc/httpd/conf/ssl.key/server.key
/etc/httpd/conf/ssl.crt/server.crt
最後にapache再起動。
いちいちパスワードを入力するのは、めんどくさいし、パスワードが漏洩するリスクも高くなります。そんなわけで、公開鍵を利用して、パスワードを入力することなくサーバーにログインするための設定をします。
最初にローカルのPCに「.ssh」というディレクトリを作成します。というわけで、以下はローカルでの作業。
ターミナルで以下のように入力するとホームディレクトリにディレクトリが作成されます。
つづいて、鍵を作成します。
.sshディレクトリ内にid_rsaとid_rsa.pubという2つのファイルが作成されます。これが鍵です。このうち、
「id_rsa.pub」というファイルをサーバーにある「demo」アカウントのホームディレクトリにコピーします。(以降出てくる「demo」と
「123.45.67.890」の部分はそれぞれ、自分の作成したユーザー名とサーバーのIPアドレスに置き換えて考えてください。)
次にアップロードしたファイルを所定の場所に移動して、権限を設定します。これ以降はサーバーでの作業。
まずはrootでサーバーにログインします。続いて、./sshディレクトリを作成し、アップロードした鍵ファイルをその中に移動します。移動の際、ファイル名を「authorized_keys」と言う名前に変更しています。以上まとめると以下のような感じ。
つづいて、他の人に利用されないように鍵の権限を変更します。
これで、ユーザー「demo」はパスワード無しでサーバーにアクセスできます。
さらにセキュリティを高めるために、SSHの設定をいじります。sshの設定をviで編集します。
編集ヶ所は以下の通り。
「Port」はsshを接続するのに使うポート番号。デフォルトは22番ですが、セキュリティの事を考えてポート番号を変更。外から発見されにくい
よう、予想されにくい番号を入れた方が良いらしいですが、気休めな気もしないでもない。パスワード認証を使用しないなら、別に22番のままでも良いような
気がしますが。
「Protocol」はプロトコルのバージョン。1と2があって、簡単に言うと1より2の方がよりセキュアということらしいです。
「PermitRootLogin」はrootでログインすることを許可するか否か。noとすることで、rootでログインできなくします。
「PasswordAuthentication」はパスワードによる認証を行うか否か。noとすることでパスワード認証を無効にします。パスワードを
使わないなら、どうやってログインするんだ?って感じですが、そこで公開鍵による認証の設定をしたわけですね。逆に言うと、鍵でしかサーバーにログインで
きないので、鍵をなくしたら大変。
「X11Forwarding」「UsePAM」「UseDNS」は、何か分かりませんが(調べるのがめんどくさくなった)、なんとなくno。名前からなんとなく予想は付きますが。
「AllowUsers」はログインを許可するユーザーです。ここではdemoを追加しています。複数設定する場合は、スペース区切りで列挙。
実際にはこんな風に一ヶ所に全ての設定はまとまっておらず、それぞれの項目はあちこちに散らばっていました。文字列検索して探し出し、設定しました。
以上を設定したら、保存してviを終了。
sshの設定を有効にするため、設定を再読込します。
無事再読込が完了したら、新しいユーザーでアクセスできるかテストしてみます。現在rootでログインしているターミナルはそのままにして、新しいターミナルを開いて、作成したユーザー(ここではdemo)でログインします。
rootでログインしている方を開きっぱにしておくのは、sshの設定が間違っていて、一般ユーザーでもrootユーザーでもログインできないという悲惨な状態を回避するため。
「-p 30000」とか打つのめんどくせーよ、忘れちまうよ。という人は以下でもOKらしいです。試したことないのでホントにこれでOKなのか分かりません。
無事ログイン出来ると以下のように表示されます。今度はパスワードの入力をすることなくログインできます。
これで一般ユーザーでログインできるようになりました。以降はこの一般ユーザーを通して、サーバーの管理をしていきます。
PHPの開発環境とコンパイラが必要なので、rootで以下のコマンド投入
# yum install php-devel.i386
# yum install gcc
# yum install make
いよいよ本番。APCの公式サイトから最新をダウンロードして、
解凍してそのフォルダに移動。以下のコマンドを投入
# phpize
# ./configure –enable-apc
# make
# make install
うまくいけばCentOSの場合下記ディレクトリにモジュールファイルがコピーされる。
/usr/lib/php/modules/
次にphp.iniで設定
vi /etc/php.iniで以下の行を末尾に追記
extension=apc.so
apc.mode = mmap
apc.cachedir = /tmp
apc.check_compiled_source = 1
apc.check_mtime = 1
# service httpd restart
tphpinfo.php
<?php
phpinfo();
?>
であとはphpinfoでAPCが有効になっていればOK