Midnightjapan

Tag: 64bit

CentOS5.5(64bit)にPPTPサーバーを構築

by jun on 6月.09, 2011, under Linux

CentOS5.5(64bit)にPPTPサーバーを構築します。

あちこちの情報見ながらなので、正確でない情報があったらごめんなさい。

まずはPPTPDの最新版をとってきます。

# wget http://downloads.sourceforge.net/project/poptop/pptpd/pptpd-1.3.4/pptpd-1.3.4.tar.gz

「CentOS5の場合、pppのバージョンが2.4.4の為、このままパッケージ化してインストールすると下記のようなエラーが発生する。」
との情報を得たため、書いてある通りに修正する。
まずは解凍し、予めPPPの2.4.4で使用出来るようspecファイルを編集する必要がある。

# tar zxvf pptpd-1.3.4.tar.gz
# vi pptpd-1.3.4/pptpd.spec

57行目付近を下記のように編集する。

(echo '#undef VERSION'; echo '#define VERSION "2.4.3"') >> plugins/patchlevel.h
      ↓
(echo '#undef VERSION'; echo '#define VERSION "2.4.4"') >> plugins/patchlevel.h

編集後再度アーカイブする

# tar zcvf pptpd-1.3.4.tar.gz pptpd-1.3.4

アーカイブからRPMパッケージを作成

# rpmbuild -ta --target x86_64 pptpd-1.3.4.tar.gz
# mv /usr/src/redhat/RPMS/x86_64/pptpd-* . (出来上がったパッケージを移動)

ここまででCentOS5.5用 64bit PPTPサーバーのRPMパッケージが完成。

PPTPとPPPパッケージをインストールする

# yum install ppp dkms -y
# rpm -ivh pptpd-1.3.4-1.x86_64.rpm

ひと段落したら、設定ファイルを編集します。

設定ファイル1:etc/pptpd.conf

# vi /etc/pptpd.conf

最終行に下記を入力する

localip サーバのIP
remoteip PPTPクライアントに割り当てるスコープ
例:
localip 192.168.0.254
remoteip 192.168.0.100-110

設定ファイル2:/etc/ppp/options.pptpd

# vi /etc/ppp/options.pptpd

18行目付近にあるname項目を編集する

name
↓
name 任意の文字列(ホスト名等)
例:
name pptpserver

設定ファイル3:/etc/ppp/chap-secrets

# vi /etc/ppp/chap-secrets

ユーザ名とパスワードを設定する

# Secrets for authentication using CHAP
# client        server  secret                  IP addresses
####### redhat-config-network will overwrite this part!!! (begin) ##########
midnightjapan      pptpserver      "*****"       *
####### redhat-config-network will overwrite this part!!! (end) ############

設定ファイル4:/etc/sysctl.conf

# vi /etc/ppp/chap-secrets

ip_forwardを許可する

# Kernel sysctl configuration file for Red Hat Linux
#
# For binary values, 0 is disabled, 1 is enabled.  See sysctl(8) and
# sysctl.conf(5) for more details.

# Controls IP packet forwarding
net.ipv4.ip_forward = 0 →これを1に変更

sysctl.confの変更を適用する

# vi /etc/ppp/chap-secrets

設定ファイル5:/etc/modprobe.conf の設定

# vi /etc/modprobe.conf 

pppオプションを設定する

# PPTPD Setting
alias char-major-108 ppp_generic
alias tty-ldisc-3 ppp_async
alias tty-ldisc-14 ppp_synctty
alias ppp-compress-18 ppp_mppe
alias ppp-compress-21 bsd_comp
alias ppp-compress-24 ppp_deflate
alias ppp-compress-26 ppp_deflate
alias net-pf-47 ip_gre

設定ファイル6:iptablesなどのファイアウォールを開通させる

iptables -A INPUT -p tcp --dport 1723 -j ACCEPT
iptables -A INPUT -p gre -j ACCEPT
iptables -A INPUT -i ppp+ -j ACCEPT
iptables -A FORWARD -i ppp+ -j ACCEPT

設定ここまで


ひと段落したら起動して起動確認

PPTP起動

# /etc/init.d/pptpd start
# chkconfig pptpd on

