Linux

Fedora Core 5ではshutdownコマンドがない?!

haltコマンドがあるのでそれを使うと電源を落とせた

[メモ]Fedora Coreとsambaでプリンタ共有

何をやってつながったかのメモです。
なるべくGUIで設定するようにしてみました(でも、直接設定ファイルいじった方が早いかも・・・)

  • Xを起動して、プリンタ設定でローカルにつないだプリンタを登録
  • プリンタ設定の画面にある共有の設定を行う
  • Windowsのクライアントのファイアウォールで445などを通すように変更
  • いったんWindows再起動
  • マイネットワークからsambaサーバーをみて、プリンタのプロパティーを開く
  • ドライバを入れろと言ってくるので、PM-700Cを選択した(本当は670C)

そもそもsambaのブラウジングが怪しい感じなので、
http://www.samba.gr.jp/doc/browsing/browsing01.html
で勉強し直してみる

=

Apacheに複数のドメインを割り当てる

たとえば、一つのマシンをa-tak.comとhoge.comのWebサイト用に使用したいが、当然表示されるページは別にしたいと言う場合。

/etc/httpd/conf/httpd.confに以下のような指定を入れる

NameVirtualHost *:80 


    ServerAdmin yes@a-tak.com
    DocumentRoot /var/www/html/
    ServerName a-tak.com
    ErrorLog /var/log/httpd/error_log
    CustomLog /var/log/httpd/access_log combined


    ServerAdmin yes@a-tak.com
    DocumentRoot /var/www/htmlhoge/
    ServerName hoge.com
    ErrorLog /var/log/httpd/error_hoge_log
    CustomLog /var/log/httpd/access_hoge_log combined

a-tak.comのhtmlは/var/www/html以下に入れておき、hoge.comの方は/var/www/htmlhoge以下においておけば、それぞれアクセスされたドメイン名に応じたページが表示されます。

=

Apacheでディレクトリの一覧を表示しないようにする

デフォルトでは、index.htmlなどがないとアクセスされたディレクトリのファイル一覧が表示される。

これが嫌な場合はhttpd.confの

   Options Indexes FollowSymLinks

これを

   Options FollowSymLinks

Indexsの指定をはずせば、403Forbiddenが返るようになる。

=

Apacheのエラーページから詳細な情報を隠す

デフォルトでは、Apacheはページが見つからないなどのエラーページに細かいOSの情報なども表示してしまう。

Forbidden

You don't have permission to access /software/ on this server.
Apache/2.0.52 (Fedora) Server at a-tak.com Port 80

サーバーの細かい情報を外部に漏らすのはハッキングの手がかりを与えてしまうことになるので、あまりよろしくない。
http.confで以下を修正すると、細かい情報を表示しなくなる。

ServerSignature On

となっているのを

ServerSignature Off

とするとよい。

=

リバースプロキシとして動かす

この機能を使うと、特定のディレクトリ以下のコンテンツを他のサーバーから取得することができる。

ProxyPass /hoge/ http://192.168.0.2/hoge/
ProxyPassReverse /hoge/ http://192.168.0.2/hoge/

こうすると、ブラウザでhoge以下にアクセスすると、実際は192.168.0.2のサーバーにおいてある
データが取得されてブラウザに表示される。

crontabの時間設定

10 4 * * * /usr/sbin/learn-spam-ham hoge

最初の数字が「分」。後に「時」、「日」、「月」、「曜日」が続く

=

DiCEの設定

http://mjb.yi.org/txt/txt_039.htm

上記を参照

=

FedoraCore3でnamazuを使用する

yumでパッケージが用意されているので、それを使うと楽かも。

yum install namazu -y
yum install namau-cgi -y

でインストール。
kakasiも必要だがFedora Core 3には最初から入っていた(インストールの設定次第かもしれません)

インデックスを保管するディレクトリ作成

mkdir /usr/local/var/namazu/index/ -p

次にインデックスを作成するためのスクリプトを作成。
作成場所はどこでもいいです。たとえば、

vi /var/lib/namazu/mknmz_index 

として、

#! /bin/sh
export PATH=/usr/bin
mknmz /var/www/html -O /usr/local/var/namazu/index/ --html-split

