apacheのモジュールの確認方法

2012/03/15

まずは、apacheのパスを知る必要がある。

$ ps aux

で、起動中のプロセスをみると、httpdが立ち上がってるので、そのパスをコピる。

$ /○×/△□/httpd -V

と打つと、コンパイル時のオプションがでるので、rootとconfig fileを探す

HTTPD_ROOT=”○×/httpd”
SERVER_CONFIG_FILE=”○×httpd.conf”

見つけたら、コンフィグファイルを開いて、モジュールのロードを確認します。


freebsd5系にapacheを入れる

2012/02/16

ってことで、古いバージョンのfreebsdを入れたい時の続き。前回FreeBSD5系を入れて、5.5にアップデートしたので、今度は、apacheを入れます。

困ったことに、例によって例のごとくportsで入れようと思っても、エラーになっちゃいます。

ってことで、

http://httpd.apache.org/download.cgi

から、ソースをダウンロードして、インストールします。

http://httpd.apache.org/docs/2.2/ja/install.html

に丁寧に書いてあるので、手順通りにインストールすると完了。


samba 3.5 をインストールした その2

2012/02/15

インストールについては、その1を見てください。

今回の実際のフォルダ構成と、設定ファイルを忘備録的に載せておきます。

sambaで構築して共有フォルダにアクセスするのは、Windows XP、Vista、7 32bit、7 64bit、Mac OSXの各バージョンのPC。

アカウントについては、IDが、user1~で、グループは全部publicと同じにしておく。

フォルダ構成は、下記のとおり。

/home/public2 # 共有フォルダのルート。

+– public # みんなで、読み書きするフォルダ。

+– user1 # user1用のフォルダ、user1のみ、読み書きできて、他のユーザーは、読むだけできる。

+– user2 # user2用のフォルダ、user2のみ、読み書きできて、他のユーザーは、読むだけできる。

/home/public2 は、パーミッション750。所有者はrootでグループは、public。
/home/public2/public は、パーミッション770。所有者はrootでグループは、public。
/home/public2/user1 は、パーミッション750。所有者はuser1でグループは、public。

のような形で権限を付与しておく。

smb.conf のファイル内容は下記のとおり

[global]
workgroup = WORKGROUP
server string = public Samba Second
netbios name = smb2
hosts allow = 127. 192.168.1.
unix extensions = no
log file = /var/log/samba/log.%m
max log size = 50
security = user
passdb backend = tdbsam
load printers = no
disable spoolss = yes
show add printer wizard = No
dns proxy = No
ldap ssl = no
unix charset = UTF-8
display charset = UTF-8
dos charset = CP932
[public2]
comment = public Share Space2
path = /home/public
public = yes
writable = yes
write list = +public
valid users = +public
inherit permissions = yes

MacとWindowsが混在してアクセスする場合、unix extensions はnoにしておかないと、Macで保存したファイルのパーミッションが、inherit permissions、create mask、force create mode などを軽く無視して、644とかになるファイルが出てくる。無視するファイルはMacのシステムファイルがくっついたファイルみたい。

veto files = /.DS_Store/.??*/
delete veto files = yes

を指定すると、Macのシステムファイルの.DS_Storeと.で始まる2文字以上のファイルを表示しないようにできます。
delete veto files は、フォルダ削除に一緒に消すかどうからしいです。
指定すると確かに、ファイルは見えなくなりますが、 マッチの処理で処理が多少重いようで、反応が悪くなります。
Windowsからは特に問題ありませんでしたが、今回のサーバーのスペックが低いせいか、Macからだとファイルが使用中でコピーできないというエラーが頻発したので、最終的にはコメントアウトしました。どうせ隠しファイルなので、Windowsの初期設定だと見えないしね。

Macで共有フォルダへのエイリアスを作成する場合は、フォルダ名が同じエイリアスはうまく作れないようです。
最初はpublicというフォルダ名にしていたのですが、publicはすでに稼働中だったので、public2にしました。

