mieki256's diary



2007/07/22() [n年前の日記]

#2 [epia][vine][linux] EPIA機上のvnc、inetd、swatを設定

設定中。

vncを設定。 :

GUIツールを使いたいときもあるのだけど、実機のキーボード・マウスを触るのは面倒なので。

_昔の作業メモ を見ながら作業。
apt-get install vnc
apt-get install vnc-server
apt-get install XOrg-Xvfb
でインストール。

以前設定したときと違って、~/.vnc/xstartup 中の2行ほどコメントを外せば、通常のデスクトップが表示される状態になる、ように見える。

Windows機からアクセスできなくて悩む。おそらく、ファイアウォール ―― iptables なるものが絡んでるのだろうか。

試しに、ポート 5900-6000を開けてみた。/etc/sysconfig/iptables に以下のような行を追加。
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 5900:6000 -j ACCEPT
setup → ファイアウォール設定、で、ポートのところに 「5900-6000」と打ったらこんな感じの行が増えていた。つーか setup 経由のファイアウォール設定のやり方について、ドキュメントはどのへんにあるんだろう。そのへん、redhat系なら共通なんでしょうか。

再度 setup → ファイアウォール設定、をしたら、ポートのところが「5900-6000:tcp」となってた。最後に「:tcp」とか「:udp」とかつけるということかな。

…左上にツール名が出てるな。
system-config-securitylevel
で、該当画面を出せるらしい。

とりあえず、上記ポートを開けたらWindows機からアクセスできるようになった。 *1

vncの設定については、まだまだ続く。

Vine Linux は、inetdとxinetdのどちらが推奨なのか。 :

_TCP_Wapperとxinetdによるサービスとアクセス制御
_Linux/xinetdの設定 - Dream-Seed -Wiki版-

inetd より xinetd のほうが機能的には良い、ということなんだろうか?

_398: samba-swatでxinetdに対応してほしい
xinetdを導入するとsamba-swatが削除されてしまいます。 またこの状態でsamba-swatを導入するとxinetdが削除され てinetdになってしまいます。

398: samba-swatでxinetdに対応してほしい より

Vine は inetd を使っていたけど、redhatは xinetd を使ってるらしい。…上記の、samba-swat の件は、現在解決済みらしいけど。他のパッケージでも、xinetd に移行できてないところがありそうな予感。ひとまず inetd を使っておくか。それともこの際勉強ということで xinetd に移行してしまうか…。

apt-get install inetd
inetd で一旦設定してから、xinetd に移行すべく勉強しよう。

samba-swat をインストール。 :

apt-get install samba-swat
  • /etc/inetd.conf 中の、swatについて指定してる行のコメント指定(#)をはずす。swat stream tcp nowait.400 root /usr/sbin/tcpd swat みたいな。
  • /etc/hosts.deny を確認・編集。swat: ALL を記述。
  • /etc/hosts.allow を編集。 swat: localhost 192.168.0.0/255.255.255.0 みたいな感じに。アクセスできるIPを指定。
/etc/sysconfig/iptables に、以下を追加。
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 901 -j ACCEPT
それぞれを起動。再起動。
service inetd start
service iptables restart
http://hoge:901/ にアクセス。

ドキュメントが 404。何故。

vnc関係をさらに設定。 :

以前は gdm に対して設定したけど。今回、gdm.conf が見当たらなくて首を捻った。

_custom.conf で gdm にセッションを追加する
_オープンギャラリー:仮想フレームバッファ(Vine Linux 4.0編)

/etc/X11/gdm/custom.conf が該当設定ファイルになったのか。
[xdmcp]
Enable=true
を指定。以前は、
[daemon]
KillInitClients=false
も指定してたけど。今回は指定しなかった。

/etc/service に追加。
vnc-1152x864x24     5950/tcp
vnc-1152x864x8      5951/tcp
vnc-1024x768x24     5952/tcp
vnc-1024x768x8      5953/tcp
該当ポートに名前をつける、のかな。たぶん。

/etc/inetd.conf に追加。
vnc-1152x864x24 stream tcp nowait nobody /usr/sbin/tcpd /usr/bin/Xvnc -inetd -query localhost -once -geometry 1152x864 -depth 24 -pixelformat RGB888 -fp unix/:7100 -co /usr/lib/X11/rgb -securitytypes none
vnc-1152x864x8  stream tcp nowait nobody /usr/sbin/tcpd /usr/bin/Xvnc -inetd -query localhost -once -geometry 1152x864 -depth 8 -cc 3 -fp unix/:7100 -co /usr/lib/X11/rgb -securitytypes none
vnc-1024x768x24 stream tcp nowait nobody /usr/sbin/tcpd /usr/bin/Xvnc -inetd -query localhost -once -geometry 1024x768 -depth 24 -pixelformat RGB888 -fp unix/:7100 -co /usr/lib/X11/rgb -securitytypes none
vnc-1024x768x8  stream tcp nowait nobody /usr/sbin/tcpd /usr/bin/Xvnc -inetd -query localhost -once -geometry 1024x768 -depth 8 -cc 3 -fp unix/:7100 -co /usr/lib/X11/rgb -securitytypes none
該当ポートにアクセスがあったら、指定したプログラムを動かせ、ということかしら。

/etc/sysconfig/iptables に追加。
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 5950:5953 -j ACCEPT

/etc/hosts.deny に追加。
Xvnc: ALL

/etc/hosts.allow に追加。
Xvnc: localhost 192.168.0.0/255.255.255.0

service iptabels restart
service inet restart
gdm-restart
して、192.168.0.x:53 等にアクセス。

念のため、/etc/hosts.allow の指定を変えて、指定外のIPからアクセスできないことを確認。

vncconfig -iconic 
を起動すればクリップボードの共有ができるらしいので、gnomeのパネルに起動用のショートカット(?)を作成。

この方法で vnc を利用する場合、 ~/.vnc/xstartup は関係ないっぽいな…。

妹にも動作確認を頼んだ。RealVnc をインストールして、指定ホスト:指定ポートにアクセスしてくれ、みたいな。…アクセスできたっぽい。

proftpd を設定。 :

以前のメモを見ながら作業。

_TCP Wrapper + proftpd。
_swatchインストール。
_swatchの設定。

Vine 4.1 の場合、
  • perl-File-Tail
  • perl-Date-Calc
  • perl-TimeDate
はパッケージとして用意されてるみたいで。
apt-get install perl-File-Tail
apt-get install perl-Date-Calc
apt-get install perl-TimeDate
しかし、perl-Time-HiRes は、Vine 4.1 用のパッケージがない。

_@IT:サーバのログ監視ツールを使いこなそう(2/3) を参考にして、 _CPAN から Time::HiRes を持ってくる。
wget http://search.cpan.org/CPAN/authors/id/J/JH/JHI/Time-HiRes-1.9707.tar.gz
tar zxvf Time-HiRes-1.9707.tar.gz
cd Time-HiRes-1.9707
perl Makefile.PL
make
make test
su
make install

_SourceForge.net: Swatch から、swatch-3.2.1.tar.gz をDL。make。インストール。
tar zxvf swatch-3.2.1.tar.gz
cd swatch-3.2.1
perl Makefile.PL
make
make test
make install

/etc/swatchrc を作成。
watchfor /\[(\d+\.\d+\.\d+\.\d+)\]\) - Maximum login attempts/
        mail=root,subject=swatch(Maximum login attempts)
        exec /bin/echo in.proftpd: $1 >> /etc/hosts.deny