と、インデックス作成対象のディレクトリを入れておく。

「–html-split」と指定するとページ内のアンカー毎に区切ってインデックスを作成するので、検索結果にアンカーへのリンクが表示されます。
(スクリプトの書き方はお作法に則っているかはちょっとわかりません)

あとは、このファイルに

chmod +x /var/lib/namazu/mknmz_index

として実行権限を与えておく。
この設定だと/usr/local/var/namazu/index/にインデックスが作られます。

/etc/namazu/namazurcの設定ファイルを編集

#Replace       /home/foo/public_html/  http://www.foo.bar.jp/~foo/
Replace       /var/www/html/  http://(自分のweb)/

ここは検索結果に表示されるリンクを置き換えるもの。
そのままだとローカルのパスが表示される。

ブラウザで
http://(自分のWeb)/cgi-bin/namazu.cgi
にアクセスすれば、検索フォームが表示されます。

/etc/namazu/mknmzrcの設定ファイルを編集

$ADDRESS = '自分のメールアドレス';

インデックスにしたくないパスがあれば正規表現で記述。

# $EXCLUDE_PATH = undef;
$EXCLUDE_PATH = "(/wiki)|(.*\\.tpl)"

インデックスを自動で作成する(ゴミ掃除も)

ゴミ掃除のスクリプトを作成。

vi /var/lib/namazu/gcnmz_index

として

#! /bin/sh
export PATH=/usr/bin
gcnmz /usr/local/var/namazu/index/

を記述してファイルにchmodで実行権限を与えておく

次に

crontab -e

で、

#namazu index
0 3 * * * /var/lib/namazu/mknmz_index

#namazu index clean
0 4 * * * /var/lib/namazu/gcnmz_index

をいれる。gcnmzの方は確実にmknmzが終わるぐらいの時間にした方がよさそう。

インデックスの作成場所を変える

インデックスの作成場所を変更したい場合は、
/etc/cron.daily/mknmz_indexのスクリプトの-Oの後ろを変えて、
/etc/namazu/namazurcの以下の設定を変えれば良い。

#Index         /usr/local/var/namazu/index
Index         /var/lib/namazu/index

#Template      /usr/local/var/namazu/index
Template      /var/lib/namazu/index

=

Fedora Core 3にMySQLのインストール

http://www9.ocn.ne.jp/~pcvolu/pcnet/fedopage14.htm

Fedora Core 3をUPnPルーターにする

前提

iptablesなどの設定は事前に済んでいて、Linuxが普通にルーターとして使えてることを前提に書いています。

入れたモノ

自分は以下のものを入れた

関連モジュールインストール

linux-igdのINSTALLをみるとlibupnpが必要との記述があるのでyumでインストール。

libupnp 1.4.1-1のインストール

yum install libupnpでインストール

libupnp-devl1.4.1-1のインストール(これは必要かわからんけど入れた)

yum install libupnp-devl

linux-igdインストール

linux-igd1.0をインストール

tar zxfv linuxigd-1.0.tar.gz
cd linuxidg-1.0
make
make install

起動

route add -net 239.0.0.0 netmask 255.0.0.0 eth1
/usr/sbin/upnpd eth0 eth1

eth1が内部向けのLANインターフェース
eth0が外部向けのWANインターフェース

メッセンジャーを起動してオプションの接続を開いたときに「UPnP ポート制限付き NAT (restricted)を経由してインターネット接続しています」とか出ていれば、たぶんok。

PS3の場合は接続テストをすればUPnPが有効かどうかわかる。

ほかのサイトではiptablesのリンクが必要とか、ソースを書き換えるなどの処方が書いてあったが、linuxigdのバージョンがあがっているからか、これらの処置は不要だった。

設定

自動起動するために/etc/rc.localの最後に以下を追加した

#UPnp
route add -net 239.0.0.0 netmask 255.0.0.0 eth1
/usr/sbin/upnpd eth0 eth1

参考

大変参考になりました。サンクス!

cpコマンドで確認なしで上書きできない

OSによってはcpコマンドにalias指定で-iオプションと結びつけられている可能性がある。

which cp

とすると、cpコマンドのエイリアス指定がわかる。Fedora Core 3では