もちろん、ルーターからのアクセスをなんとかしなければね。
私はポートフォワードで対応しましたよ。

コメントなし :, , more...

CentOS5.5 64bitに改竄検知システム「Tripwire2.4.2」を導入

by jun on 11月.26, 2010, under Linux

以前CentOS5.3やら5.4上でTripwireを構築したときは2.4.1だったせいか64bitじゃなかったせいか、わからないが普通には進まなかったので

ひっかかったところ、つまずいたところを対処メモすることにした。

# wget http://jaist.dl.sourceforge.net/sourceforge/tripwire/tripwire-2.4.2-src.tar.bz2
# tar jxvf tripwire-2.4.2-src.tar.bz2 ← tripwire展開
# chown -R root:root tripwire-2.4.2-src ← 権限をRootへ
# cd tripwire-2.4.2-src ←フォルダー内へ
# patch -p1 < ../tripwire-version.patch ← 下記のパッチを参照

残念ながらこのままコンパイルしてもエラーがでるので、いくつかインストールの必要がある。

入っていないと怒られるものは下記のとおり

1)automake コンパイルするとエラーがでてaclocal1.9が必要だ!と怒られるため「automake1.9」に入っているものを使う。configureの1904行目「am__api_version=”1.8″」になってる場合もあるらしいです。OSによって慎重に扱ってください。今回の構成ではパッチをつかって対応します。

# rpm -ql automake ← automakeがインストールされているか確認
# yum -y install automake ← automakeインストール

2)C++コンパイラがないと怒られるのでこれも必要。

# yum remove gcc-c++ ← 削除
# yum -y install gcc-c++ ← 再インストール

3)さらにconfigureにsendmailのパスを追加設定する必要があります。ソースなんで仕方ないですね。

# vi install/install.cfg
 if [ -z "$path_to_sendmail" ] ; then
# TWMAILPROGRAM=""
TWMAILPROGRAM="/usr/sbin/sendmail" ← sendmailへのフルパスを記述
else
TWMAILPROGRAM="${path_to_sendmail} -oi -t"
fi

4)意味があるかないか不明だけど、一応CentOS5.5では効果があるらしい。「tripwire-version.patch

*configure関連のファイルを修正するとMakefileの再構成を行うようです
*aclocal, automakeが呼び出されますが、設定が古いので修正しています
*CentOS5.5ではaclocal-1.9,automake-1.9が使われています
*manのversion設定は修正していません

以上が終わったらコンパイルします。

# cd tripwire-2.4.1.2-src ← tripwire展開先ディレクトリへ移動
# ./configure --prefix=/usr/local/tripwire sysconfdir=/etc/tripwire && make && make install

あとは、神様の通りです。

CentOSで自宅サーバー構築 ファイル改竄検知システム導入(Tripwire)

コメントなし :, , , more...

VMware server 2 Remote Console Plug-InをWindows7 64bitで利用する。

by jun on 11月.23, 2010, under Linux

VMware Server 2を稼動してから半年がたとうとしている。

いろいろ立ち上げには苦労したけれど、今ではほぼノーメンテナンスで動作している。

時間がたつと困ることはサーバーは変わらずともクライアントはメーカーの努力により進化してくるということ。

わたしもついに表題のような利用環境の構築を余儀なくされた。

VMware Server 2 はLinux上で32bitで稼動中。

クライアントは64bit Windwos7。

この環境では少なくとも私の環境では動作しなかった。32bit windows7では問題なし。

そこで解決策を見つけ環境が整ったので下記にメモをする。

まずはLinux版のVMware Server 2 の管理画面にブラウザでアクセスする

https://サーバーアドレス:8333/

管理画面からコンソールタブを開くと「Install plug-in」というリンクがあるので、クリックする。

そうです。ここで躓いた人はブラウザが対象外ということです。

IE8/9対応。FireFoxとChromeとSafariは動作しません。

このPlug-inがインストールされるとブラウザから仮想サーバーの画面にアクセスできる。

ところが「Summary」タブを使って「Generate Virtual Machine Shortcut」からショートカット作成し直接仮想画面を表示することができる。

これは、Playerなどと同じように別のアプリケーションで開くのと同じです。