今回のようなフォルダ構成にする場合は、 create mask、directory maskを設定すると各ユーザー用スペースも同じパーミッションになってしまうので向いていない。inherit permissionsを使うのが正解。

dns proxy、ldap sslは、必要かどうか検証していない。とりあえず前設定してたので、そのまま使った。


samba 3.5 をインストールした

2012/02/15

Centos 6.2をインストールしたサーバーに、sambaを入れてみた。というかsambaとして使うのがこのサーバの目的。

前にsamba3.0を入れかけてたので、それを見ながら作業した。

まず、yumにインストール

# yum -y install samba

現時点では、samba 3.5.10がインストールされる。

入れ終わったら、念のため、バージョン確認してみる。ちなみに、バージョンの確認は、

# smbd -V

でできる。

smb.confを変更する。

smb.conf は、/etc/samba/smb.conf にある。

コメントで説明を書いているが、#があると、その1行全部がコメント扱いになるという記事があった(未検証)ので、コメントは削除した方がいいかもしれない。

まず、[global]セクションの変更

workgroup = WORKGROUP # PCに合わせる
server string = Samba second # ネットワークコンピュータで一覧の時の説明に使われる
netbios name = smb2 # ネットワークコンピュータの一覧の時のサーバ名で使われる
hosts allow = 127. 192.168.1. # 接続を許可するIPアドレス。127.0.0.0/8 と 192.168.1.0/24 を許可

log file = /var/log/samba/log.%m # ログファイルの場所
max log size = 50 # ログファイルの最大容量。KB単位

security = user # ユーザー認証を行う。shareだと誰でもウェルカム
passdb backend = tdbsam # パスワード認証方式。TDB形式のデータベースを指定というか初期値のままでok

unix charset = UTF-8 # ここから3つで文字コードの設定。unixがシステムの、displayがブラウザ表示用、dosがwindows用らしい
display charset = UTF-8
dos charset = CP932

unix extensions = no # macがsambaに参加するときはこれを入れておかないと作成されるファイルの権限の問題ですごい苦労する。

Printing Options と[printers]にあるプリンタ用の設定を全部コメントアウトし、

disable spoolss = yes

を追加すると、windowsのネットワーク一覧で、プリンタ関係の表示されなくなるっぽい。

[homes]セクションに各ユーザーごとの専用領域の設定を入れる。今回は使用しないので、すべてコメントアウト

[public]セクションについては、まず、かっこの中の名称が共有フォルダ名になる。pathと合わせる必要ない。

public = yes # yesにすると、認証なしになるらしい。と思ってたけど、yesで認証されてる
comment = public space # コメントだけど、どこにでるのか今一つ不明
path = /home/public # publicとして公開するスペースのディレクトリ
writable = yes # 書き込み可否
write list = +public # 書き込み権限を設定。+をつけるとグループ名、つけなければユーザー名、スペースで区切る。
valid users = +public # 上の設定と違いが今ひとつわからない。
inherit permissions = yes # パーミッションを継承する。

ユーザーを追加する。その際 -g でグループを指定していると楽かもしれない

# useradd -g グループ名 testuser

で、testuserを追加して、pdbeditでsambaユーザーの設定をする

# pdbedit -a -u testuser

smb.confを変更したら

# /etc/rc.d/init.d/smb reload

で設定を読み直す。

ファイアーウォールの設定も必要です。
GUI環境があれば、管理のファイアーウォールからsambaにチェックを入れれば、完了です。簡単です。

最後に、(まぁ最後じゃなくてもいいんだけど)
SELinuxをどうにかします。
正しく設定してもいいんですが、なかなか複雑なので、習熟に時間がかかりそうです。あと、家庭内で使ってるとか、数人でLAN内で使ってるとかそんなのであれば、無理に有効にしなくてもいいみたいです。ということで、無効にしました。そのうち試してみます。

getenforce

で、現在の設定がわかります。初期値のままであれば、

> Enforcing

と出ると思います。

setenforce 0

で一時的に無効にできます。
永続的に、無効にするには、configをいじります。