alias cp='cp -i'
        /bin/cp

となる。

cpコマンドのヘルプを見ても-iを打ち消すようなオプションが無かったので、エイリアスの方をはずした

unalias cp

これでcpを実行すると確認なしに上書きされるようになる。

Fedora CoreでSWATを入れる

xinetdのonly_fromはスペースを空けて許可するところを複数指定できる。ここにローカルネットワークのIPを指定しておくこと。

http://192.168.1.1:901

のように、sambaを入れたサーバーの901に接続するとログイン画面が出るので、rootとパスワードを入れる。

実際の導入はこちらを参考に↓

http://www9.ocn.ne.jp/~pcvolu/pcnet/fedopage15.htm

Fedora Coreでネットワーク設定を行うツール

netconfig

です。すっかりど忘れ。

Fedora Coreのコンソールで文字化け

konはutf-8に対応してないからbtermというのを使う必要があるらしい こちらのFAQ参照::http://wiki.fedora.jp/?FAQ%2F%A5%B3%A5%F3%A5%BD%A1%BC%A5%EB%A4%C7%C6%FC%CB%DC%B8%EC%A4%F2%BB%C8%A4%A4%A4%BF%A4%A4

yum install bogl-bterm

でインストールする。 しかし、フレームバッファーモードでカーネルが動いていないとダメとのことなので、OS起動時のGRUBでaキーを押してvga=788を追加してEnterで起動する。 ログインしたら、

bterm

で実行。 bashが使いたいならばその後に

bash

と打つと良い。

Fedora Legacy Project Apt

http://d.hatena.ne.jp/hex/20040217

Redhat7.3のaptなどはこちらに。セキュリティー対策されたKernelもあるよ

fstabの設定

http://itbtech.itboost.co.jp/inst/inst_37.php

gzを圧縮、解凍する

gzファイルに圧縮する場合は

gzip 圧縮するファイル

すると、元のファイルに.gzが付いたファイルができあがる

複数のファイルを圧縮する場合はtarでまとめてから圧縮するらしい

tar cvf 作成ファイル まとめたいファイル まとたいファイル...

このようにまとめたいファイルを後ろにスペース区切りで列挙する。

除外したいディレクトリがある場合は