トラブルによりプラグインをインストールできない、またはダウンロードできない場合は下記からファイルをとりだしてください。

/usr/lib/vmware/webAccess/tomcat/apache-tomcat-6.0.16/webapps/ui/plugin/

プラグインのインストールが終わったら使えるように思いますが、残念ながら使えません。

「Generate Virtual Machine Shortcut」を実行しても作ることができません。

そこで、インストールされた「vmware-vmrc.exe」を使って直接ショートカットを作ります。

細かいオプションも正確かわかりませんし、強制接続のようなもなのでおすすめはできません。

正常にできないので問題の解決策としてとらえてください。

1)ショートカット作成

2)プロパティー編集

3)リンク先を変更

“C:\Program Files (x86)\Common Files\VMware\VMware Remote Console Plug-in\vmware-vmrc.exe” -h <サーバーのIPアドレス>:8333 -M 16

これで接続が可能です。

1 コメント :, , , , more...

Centos5.5 リリース

by jun on 5月.16, 2010, under Linux

今朝は、日曜日ということもあって、朝早くから会社でネットワークの配線と配置変更を行った。

以前からネットワークをとりあえずつなげただけになっていたため、どうもギガにしてるのにいまひとつ重たい感じが否めなかったため

いっぺんに整理した。

CentOS は32bitが1台と64bitが1台動いている。

夜間にyumアップデートするようになっているため、5.5になったんだろう。

RHELでは4月にアップデートが行われたので、事実上1ヶ月遅れのリリースとなるようですね。

RHELチェックして、新しい機能も熟知しておかなければ・・・・

まだ、Centos5.4も完全にマスターしたわけじゃないんだけれど・・・さ、がんばりましょう。

詳しく調べたわけじゃないけど、たしかKVM(Kernel-based Virtual Machine)でメモリバルーニング搭載されてます。

Centos5.5で実装されてるかはわかりません。これでうちのi7での性能も向上するかなぁ・・・

内容ちがったかな?w 詳しくはご自分でお調べをw

いろいろわかったこと。

32bit・・・なんかわかんないけど硬直してた。原因究明中。Lsync中にとまっていたもよう。なにもうけつけてくれませんでした。

64bit・・・硬直なし。xinetd+Rsyncとvmwareが起動しなくなった。

/usr/bin/vmware-config.pl を実行したら、なんの問題もなく動き出しました。

現在LOG解析中。でも、いままでの影響からしたら問題なし!Centos5.5すばらしい!・・・かな?w

コメントなし :, , , more...

[Centos5.4-64bit] Lsync+Rsyncでのリアルタイムバックアップが停止(続編1)けど動いて調子に乗ってまたとめた!?

by jun on 5月.13, 2010, under Linux

/etc/sysctl.conf 内の設定を変更して1UIDあたりの最大プロセス数を増加させて動作するようになったLsync。

ならばとやめればいいのに、ほかのフォルダーのバックアップも本格的に実行したくなってしまい、Lsyncのコンフィグから再度設定。

起動スクリプトを下記のとおり変更。

!/bin/bash
## lsyncd
## chkconfig: 345 56 50
# description: xinetd is a powerful replacement for inetd. \n# xinetd has access control mechanisms, extensive \n# logging capabilities, the ability to make services \n# available based on time, and can place \n# limits on the number of servers that can be started, \n# among other things.## processname: /opt/lsyncd/binlsyncd
#Source function library
. /etc/rc.d/init.d/functions
PATH=$PATH:/sbin:/bin:/usr/bin:/usr/sbin:/usr/local/lsyncd/bin
# Soruce networking configuration
[ -r /etc/sysconfig/lsync ] && . /etc/sysconfig/lsyncd
option="$SHORT_LOG $IGNORE_START_ERRORS $DEBUG"
RETVAL=0
prog="/usr/local/bin/lsyncd"
start(){
echo -n $"Starting $prog: "
daemon $prog $option
RETVAL=$?
echo
touch /var/lock/subsys/lsyncd
return $RETVAL
}
stop(){
echo -n $"Stopping $prog: "
killproc $prog
RETVAL=$?
echo
rm -f /var/lock/subsys/lsyncd
return $RETVAL

}