watchfor 以降の正規表現が、/var/log/messages に出てきたら、2行目、root にメールを送って、かつ、3行目、/etc/hosts.deny に in.proftpd: xxx.xxx.xxx.xxx という記述を追加する。

/etc/rc.d/init.d/swatch を作成。
#!/bin/sh
#
# chkconfig: 2345 42 42
# description: monitaring logs tool.

[ -f /usr/bin/swatch ] || exit 0
[ -f /etc/swatchrc ] || exit 0

. /etc/rc.d/init.d/functions

RETVAL=0
SWATCH_SCRIPT="/var/run/swatch"

# See how we were called.
case "$1" in
  start)
        # Start daemons.
        echo -n "Starting swatch: "
        /usr/bin/swatch -c /etc/swatchrc -t /var/log/messages --script-dir=$SWATCH_SCRIPT >/dev/null 2>&1 &
        RETVAL=$?
        echo
        ;;

  stop)
        # Stop daemons.
        echo -n "Shutting down swatch: "
        killproc tail
        RETVAL=$?
        echo
        ;;

  restart)
        $0 stop
        $0 start
        RETVAL=$?
        ;;

  status)
        status swatch
        ;;

  *)
        echo "Usage: swatch {start|stop|restart|status}"
        exit 1
esac

exit $RETVAL

サービスとして追加。
chkconfig --add swatch
chkconfig --list

/etc/logrotate.d/syslog を修正。ログローテート時に古いログを見続けないように。

古いソレ。
# cat /etc/logrotate.d/syslog
/var/log/messages /var/log/secure /var/log/maillog /var/log/spooler /var/log/boot.log /var/log/cron {
    sharedscripts
    postrotate
        /bin/kill -HUP `cat /var/run/syslogd.pid 2> /dev/null` 2> /dev/null || true
    endscript
}
新しいソレ。/etc/rc.d/init.d/swatch restart という行を追加してる。
# cat /etc/logrotate.d/syslog
/var/log/messages /var/log/secure /var/log/maillog /var/log/spooler /var/log/boot.log /var/log/cron {
    sharedscripts
    postrotate
        /bin/kill -HUP `cat /var/run/syslogd.pid 2> /dev/null` 2> /dev/null || true
        /etc/rc.d/init.d/swatch restart
    endscript
}

_scpコマンドを使ったファイルの転送 :

参考にさせてもらいつつ作業。
scp [オプション][転送したいファイル名][転送先のパス]
scp send_filename.txt user_name@host_name:target_directory_name
のように使うらしい。

*1: もしくは、ファイアウォールを無効にして動作確認だけする、という手も。service iptables stop。有効にするなら、stop ではなく start。

以上です。

過去ログ表示

Prev - 2007/07 - Next
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31

カテゴリで表示

検索機能は Namazu for hns で提供されています。(詳細指定/ヘルプ


注意: 現在使用の日記自動生成システムは Version 2.19.6 です。
公開されている日記自動生成システムは Version 2.19.5 です。

Powered by hns-2.19.6, HyperNikkiSystem Project