kawama.jp

mtaをsendmailからpostfixにする

カテゴリ: サーバー — 2007年10月5日 17:31 — Comments (1)hatebu count

まずはyumを使ってサクサクっとpostfixをインストール。

http://fedorasrv.com/postfix.shtml

↑こちらのページを参考にさせていただきました。

で、MTAの切り替えにはalternativesというコマンドが使えることを知りました。

# alternatives –config mta

これを実行してpostfixをmtaにすると、シンボリックリンクを張ったりしてmta入れかえをしてくれるんです。いやー便利だ。

PECL(PHP拡張モジュール)でモジュールを導入する

カテゴリ: PHP — 2007年10月4日 22:12 — Comments (0)hatebu count

jsonモジュールを使おうと思ったら、php5.1系だったのでモジュールが含まれていない。というわけでモジュールを入れようと思い、調べてみたらpeclコマンドで簡単に導入できるとのこと。

こんな感じ。

# pecl install json

pearと全く同じですね。

ただ、自分の環境だと

running: phpize

sh: phpize: command not found

というエラーが出てしまいました。

phpizeが、、ない

phpizeはphp-develというパッケージを入れればOKです。ソースコンパイルの場合はデフォルトで付属します。

# yum install php-devel

やり直したら、見事成功!

で、php.iniに

extension=json.so

を追加して完了です。

Linuxのカーネルバージョンを調べるには

カテゴリ: サーバー — 11:48 — Comments (0)hatebu count

unameコマンドで分かります。

uname -m //CPUのタイプを表示する

uname -n //PCのホスト名を表示する

uname -r //カーネルのバージョンを表示する

uname -s //OS名を表示する

uname -v //OSのリリース日を表示する

uname -a //すべての情報を表示する

http://www.atmarkit.co.jp/flinux/rensai/linuxtips/068infokernelver.html

yumでパッケージを削除するには

カテゴリ: サーバー — 11:36 — Comments (0)hatebu count

新しいサーバーが届いて、現在環境構築中。

yum関係をいじっており、yum list installed したらpostgresが入っていた。

postgresは使わないのでアンインストールしたい。そんなときはグループごとまとめて削除するのが楽です。

# yum groupremove “PostgreSQL Database”

まとめて一気に引っこ抜けるので、すごくさっぱりします。

http://www.atmarkit.co.jp/flinux/rensai/linuxtips/678yumgroup.html

selinuxを無効にする

カテゴリ: サーバー — 2007年10月2日 10:05 — Comments (0)hatebu count

CentOS4.5をインストールすると、selinuxというのがもれなくインストールされます。(インストール時のオプションだったかも)

selinuxについてまったく知らなかったので、軽く調べてみました。

selinuxは「Security Enhanced Linux」の略で、セキュリティを高めるためのものだそうです。しっかり設定すると堅固なセキュリティを組むことができるんだそうです。

なるほど、機会があったらしっかり勉強してみるのもいいかもしれないな、、、とは思うんですが、いまのところまだあまり普及していない様子。また、きちんと理解しておかないとトラブルが起こった時の原因の切り分けにおいて手間がかかってしまうそうです。

導入するのは時期尚早かな、、、という感じ。

というわけで無効にすることに。

# vi /etc/selinux/config

SELINUX=enforcing

 ↓

SELINUX=disabled

これで再起動後にはselinuxは無効になります。

再起動せずに無効にしたい場合は、

# /usr/sbin/setenforce permissive

でOK。

iptablesの勉強

カテゴリ: サーバー — 2007年10月1日 22:09 — Comments (0)hatebu count

iptablesについて、けっこう頑張って勉強したのでまとめてアップします。

iptablesは多機能でいろんなことができるようですが、この記事では単体サーバーで、外部からのアクセスを全部遮断し、サービスを行うポートのみ特定(または不特定)のユーザーに対して開放するという点のみを書きます。ルーター機能とかについては触れません。

まずiptablesコマンドの使い方ですが、説明は割愛します。この記事の最後に参考サイトをリンクしたのでそちらをごらんください。

さっそくですが、具体例を示します。