reload(){
echo -n $"Reloading configuration: "
killproc $prog -HUP
RETVAL=$?
echo
return $RETVAL
}

restart(){
stop
start
}

condrestart(){
[ -e /var/lock/subsys/lsyncd ] && restart
return 0
}

# See how we were called.
case "$1" in
start)
start
;;
stop)
stop
;;
status)
status $prog
;;
restart)
restart
;;
reload)
reload
;;
condrestart)
condrestart
;;
*)
echo $"Usage: $0 {start|stop|status|restart|condrestart|reload}"
RETVAL=1
esac

exit $RETVAL

ここで、設定(/etc/lsyncd.conf を利用せず、あらたにXMLで設定できるように /etc/lsyncd.conf.xml)を下記のように追加して変更します。

<lsyncd version="1">
		<!--
		This is a default config file template for lsyncd.
		Actually all settings are optional, if you delete them
		lsyncd will use the option value (which is likely identical
		to the values specified as defaults in this template)
		- Happy Syncing! -
		-->
		<settings>
		<!--uncomment to log all debug messages.-->
		<!--debug/-->
		<!--uncomment to log only errors.-->
		<!--scarce/-->

		<!--uncomment to not detach, log to stdout/stderr.-->
		<!--no-daemon/-->
 		<!--uncomment to not call any actions, run dry only.-->
		<!--dryrun/-->
		<!--uncomment to exclude file handled to rsync.-->
		<!--exclude-from filename="/tmp/exclude"/-->
		<!-- the file to log messages -->
		<logfile      filename="/var/log/lsyncd"/>
		<!--Specify the rsync (or other) binary to call-->
		<binary       filename="/usr/bin/rsync"/>
		<!--uncomment to create a file containing pid of the daemon-->
		<!--pidfile      filename="/var/run/lsyncd.pid"/-->
		<!--this specifies the arguments handled to the rsync (or other)
		binary.

		option is the default literal.
		only '%r' will be replaced with r when recursive
		operation is wanted, d when not.
		exclude-file will be replaced with -exclude-from FILE
		source will be the source path to sync from
		destination will be the destination path to sync to -->
		<callopts>
		<option text="-lt%r"/>
		<option text="--delete"/>
		<exclude-file/>
		<source/>
		<destination/>
		</callopts>
		</settings>

		<directory>
		<source path="/共有1"/>
		<target path="rsync側IPアドレス::設定名1"/>
		</directory>
		<directory>
		<source path="/共有2"/>
		<target path="rsync側IPアドレス::設定名2"/>
		</directory>
		<!--
		You can specify even more than one source/destination pair,
		all will be synced.
		 Please take care you do not make any with other source/target pairs.
		-->
		<!--directory>
		<source path="/home/axel/lsyncd-svn/3"/>
		<target path="/home/axel/lsyncd-svn/4"/>
		</directory-->
</lsyncd>
# /etc/rc.d/init.d/lsync restart
これでエラーなしに起動したら問題なし

無事にLsyncとRsyncが打ち合わせをはじめ、膨大なログの記録がはじまりました。

ところが、またエラーでLsync側が止まりました。

Thu May 13 19:33:20 2010: ERROR: Cannot add watch /共有場所2 (28:No space left on device)

またプロセス足りなくなったみたい。フォルダーはいったいいくつのあるのかしら・・・調べてみると。+14,469フォルダ。
というわけで4倍の32,768に設定。

# vi /etc/sysctl.conf
  -> fs.inotify.max_user_watches = 32768 # 新しい行を末尾に追加
# /sbin/sysctl -p
これで設定は完了して、反映されます。
#/etc/rc.d/init.d/lsyncd restart

問題なく動いてくれるはずだが・・・セキュリティーの面で本当に問題ないんだろうか・・・1つのUIDで多量のプロセスが扱えるように設定してしまった。
PHPの送信されてくるデータの最大バッファサイズの設定のようなものだが、あれとはレベルが違う。
ネットを探してもあまりいい参考はでてこなかった。

コメントなし :, , , , , more...



何かお探しですか?

以下にキーワードを入力してサイト内検索が可能です:

Still not finding what you're looking for? Drop a comment on a post or contact us so we can take care of it!