tar cvf /var/hoge/* --exclude *cache --exclude *.log

このように–excludeで列挙する

解凍する場合は gunzip 解凍するファイル とする。

info@xxx.xxx宛にメールするとnobody宛に届く

不確定情報 PostfixとProcmailを使っていて、info@xxxx.xxxやpostmaster@xxxx.xxxに送ると送り主にはこんな内容が返ってくる時がある。

Command output: procmail: Couldn't create "/var/mail/nobody" procmail:

どうやら、root宛のメールがnobodyに行っているが、メール用のフォルダが無くてエラーになっている様子。

/etc/aliasesが絡んでいるっぽいがちょっと良く分かりません。

ジャンボフレーム設定

ifconfig eth0 mtu 7000 などとする。

ジャンボフレーム解除は

ifconfig eth0 mtu 1500

ちなみにWindowsはLANカードの構成のところに「最大フレームサイズ」という設定がある。 ジャンボフレームはネットワーク内でもっとも少ないフレームサイズに合わせないといけないらしい・・・。

nslookupの使い方

よく使うのは、問い合わせを行うサーバーを設定する

lserver [サーバー名]

あと、そのドメインの情報を表示対場合は

ls [ドメイン名]

ぶっちゃけここにすべて書いてある http://www.atmarkit.co.jp/fnetwork/netcom/nslookup/nslookup.html

OpenVPN

-設定例 –http://www.komoto.org/vpn/openvpn.html

二つの拠点で名前解決でたどり着けないとダメなので、ドメインをとったり無料のサブドメインサービスなどを使って、名前でアクセスできるようにしておく必要があります。 無料のサブドメインはJSPEED:http://ddns.j-speed.net/などがあります。 JSPEEDはバナーを貼らないといけないとか結構手続きは面倒ですが・・・

上のリンク先の説明では/etc/openvpnなどが出てきますが、最初は存在しないので

mkdir /etc/openvpn

で先に作っておく必要があります。

作成した*.upというファイルには実行権限を与える必要があります。

chmod +x /etc/openvpn/hoge.up

あと、/etc/rc.d/init.d/openvpnという起動スクリプトが上のリンク先の説明には出てきていますが、実際にはこの手順だけでは上記ファイルはできません。

READMEをちゃんと読むと書いてあります。 sample-scripts/openvpn.init にサンプルの起動スクリプトがあるとのことなので、これをコピーしてopenvpnにリネームして

chkconfig --add openvpn

として登録しましょう。

当然、tun0の通信をファイアウォールで許可しておく必要もあります

PHPのページが文字化けする

/etc/php.ini で、

default_charset = "EUC-JP"

したら化けまくってしまいました。

;default_charset = "EUC-JP"

Apacheと一緒でこのような設定はコメントアウトした方が良いみたい。

あと、mb-stringが入っていないとだめな場合も。 ここのRSSの文字化けはそれが原因でした(初歩的な・・・)

Fedora Core 3ならば、

yum install mb-string

でイントールです。

Postfixで転送設定

/etc/postfix/virtual

を編集

a-tak@a-tak.com a-tak
a-tak@hoge.com a-tak

という感じでアドレスと結びつけるLinuxユーザーを列挙。

postmap /etc/postfix/virtual

で設定を反映。

service postfix reload

でサービスを再読込すればOK

Sambaでパスワードなしのユーザーを使う

既にパスワードを設定してしまっているユーザーのパスワードを消す場合(パスワードなしにする)場合は

smbpasswd -n ユーザー名

とする。

さらに、パスワードなしのユーザーがログインできるようにするためには、 smb.confのGlobalセクションに

null passwords = yes

を追加する必要がある(もちろんその後はサービス再起動)

SELinuxでセキュリティーの高いStrictポリシーを適用する

最初に適用されているTargetedポリシーは一部のデーモンだけにゆるめの設定を行うポリシーらしい。 それよりももっと厳しいセキュリティーを適用するにはStrictポリシーを使う。

設定は以下を参照。 http://www.selinux.gr.jp/documents/FC3-SELinuxmemo.html#1-9

以下は作成途中です

Strictポリシーを編集するには

yum install selinux-policy-strict-sources

で、Strictポリシーソースをダウンロード

/etc/selinux/strict/src/policy にソースが落とされるので、このディレクトリに移動して、ポリシーを変更して

make clean; make reload; make relabel

を実行。

SELinuxを設定する

SELinuxのモードを操作する

Permissiveモードにして動かすと、SELinuxのチェックでログは出力されるが、動き自体は制御されない。 すでにSELinux無効の状態で動いている環境から有効にしたい場合は、このログが出なくなるようにポリシーを設定していけば良い。

現在のモードは

getenforce

で表示される。これがPermissiveであればパーミッシブモードで動作しているのでSELinuxのセキュリティー機能は動作しない。

Permissiveモードにするには

setenforce 0

とし、逆にSELinuxの制御を有効にする場合(Enforceモード)

setenforce 1

とする

ドメインやタイプを確認する

プロセスに割り当てられたドメインを確認するには、

ps -eZ

リソースに割り当てられたタイプを確認するには

ls -Z

とする。

参考 http://www.selinux.gr.jp/

SquirrelMailで振り分け設定する

特定の条件のメールをふぉる谷振り分ける機能。デフォルトではオフになっているが、./Configureでpluginsを見ると、filtersというのがある。これをインストールすれば良い。

SSHを使って自動バックアップ

http://www-6.ibm.com/jp/developerworks/linux/040723/j_l-backup.html

system-switch-mailがインストールできない

Fedora Core 3でsendmailからpostfixに移行したいが、その移行ツールのsystem-switch-mailがうまくインストールできないことがある。

どうやら、gnome上で動くguiツールも一緒に入れないといけないようだ。

viショートカット

,一番最後の行にジャンプ,G

,n行目にジャンプ,nG

,文字列検索,/検索文字列

,続けて検索,/

,コピー,Y

,ペースト,p

,一画面下,ctrl + f

,一画面上,ctrl + b

,行頭に移動,0

,行末に移動,$

,詳細情報(行数)表示,ctrl + g

関連記事はCMの下をご覧ください