以下は入ってくるパケットを全部拒否(DROP)し、80番ポート(http)は全開、22番ポート(ssh)は192.168.1.0/24のみ許可という設定です。

 1. iptables -P OUTPUT ACCEPT

 2. iptables -P FORWARD DROP

 3. iptables -P INPUT DROP

 4. iptables -A INPUT -i lo -j ACCEPT

 5. iptables -A INPUT -p icmp -j ACCEPT

 6. iptables -A INPUT -m state –state ESTABLISHE,RELATED -j ACCEPT

 7. iptables -A INPUT -p tcp –dport 80 -j ACCEPT

 8. iptables -A INPUT -p tcp –sport 80 -j ACCEPT

 9. iptables -A INPUT -p tcp -s 192.168.1.0/24 –sport 22 -j ACCEPT

10. iptables -A INPUT -p tcp -s 192.168.1.0/24 –dport 22 -j ACCEPT

行ごとに説明します。

まず1~3行目。「-P」オプションは基本ルールの設定です。後述する「-A」のルールに当てはまらないパケットにはすべて「-P」の処理が行われます。

1. 内部から外部へのパケット(OUTPUT)を許可(ACCEPT)

2. サーバーを経由して転送されるパケット(FORWARD)をすべて破棄(DROP)

3. 外部から内部へのパケット(INPUT)をすべて破棄(DROP)

4~6行目はそれぞれ以下の意味を持っています。

4. ループバックアドレスからのパケット(自分自身からのパケット)を許可

5. icmp(ping)のパケットを許可

6. ESTABLISHED(確立済みのコネクション)とRELATED(新しいコネクションだがFTPデータ転送やICMPエラーのように既存の接続に関係する)のパケットを許可

7~10行目は特定ポートでのサービスへのパケットの処理です。

7. 80番ポートへのパケットを許可(dportは宛先ポートの指定)

8. 80番ポートへのパケットを許可(dportは送信元ポートの指定)

9. 22番ポートへのパケットを192.168.1.0/24に対してのみ許可(dportは宛先ポートの指定)

10. 22番ポートへのパケットを192.168.1.0/24に対してのみ許可(dportは送信元ポートの指定)

以上でこのサーバーは80と22以外は外部からのアクセスはすべて破棄されるようになりました。

さて、ここでいくつか注意点を。

まず上記のコマンドは、コンソールから実行しないといけません。リモートから実行した場合、3行目を実行した時点で「外部から内部へのパケット(INPUT)をすべて破棄(DROP)」されてしまうので、切断されてしまいます。

というわけなので、リモートからの作業の場合には「iptables -P INPUT DROP」は一番最後に実行してください。

あと6行目の「iptables -A INPUT -m state –state ESTABLISHE,RELATED -j ACCEPT」。

この設定をしておけばたとえ途中で設定を間違えてしまっても、その時点で接続が切れることはなくなります。たとえばsshのルールを間違えて設定したとしても突然接続が切れたりしないので安心です。

だいたいこんなところです。

あと実際に本番機でルールを設定する時は、iptablesコマンドを使うより/etc/sysconfig/iptablesのスクリプトを編集したほうがいいと思います。上の例をスクリプトにすると、

:INPUT DROP [0:0]

:FORWARD DROP [0:0]

:OUTPUT ACCEPT [0:0]

-A INPUT -i lo -j ACCEPT

-A INPUT -p icmp -j ACCEPT

-A INPUT -m state –state RELATED,ESTABLISHED -j ACCEPT

-A INPUT -p tcp -m tcp –dport 80 -j ACCEPT

-A INPUT -p tcp -m tcp –sport 80 -j ACCEPT

-A INPUT -s 192.168.1.0/255.255.255.0 -p tcp -m tcp –sport 22 -j ACCEPT

-A INPUT -s 192.168.1.0/255.255.255.0 -p tcp -m tcp –dport 22 -j ACCEPT

となります。ルールを有効にするには「/etc/init.d/iptables restart」。

コマンドは実行した瞬間にルールが適用されるのでミスが起こりやすいので、その点スクリプトだと安全です。

最後に、iptablesはテスト環境を用意して実際にコマンドを試しながら勉強するのがいいと思います。自分もそうしましたが、習うより慣れろなところがあるので、そうすることをおすすめします。(ぶっつけ本番で失敗したら大変なことになっちゃいますしね)

以下、勉強の参考にさせていただいたサイトです。

http://linux.shoukun.com/security/iptables.htm

http://www.fmmc.or.jp/fm/nwts/rh_linux/ch6/6_2_1_4.html

