あまりたいして投稿してませんが
技術情報の投稿先をQuiitaにシフトしつつあります。
https://qiita.com/abetomohiro@github
どうぞよろしくお願いします。
技術情報の投稿先をQuiitaにシフトしつつあります。
https://qiita.com/abetomohiro@github
どうぞよろしくお願いします。
何かとお世話になってるLogwatchですが、よく見ると監視項目にMySQLが入っていないようです。
そこで調べた所、mysqld.logを監視対象に追加するスクリプトを作成している方がおられたので
早速参考にさせてもらい追加しました。なおサーバーはCentOS5.6、Logwatchのバージョンは logwatch-7.3-10.el5 です。
Logwatch for PHP errors, the Apache error log and MySQL
なおこちらではlogwatchにHTTPのエラーログとPHPログを追加監視するスクリプトも公開されています。
■ファイル設置
上記サイトのLogwatch configuration for MySQLから3つのファイルを落とし、ファイル名を指定のようにします。
自分の環境では落とす場所がサイトの記述と若干違うようです。それぞれ上から
となりました。
■設定変更
次に、それぞれの設定を少し変更します。
必要に応じてログファイルパス変更
LogFile = /var/log/mysqld.log
↓
LogFile = /var/lib/mysql/hogehoge.com.err
実行権限追加
chmod 755 /usr/share/logwatch/scripts/services/mysql
これで終わりですw
あとはlogwatch.plを直接実行して、飛んできたメールに
MySQLの項目が追加されているか確認します。
/usr/share/logwatch/scripts/logwatch.pl
てな具合でまたよろです。ノシ
タイトルにあまり意味はありません(^^
以前CloudCoreにWebminとVirtualmin入れる話を書きましたが、
その後同じサーバーにPHPMyAdmin入れようとして少しはまってしまったのでそれを書きます。
前回自分はCloudcoreVPSのCentOS5.8にPHP5.3を入れました。
これはファイル名で言うとphp53で、それとは別にファイル名phpがあります。
ファイル名php53とphpは血は繋がってますがちょっとだけ別の子なようです。
少しややこしいのですが、phpはyumを使って標準レポジトリから入れようとすると、
PHPバージョン5.1が入ってきます。PHP53はPHPバージョン5.3です。
5.1と5.3では中身に結構違いがあるのか、PHPを利用する他のアプリケーションでも
PHP5.3以上対応といった物がぼちぼちあります。
php53は一応バージョン5.3なので、何も考えずにそんなもんかと思ってこれを入れましたが、
このphp53、なんかpearが無いとかmcryptが無いとか、癖がある感じです。
pearについてはphp-pear入れて、それを強引にアップデートする事で何とかなりましたが、
その後PHPMyAdminをyumで入れようとして、以下のエラーに出くわしました。
PHPMyAdminの依存ファイルphp-commonを入れようとしてるのですが、なんかもうphp53-commonが
先に入ってて、そいつらがケンカしてますよ、と(・ω・`
とりあえず調べると、どうやらこのphp-common、上のphp-mcryptと関係があるようです。
CentOS5.6で、PHP53にmcryptが入らない問題
それからエラーメッセージ内で示唆されてるコマンド
で解決した例もあったので、試してみたのですがだめでした。
その後も調べたのですが、
・PHP53用mcryptはPHPをコンパイルして手動で入れる
・ファイル名をちょっと変えた形で入れる
入れるにも消すにも少し手間がかかりそうです。
できればyumで依存ファイルも一緒にさくっと入れられて、いらなくなったらさくっと消せるようにしたいので
そういう方法を探していたのですが、おおっと、ここで救いの神がw
CentOS5.4 に MySQL5.1,PHP5.3とphpMyAdmin
yumで複数のレポジトリを組み合わせれば、php53を使わずともphpバージョン5.3が入っちゃうという素晴らしさw
早速今まで入ってたphp53をアンインストールします。
そんでレポジトリコンビネーション攻撃でphpげっとだぜw
remiやらepelはいわゆる野良レポジトリですが、今まで使ってきてとりあえず問題なかったので今回も遠慮なく使いますw
おや(・・`
なんだかmcryptのなんかが無いてゆわれてますねorz
ではmcryptから入れてみます。
バージョン5.3.10キター━━━(゚∀゚≡(゚∀゚≡゚∀゚)≡゚∀゚)━━!!!
php53の5.3.3に比べてマイナーバージョンが若干上がってます。
テンション上がったので続けてガンガン行きます。
pearもさくっと入ってくれましたw
んで今回の本命PHPMyAdminをインストールします。
ほっほっほ。素晴らしい。実に素晴らしい(^ω^
これでインストールは終了ですが、PHPMyAdminは
でファイルの置き場所やらアクセス制限等の設定を行っています。
デフォルトでは、PHPMyAdminフォルダはローカルホスト以外からアクセスできないようになってました。
(まあここでまた少しハマったわけですがorz)
もしPHPMyAdminフォルダの場所を変更したいとか、
リモートサーバー上で動かしたい場合はこのファイルを修正する必要があります。
修正が終わったらhttpd再起動して、ブラウザでphpmyadminフォルダにアクセスし、ログイン画面出ればおkですw
あとはDB接続設定やらBlowfish設定やらの内部設定になるので、今回はこんな感じでどっとおはらいw
CentOS 5.8に入れたVirtualminで仮想サイト用にメールアカウントを作成してみました。
その際ログイン名をメールアドレスと同じにしようと思い、サーバーテンプレートの設定で
username@domain
を選択。
アカウントはバーチャルアカウントではなくunixアカウントを使用します。
んでアカウント作成後SSHでサーバーに入り、/etc/passwdを見ると、
作成したユーザーhoge@moge.comのアカウントが
hoge@moge.com
hoge-moge.com
てな感じで2個できてました。
何これ気持ち悪い(・・`
調べてみたところ、公式サイトに、
Virtualminは ユーザー名@ドメイン名 型のユーザー名をサポートしてますが、
この設定について注意する点が有ります。
Postfixは @をユーザー名に持つユーザーへのメール配信をサポートしておりません。
したがって Virtualmin は2つのユーザーアカウントを作成します。
(一つは Postfix が配信をおこなうもの、もう一つは@のついたものです)
みたいなことが書いてありました。
そんでpostfixのマッピングテーブルを見ると、なんか
@付きのメールを@無しに転送する設定ができてます。
う〜ん、なんだかなあ・・・(^^;
KDDIのVPS CloudCoreにPHP5.3, MySQL5.5, Webmin環境を入れてみます。
CloudCoreはCentOS5.6がデフォルトOSですが、結構空っぽな状態なので
コマンド等を自力でいろいろ入れることになります。んでyum-updateを行って
CentOS5.8状態で運用するとです。
以下行った手順。
余計な作業や足りない作業も十分ある可能性があるのであくまで参考程度に^^;
コンパネからサーバーを起動しSSHでアクセス。
ログイン後とりあえずrootパス変更。
■SSH設定。ログイン認証は今トレンディ?な鍵方式ではなく
ユーザー制限+パスワード認証でw
最終行に追加
■ログインユーザー設定
■root昇格制限
wheelにログイン用ユーザー名追加
■SSH起動
SSH接続を別に開き、rootで接続できないか、ログイン用ユーザーで接続できるか確認。
■レポジトリ設定
・標準レポジトリからrikenに切り替え
・DAG追加
・EPEL追加
・Remi追加
■yumコマンド設定
■サーバーアップデート
■cronインストール。なんでデフォルトで入ってないんだ…。
■ファイアウォール設定
開けるポート
21:FTP, 22:SSH, 53:DNS, 25:SMTP, 80:HTTP, 110:POP3, 123:NTP, 143:IMAP, 443:HTTPS, 587:SMTP(OP25B) 10000:webmin
# Firewall configuration written by system-config-securitylevel
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:RH-Firewall-1-INPUT – [0:0]
-A INPUT -j RH-Firewall-1-INPUT
-A FORWARD -j RH-Firewall-1-INPUT
-A RH-Firewall-1-INPUT -i lo -j ACCEPT
-A RH-Firewall-1-INPUT -p icmp –icmp-type any -j ACCEPT
-A RH-Firewall-1-INPUT -p 50 -j ACCEPT
-A RH-Firewall-1-INPUT -p 51 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp –dport 5353 -d 224.0.0.251 -j ACCEPT
-A RH-Firewall-1-INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 21 -j ACCEPT
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 22 -j ACCEPT
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 53 -j ACCEPT
-A RH-Firewall-1-INPUT -m state –state NEW -m udp -p udp –dport 53 -j ACCEPT
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 25 -j ACCEPT
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 110 -j ACCEPT
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 123 -j ACCEPT
-A RH-Firewall-1-INPUT -m state –state NEW -m udp -p udp –dport 123 -j ACCEPT
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 143 -j ACCEPT
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 443 -j ACCEPT
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 587 -j ACCEPT
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 10000 -j ACCEPT
-A RH-Firewall-1-INPUT -j REJECT –reject-with icmp-host-prohibited
COMMIT
■PassiveFTP対応
■開発モジュール設定
■sarコマンド設定
■mailコマンド設定
■quotaコマンド設定。CloudcoreはデフォのCentOSだとquotaが使えないようです。fdisk -l で見てみると、
/dev/vda1にすべてが入っててパーティション切ることもできず、LVM等も特に設定されてません。どうしよう・・・(・ω・`
でも入れてみましたwwwwwおkwwwwwっうぇ
■manコマンド設定
■nslookup, digコマンド設定
■ポートスキャンコマンド設定
■lsofコマンド設定
■単発cronコマンド設定
■sudoコマンド設定
■FTPサーバー設定
追加
DefaultRoot ~ !wheel
・最後尾に以下を追加
# DelayEngine directive enables
DelayEngine on
# The DelayTable directive configures a path to a file that mod_delay
# uses for storing its timing data.
DelayTable /var/proftpd/proftpd.delay
# Time displays on GMT
TimesGMT off
# Passive ports
PassivePorts 60000 60050
# Sets the idle connection timeout (default: 600)
TimeoutIdle 180
# Sets the login timeout (default: 300)
TimeoutLogin 300
# Sets the connection without transfer timeout (default: 600)
TimeoutNoTransfer 180
# Sets a timeout for an entire session (default: none)
TimeoutSession none
# Sets the timeout on stalled downloads (default: 0 {no limit})
TimeoutStalled 180
(proftpdはxinetd経由で起動するのでservice startはしないのです)
■xinetdインストール
vi /etc/xinetd.d/xproftpd
service ftp{
socket_type = stream
wait = no
user = root
server = /usr/sbin/in.proftpd
#log_on_success += DURATION USERID
log_on_success += HOST PID
#log_on_failure += USERID
log_on_failure += HOST
nice = 10
#disable = yes
disable = no
}
■clamAVインストール
■ウィルス定義DBアップデート
■定期実行スクリプト設置
■mysql(5.5)インストール
■SMTPサーバーインストール
■POP3サーバーインストール
■スパムフィルタインストール
■メールフィルタインストール
■メーリングリスト機能インストール
■apacheインストール
■PHPインストール
※2012/4/13付記 PHPMyAdminインストール 〜 PHP5.3の甘い罠に若奥様は何を思ったのか参照
■pear設定。pearはPHP5.3対応がないとかで無理矢理アップデートする方法でw
■認証関係インストール
■bindインストール
■だいたい必要なものを入れたのでやっとwebminインストールです
■locate, updatedbコマンド設定
■updatedb実行
■webmin設定
・言語設定
・virtualminインストール
と、ここまできて、virtualminがあまり日本語化されてないですね(・ω・`
webminとvirtualminのファイルは
に入ってます。
日本語化は
に言語ファイルを追加もしくは書き換えで出来るようです。
この追加用言語ファイルは
http://akitake.iza.ne.jp/blog/entry/1176555/
で紹介されているファイルの最新版
を使わせていただきました。
ただし上記ファイルはEUC−JP・バージョン1.443向けです。
自分の環境ですとUTF-8・バージョン1.58ですので、このファイルをwin上に
ダウンロードしてから解凍後、サクラエディタで開き、1.58の英語ファイルと
混ぜ合わせてUTF-8で保存し直してから名前をUTF-8バージョンに書き換え、
teraterm経由でSCPアップロードし使用しました。
また、その際他の言語ファイルの所有者権限がroot:rootだったのでそれに合わせました。
それにしてもなんで3ファイルに別れてんだろ(・ω・`
この後の流れは、webmin上から、ログインユーザー制限、httpd、bind、postfix、MySQL設定等
その他いろいろやって、webminの設定チェックツールからOKもらって
第一段階クリア?という感じですがそれはまた別の機会にw
んでCloudcoreですが、割と使いやすいと思います。
(ちなみにさくらとかServersmanとか他のとこのVPSは
使ったことないので比較はできません^^;)
初期状態だと清々しいまでに何も入ってませんがw
あと、パーティション切れないせいでquotaが使えないのはちょっと痛いですね^^;
他の方がブログなどで、デフォルトOSでなく別OS(CentOS6.0とか)を
手動インストールする方法を書いてたりするので、そちらを入れれば使えるようになると思います。
それにしても数年前まで、レンタルサーバーでroot権限まで使わせて
もらえるもの専用サーバーのみで、利用料も月額数万円を
切るものはありませんでした。
それがここ最近の仮想化の流れのおかげで、月額千円とか2千円とか
こんなにお安くお手軽にwすばらしいですw