# vi /etc/sysconfig/selinux
で、SELinuxの設定ファイルを開いて
SELINUX=disabled
に変更します。再起動かければ、無効になります。

実際のフォルダ構成と、設定ファイルは、次回まとめます。


古いバージョンのfreebsdを入れたい時

2012/02/13

何らかの理由で古いバージョンのfreebsdをインストールしたいときは、isoイメージを下記から入手する

ftp://ftp-archive.freebsd.org/pub/FreeBSD-Archive/old-releases/i386/ISO-IMAGES/

今回は、5.4を使うので、

ftp://ftp-archive.freebsd.org/pub/FreeBSD-Archive/old-releases/i386/ISO-IMAGES/5.4-RELEASE-i386-bootonly.iso

を使ってみる。もちろん5.4-RELEASE-i386-disc1.iso と 5.4-RELEASE-i386-disc2.iso を使ってもいい。

bootonlyを使う場合は、インストールメディアをFTPを選んでURLで

ftp://ftp-archive.freebsd.org/pub/FreeBSD-Archive/old-releases/i386/5.4-RELEASE/

を指定する。

カーネルのアップデートとかは、freebsd-update はいくつかのファイルのおいてるサーバーが消えているので、使えない。

cvsupで、ソースコードを同期して、カーネル、ユーザーランドをmakeします。

ただ、cvsupのインストールは、portsからは、やっぱり、いくつかのファイルが取得できなくて、失敗するので、packageでインストールします。

packageは、上のftpサーバから取ってきて、

pkg_add パッケージ名.tbz

で、インストールする。ちなみに、fastest_cvsup を使うなら、potsからインストールできる。


centos6.2のインストール

2012/02/09

centos6.2 を古いPCにインストールする。

ドライブがDVD対応じゃないので、netinstallを使うことにする。手順は要点だけ。

  1. まず、isoをダウンロード。http://www.centos.org/に行って、6.2のCentOS-6.2-i386-netinstall.isoをダウンロードして、CDに焼く。
  2. CD食わせて、起動。『Install or upgrade an existing system』を選べばよい。画面が映らなかったら、『Install system with basic video driver』を選ぼう。
  3. メディア検査なので、飛ばしてよい。『Skip』選択。
  4. インストールデータの媒体を聞かれたら、『URL』を選択。
  5. URLを入れる画面になるので、動いているサーバを指定する。今回は
    http://ftp.riken.jp/Linux/centos/6/os/i386/images/install.img
    を指定。
  6. イメージが取得できれば、welcome画面が表示される。
  7. ホスト名をFQDNで指定する。
  8. ディスクパーティションは、普通は『すべての領域を使用する』を使うんじゃないかな。『パーティションのレイアウトをレビューまたは修正』のチェックを入れておくと、確認できる。
  9. ルートとswapとbootの領域を勝手にとってくれる。2ドライブだったが、/home が残り全部あてられてて、ちょうどいい感じだった。
  10. ソフトウェアは、初期値はMinimalだけど、Minimal Desktopを選んだ方が便利だとおもうので、そちらを選択し、『今すぐカスタマイズ』をチェックして次へ
  11. 『ベースシステム』の『Perl のサポート』『ネットワーキングツール』、『開発』の『開発ツール』『その他の開発』を追加。

これでインストールが始まり、しばらく待ちます。

  1. ユーザー作ったり、時間設定したり。
  2. Kdumpxは、メモリーが足りないから無効になった。メインメモリ2GBじゃ足りないらしい。どっかでみたが、4GB以上必要らしい。

ということで、とりあえず、インストール完了。

Minimal Desktopだと、管理メニューにファイアーウォールが入っていないので、後で入れるか、Desktopを選んどく必要がある。

後で入れる場合は、『A graphical interface for basic firewall setup』だと思う(未検証)


virtmapsの使い方

2011/07/01

etc/virtmaps

にファイルがあるんので、そのファイルを編集します。

基本的には、

xx@yy.com zzz

というような形で記述します。

vnewvirtmaps

で更新できます。