http://kurosuke.net/linux/iptables.shtml

http://www.linux.or.jp/JF/JFdocs/packet-filtering-HOWTO-7.html

http://cyberam.dip.jp/linux_security/iptables.html

http://www.asahi-net.or.jp/~bk3k-andu/linux/tips/iptables4.html

http://www.d3.dion.ne.jp/~koetaka/router.html

※追記

/etc/sysconfig/iptablesはデフォルトでは存在しません。

# /etc/rc.d/init.d/iptables save

を実行すると保存されます。

特定のパッケージだけyumのアップデート対象から外す

カテゴリ: サーバー — 13:41 — Comments (0)hatebu count

/etc/yum.confの、[main]のセクションに

exclude=アップデートから外したいパッケージ名

とすればOK。

ワイルドカードも使える。

exclude=kernel*

カーネルを更新すると最悪起動しなくなってしまうというリスクもあるので、自分の環境ではこのように設定しています。

参考

http://www.atmarkit.co.jp/flinux/rensai/linuxtips/596noupyum.html

yumでphp5,mysqlをインストール

カテゴリ: サーバー — 2007年9月28日 17:20 — Comments (0)hatebu count

centosplusとdagリポジトリの設定が終わったら、php5、mysqlのインストール、アップデートを始めます。

まずは現在のバージョンを確認。

# php -v

PHP 4.3.9 (cgi)

# mysql

入ってない

ではphpから

# yum update php

でOK。他にphp-mysqlとか、gdとか、使うモジュールも入れておきましょう。

続いてmysql

# yum install mysql

これで依存関係もまとめてインストールできます。なお、これだとインストールされるのはmysqlのクライアントだけで、サーバーがインストールされないので

# yum install mysql-server

もやっておきましょう。

以上で完了です。

centosplusとdagを導入

カテゴリ: サーバー — タグ: , , — 14:38 — Comments (0)hatebu count

yumでmysqlとかphp5とかを入れる場合はリポジトリにcentosplusやdagを入れる必要があります。

# vi /etc/yum.repos.d/CentOS-Base.repo

まずはcentosplusの記述。

既に[centosplus]があるので、baseurlとenabledを以下のようにします。

baseurl=http://ftp.riken.jp/Linux/centos/$releasever/centosplus/$basearch/

enabled=1

続いてdag。

これは新規で記述を追加します。

[dag]

name=Dag RPM Repository for RHEL4/CentOS4

baseurl=http://ftp.riken.jp/Linux/dag/redhat/el4/en/$basearch/dag/

enabled=1

gpgcheck=1

そしてGPG-KEYを取得。

# rpm –import http://ftp.riken.jp/Linux/dag/packages/RPM-GPG-KEY.dag.txt

# rpm –import ftp://ftp.riken.jp/Linux/dag/RPM-GPG-KEY.dag.txt

パソコンおやじさんのページをそのまま使わせていただきました。

よく使うyumコマンド一覧

カテゴリ: サーバー — 14:18 — Comments (0)hatebu count

http://www.atmarkit.co.jp/flinux/rensai/linuxtips/611usefllyum.html





↑こちらのページにあったのを、便利そうなのでコピーさせていただきました。





コマンド 概要
check-update アップデート可能なパッケージの一覧を表示
clean ダウンロードしたパッケージと古いヘッダを削除する。clean allと同じ
clean oldheaders 古いヘッダを削除
clean packages ダウンロードしたパッケージを削除
info 利用可能なパッケージの情報を表示
info パッケージ名 指定したパッケージの情報を表示
install パッケージ名 指定したパッケージをインストール
list 利用可能なパッケージの一覧を表示
list installed インストール済みのパッケージ一覧を表示
list updates アップデート可能なパッケージの一覧を表示
provides パッケージ名 パッケージに含まれるファイルの一覧を表示
remove パッケージ名 指定したパッケージをアンインストールする。指定したパッケージと依存関係があるパッケージは、削除するかどうか確認を求める
search キーワード キーワードでパッケージを検索する。検索の対象は、RPMファイルのName、Packager、Dummary、Descriptionの各フィールド
update アップデート可能な全パッケージをアップデート
update パッケージ名 指定したパッケージをアップデート

Copyright (C) 2002 - 2017 kawama All Rights Reserved. — Powered by WordPress

css.php