DVDのコピーツールにk9copyというのがあるらしい。面白そうなのでインストールに挑戦。
まず、k9copyの入手。
k9copyのサイトにいき、左側の方にあるDownloadをクリックするとDownload先が出てくる。俺の場合はFedora Coreの1.1.1-3 for FC7 (Gustavo Vieira)を選択し、念のためsourceファイルの
k9copy-1.1.3-1.src.rpmを選択した。このファイルを rpm/SRPMディレクトリに保存する。
保存後
$ cd rpm/SRPMS/
$ rpm --rebuild k9copy-1.1.3-1.src.rpm
とrebuildしようとしたら、
エラー: ビルド依存性の失敗:
hal-devel は k9copy-1.1.3-1.i386 に必要とされています
kdelibs-devel は k9copy-1.1.3-1.i386 に必要とされています
libjpeg-devel は k9copy-1.1.3-1.i386 に必要とされています
libdvdread-devel は k9copy-1.1.3-1.i386 に必要とされています
と文句を垂れられた。よってapt-getで必要なものをインストールしようとチャレンジ。VineLinuxに用意されているかわからないのでうまくいく保証はない。
まずは最初にでているhal-develをインストールしてみる。rootになって
# apt-get update <-まずデータベース更新して
# apt-get install hal-devel
パッケージリストを読みこんでいます... 完了
依存情報ツリーを作成しています... 完了
以下の追加パッケージがインストールされます:
dbus-devel glib2-devel
以下のパッケージが新たにインストールされます:
dbus-devel glib2-devel hal-devel
アップグレード: 0 個, 新規インストール: 3 個, 削除: 0 個, 保留: 0 個
1751kB のアーカイブを取得する必要があります。
展開後に 9293kB のディスク容量が追加消費されます。
続行しますか? [Y/n]
おお、まずはあった。当然Yで進む。
次はkdelibs-devel。
# apt-get install kdelibs-devel
パッケージリストを読みこんでいます... 完了
依存情報ツリーを作成しています... 完了
以下の追加パッケージがインストールされます:
pcre-devel qt-devel
以下のパッケージが新たにインストールされます:
kdelibs-devel pcre-devel qt-devel
アップグレード: 0 個, 新規インストール: 3 個, 削除: 0 個, 保留: 0 個
51.4MB のアーカイブを取得する必要があります。
展開後に 342MB のディスク容量が追加消費されます。
続行しますか? [Y/n]
ひゃほ。当然Y。
次あたりからちょっと怪しいが、libjpeg-develに挑戦。
# apt-get install libjpeg-devel
パッケージリストを読みこんでいます... 完了
依存情報ツリーを作成しています... 完了
以下のパッケージが新たにインストールされます:
libjpeg-devel
アップグレード: 0 個, 新規インストール: 1 個, 削除: 0 個, 保留: 0 個
176kB のアーカイブを取得する必要があります。
展開後に 479kB のディスク容量が追加消費されます。
取得:1 http://updates.vinelinux.org 4.1/i386/main libjpeg-devel 6b-34vl4 [176kB]176kB を 0s 秒で取得しました (504kB/s)
変更を適用しています...
準備中... ########################################### [100%]
1:libjpeg-devel ########################################### [100%]
完了
あれ?心配する暇もなく終了。
次、libdvdread-develね。
# apt-get install libdvdread-devel
パッケージリストを読みこんでいます... 完了
依存情報ツリーを作成しています... 完了
E: パッケージ libdvdread-devel が見付かりません
かー、やっぱり来たよ。さて、どうしよう。
まずはlibdvdreadの情報をgoogleで探してみるか。探してみたら
Linux ムービー・動画環境: DVD ビデオ作成というページの中に
RPM resource libdvdreadというところがあったので、ここで
libdvdread-0.9.7-2.fc7 Source RPMをダウンロードする。ダウンロードしたファイルを
$ rpm --rebuild libdvdread-0.9.7-2.fc7.src.rpm
でrebuildしてrootになってインストールする。
$ su
パスワード(P):
# cd ../RPMS/i386/
# rpm -ivh libdvdread-0.9.7-2.i386.rpm libdvdread-devel-0.9.7-2.i386.rpm
順調だ。さて、本題のk9copyをrebuildしてみよう。
$ rpm --rebuild k9copy-1.1.3-1.src.rpm
・・・
エラー: /var/tmp/rpm-tmp.41013 の不正な終了ステータス (%build)
RPM ビルドエラー:
InstallSourcePackage: ヘッダ V3 DSA 署名: NOKEY, key ID 48b926c3
ユーザ gdvieira は存在しません - root を使用します
グループ gdvieira は存在しません - root を使用します
ユーザ gdvieira は存在しません - root を使用します
グループ gdvieira は存在しません - root を使用します
/var/tmp/rpm-tmp.41013 の不正な終了ステータス (%build)
な、なんたるちあ。ここまできてダメかよ!つーことで一気に頭ぶちきれたのでソースからインストールしてやることに決定。
まずは
version 1.1.3のsourceを入手。そしておもむろにおまじない開始。
$ tar xzvf k9copy-1.1.3.tar.gz
$ cd k9copy-1.1.3
$ ./configure
・・・
checking for X... configure: error: Can't find X includes. Please check your installation and add the correct paths!
げっ、エラーだ。rpmのrebuildでも同じようなエラーだったから、KDE用の何かが足りないのかもしれん。ということで、今日はここでおしまい。
このエントリのTrackBack URL
https://www.oyajiman.net/oyaji/action.php?action=plugin&name=TrackBack&tb_id=1858
2007年07月06日
サーバ証明書の期限切れを直す
[Linux備忘録]
ひさびさのLinuxノウハウネタ。
友人宅サーバではSSLでアクセス出来るようにもしているんだけど、最近になって期限切れのダイアログが出るようになっていた。この証明書、VineLinuxをインストールしたとき勝手に出来ている奴で、証明書のサンプルみたいなもんだ。こんなの別にどうでもいいやと思っていたのだが、この表示を毎回見るのも気分が悪いのも確か。
ということで、SSLの証明書作成にチャレンジしてみた。といっても、
Apache を SSL 対応にや
SSLの証明書を作成するをその通りにやってみただけなんだけども。使っていたから期限切れになったということで、SSLが使えるかどうかの判定などは割愛ね。
1、認証局 (CA)の作成
VineLinuxの場合、CAはCA.shではなくてCAと言う名前で入っている模様。場所は
/usr/share/ssl/misc/CAだ。
取り合えず作業用のディレクトリを作ってそこにこのCAをコピーする。
[Vine]# mkdir /usr/local/ssl
[Vine]# cd /usr/local/ssl
[Vine]# cp /usr/share/ssl/misc/CA ./
準備が出来たら、このCAスクリプトを実行する。
[Vine]# ./CA -newca
CA certificate filename (or enter to create) そのままenterでOK
Making CA certificate ...
Generating a 1024 bit RSA private key
..................++++++
...............++++++
writing new private key to './demoCA/private/./cakey.pem'
Enter PEM pass phrase: 秘密鍵パスフレーズを入力
Verifying - Enter PEM pass phrase: 秘密鍵パスフレーズを再入力
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:JP 日本ならJPだな
State or Province Name (full name) [Some-State]:Miyagi 都道府県
Locality Name (eg, city) []:Sendai 市区町村(任意?)
Organization Name (eg, company) [Internet Widgits Pty Ltd]:oyajiman 組織名
Organizational Unit Name (eg, section) []: 部署名(任意?)
Common Name (eg, YOUR name) []:oyajiman.net サーバのホスト名(FQDN)
Email Address []: 連絡先E-Mailアドレス
これで/usr/local/ssl/demoCA/以下に認証局の証明書と認証局の秘密鍵などが出来ている。
2、公開鍵の作成
[Vine]# /usr/bin/openssl genrsa -rand 何か適当なファイル -des3 -out serverkey.pem 1024
と入力すると公開鍵の作成が始まる。
何か適当なファイルは乱数生成の鍵なのである程度のサイズがあれば何でもいいみたい。
9969 semi-random bytes loaded
Generating RSA private key, 1024 bit long modulus
......++++++
....................................................++++++
e is 65537 (0x10001)
Enter pass phrase for serverkey.pem: 公開鍵のパスフレーズを入力
Verifying - Enter pass phrase for serverkey.pem: 公開鍵のパスフレーズを再入力
これで公開鍵が出来た。ただ、このまま使うとApacheの起動のたびに公開鍵パスフレーズを問い合わせられて面倒らしい。よって利便性を重視しパスフレーズを解除しておく。
[Vine]# /usr/bin/openssl rsa -in serverkey.pem -out serverkey.pem
Enter pass phrase for serverkey.pem: 公開鍵のパスフレーズを入力
writing RSA key
3、認証局への申請書 (CSR)の作成
[Vine]# /usr/bin/openssl req -new -days 1000 -key serverkey.pem -out csr.pem
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:JP 日本ならJPだな
State or Province Name (full name) [Some-State]:Miyagi 都道府県
Locality Name (eg, city) []:Sendai 市区町村(任意?)
Organization Name (eg, company) [Internet Widgits Pty Ltd]:oyajiman 組織名
Organizational Unit Name (eg, section) []: 部署名(任意?)
Common Name (eg, YOUR name) []:oyajiman.net サーバのホスト名(FQDN)
Email Address []: 連絡先E-Mailアドレス
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []: 不要
An optional company name []: 不要
上記の入力は秘密鍵と同じにしないとマズイらしい。
4、証明書の作成
[Vine]# /usr/bin/openssl ca -in csr.pem -keyfile demoCA/private/cakey.pem -cert demoCA/cacert.pem -out cert.pm
Using configuration from /usr/share/ssl/openssl.cnf
32698:error:0E06D06C:configuration file routines:NCONF_get_string:no value:conf_lib.c:329:group=CA_default name=unique_subject
Enter pass phrase for demoCA/private/cakey.pem:秘密鍵パスフレーズを入力
Check that the request matches the signature
Signature ok
Certificate Details:
Serial Number: 1 (0x1)
Validity
Not Before: Jul 5 11:53:24 2007 GMT
Not After : Jul 4 11:53:24 2008 GMT
Subject:
countryName = JP
stateOrProvinceName = Miyagi
organizationName = oyajiman
commonName = oyajiman.net
emailAddress = 連絡先E-Mailアドレス
X509v3 extensions:
X509v3 Basic Constraints:
CA:FALSE
Netscape Comment:
OpenSSL Generated Certificate
X509v3 Subject Key Identifier:
56:D4:3E:58:E7:5B:59:48:50:16:86:EE:3A:D9:33:8C:63:E8:FA:B4
X509v3 Authority Key Identifier:
keyid:4D:86:CF:76:EC:72:55:56:2E:FD:59:29:4D:46:5E:62:C3:18:64:F3
DirName:/C=JP/ST=Miyagi/L=Sendai/O=oyajiman/CN=oyajiman.net/emailAddress=連絡先E-Mailアドレス
serial:00
Certificate is to be certified until Jul 4 11:53:24 2008 GMT (365 days)
Sign the certificate? [y/n]:y
1 out of 1 certificate requests certified, commit? [y/n]y
Write out database with 1 new entries
Data Base Updated
5、Apacheの設定
作成した証明書などをApacheで使うためには2つの方法がある。ひとつ目はApacheの設定ファイルを書き換える方法、もうひとつは現在ある証明書・公開鍵を作成したものに置き換えてしまう方法だ。後者の方がトラブルが出にくそうなので、この方法で試してみる。
証明書のコピー
[Vine]# cp /etc/httpd/conf/ssl.crt/server.crt /etc/httpd/conf/ssl.crt/server.crt.bak バックアップして
[Vine]# cp /usr/local/ssl/cert.pm /etc/httpd/conf/ssl.crt/server.crt 上書き
公開鍵のコピー
[Vine]# cp /etc/httpd/conf/ssl.key/server.key /etc/httpd/conf/ssl.key/server.key.bak バックアップして
[Vine]# cp /usr/local/ssl/serverkey.pem /etc/httpd/conf/ssl.key/server.key 上書き
最後にApacheを再起動しておしまい。
posted by
oyajiman at 07:48:16 -
- No Trackbacks -
[この記事のみ表示]
このエントリのTrackBack URL
https://www.oyajiman.net/oyaji/action.php?action=plugin&name=TrackBack&tb_id=1768
2007年02月22日
Vine Linux 4.1リリース
[Linux備忘録]
VineLinux4.0が出たばっかりのような気がしていましたが、4.0リリースから3ヶ月経っているんですね。で、
Vine Linux Home PageでVineLinux4.1がリリースされています。
リリースノート
セキュリティフィックスおよびバグフィックスを施したマイナーアップデートバージョンのようです。これを入れたらVMware動くかも。ちょっと期待してます。
今、会社のPCはVineLinux3.2なんですが、Anthy+scimの動きがちょっとおかしかったり、FlashPlayer9とxmmsの相性がいまいちだったり、Gnomeのファイルマネージャ(nautilusだったかな?)が大量のファイルをコピーや移動させようとすると落ちたりしちゃうんで、出来るなら4.xに移行したいんですよねぇ。4.0ではファイルマネージャの不具合がなかったので他も改善されているだろうと期待してるんだよね。
時間を見つけてやってみますか。
このエントリのTrackBack URL
https://www.oyajiman.net/oyaji/action.php?action=plugin&name=TrackBack&tb_id=1561
2007年02月12日
VineLinux4.0が使えなかった腹いせに
[Linux備忘録]
先日会社のPCにVineLinux4.0を入れてみたけど肝心のVMWareが動かず、VineLinx3.2に戻して我慢しようとしましたが、やはり一度触ったシステムには未練が残ります。よって3.2でも4.0に近いスタイルにまで3.2を持って行くことにしました。
4.0と3.2で見た目上大きく違うのは、なんといってもVLゴシックフォントファミリを標準フォントとして採用したことだと思います。なんつったってこんなに違う。
3.2標準sazanamiフォント
4.0標準VLフォント
やはり見ためだけもきれいなのがいいです。VineSeed にはこれを含んだ rpm パッケージが含まれているということで、VineSeedにあるTrueType-sazanami-2.2-0vl1.noarch.rpmを取って来てインストール。これでVLフォントが使えるようになりました。
次は日本語入力システムです。Cannaは変換効率は悪いし見た目もあまりよろしくないので、これもSCIM + Anthyに変更することに決定。ただ、やりかたが少しわからなかったので、
anthy+scimで日本語入力 (Vinelinux)を参考に(ってほぼそのまま)インストール。こちらもめでたく変更できました。よかったよかった。
で、一段落したかなーと思っていると、なんだか音がでないことに気がつきました。そういえばこのPC、以前も2.6のときは音が出たんだけど、3.1をクリーンインストールしたら音が出なくなったことを思い出しました。かといって2.6からインストールなんてアホくさいので、ここはサウンドシステムをalsaに変更することに決定。通常であればaptかsynapticあたりでalsaをインストール出来るはずなんですが、3.2はどういうわけかaptではインストールできません。ということで
alsa-driver-1.0.5a-0vl2.src.rpm
alsa-lib-1.0.5-0vl1.src.rpm
alsa-utils-1.0.5-0vl1.src.rpm
alsaconf-0.4.3b-0vl6.src.rpm
のSRPMファイルを持ってきてリビルドすることに決定。リビルドの順番は、alsa-driver-1.0.5a-0vl2.src.rpm->インストール、alsa-lib-1.0.5-0vl1.src.rpm->インストール、alsa-utils-1.0.5-0vl1.src.rpm->インストール、alsaconf-0.4.3b-0vl6.src.rpmだったかな。途中でなんだか足りないってでるので、こちらはaptでインストールして無事終了。後はalsaconfとやればOK。
そのあと/etc/modules.confのいままでのサウンドモジュールのオプションをコメントアウトか削除しておしまい。再起動すると、おお、ちゃんと音が出た。
あと、もうひとつ問題があって、フレームバッファが使えなくなっちゃったんだな。このPCはi810fbでフレームバッファが動くはずなんだけど、なんだか動かない。前はちゃんと動いたのに3.2をクリーンインストールしたら動かないとはこれいかに。ま、Xに入るまでの話なんでそんなにこだわることもないんだけど、以前できていま駄目ってのは気分悪いし…。ということで、kernel-sourceとmkkpkgを入れて、i810fbを組み込んだカーネルに再構築してみました。カーネルの再構築なんてひさびさ。なつかしいな。終わるまで2時間以上かかっちゃいました。
これは入れてみて駄間だったでは済まされないヤバさがあるので、いまだインストールしてませんけどね。
このエントリのTrackBack URL
https://www.oyajiman.net/oyaji/action.php?action=plugin&name=TrackBack&tb_id=1546
2006年09月17日
SSH不正ログインアタックを蹴散らせ
[Linux備忘録]
以前も
不正アクセスのブロック対策をしていたのだけれど、あそこまでやっても大して意味もなさそうなので、今度は非常に簡単にピンポンダッシュやポートスキャンをしてくるところを遮断してしまう方法に切替えました。
手のうちを明かせば仕掛けは非常に簡単です。ピンポンダッシュはそのままsecureログに残ります。ポートスキャンはsnortを動かしていればこれもsecureログに残ります。ということでアクセスログを定期的にチェックして、ピンポンダッシュやポートスキャンしてくるアドレスをアクセス拒否しちゃうだけです。
#!/bin/sh
#secureログの場所
sshlog=/var/log/secure
#弾かれたくないIPアドレスがあったら記入
myip=aaa.bbb.ccc.ddd
while true
do
#sshの設定によってはInvalid/{print $10}の所が変わります
badip=`gawk '/Invalid/{print $10}' $sshlog | tail -1`
portscanip=`gawk '/PORTSCAN/{print $10}' $sshlog | tail -1`
/sbin/iptables -F
if [ $badip ];then
badipcount=`tail -n 50 $sshlog|gawk '/Invalid/{print $10}'-f|grep $badip|wc -l`
fi
if [ $portscanip != $myip ];then
/sbin/iptables -I INPUT 1 -s $portscanip -p all -j DROP
fi
#ピンポンダッシュの回数の上限 取り合えず5回にしてます
if [ $badipcount -gt 4 ]; then
/sbin/iptables -I INPUT 1 -s $badip -p all -j DROP
fi
#待機時間(秒) ここでは5分間にしてます。
sleep 300
done
これをバックグラウンドで走らせていれば、取り合えず直近のピンポンダッシュやポートスキャンはアクセス出来なくなります。解除は他のピンポンダッシュが来たりログがロテートされたときに行われます。
別にループさせないでクローンで動かしてもいいんですが、少しでも動作を早くしようかなということで無限ループで処理させてます。こんな簡単なスクリプトでもかなりの効果があります。
このスクリプトだと、数ヶ所から一気に悪戯されたら結構な時間悪戯されまくるなどの課題もありますが、そこまで気にする人は適当に自分で作れるよね。
このエントリのTrackBack URL
https://www.oyajiman.net/oyaji/action.php?action=plugin&name=TrackBack&tb_id=1376
2006年08月19日
バカチョンサーバ入れ換え方法
[Linux備忘録]
このたびめでたく?サーバを新しいマシンに移し替える事が出来たわけですが、そのバカチョン方法を書いておきましょう。あくまで俺の覚書でサーバOSはVineLinux3.2+Nucleus限定情報なので、それ以外の方は参考程度によろしく。
1、新しいサーバの設定を旧サーバと同じにしておく
起動させるサービス、設定などは同じにしておきます。sshで新サーバから旧サーバにログインしてterminalを新サーバ旧サーバの2つ開き、比べながらやるのも手かも。必須設定としてはhttpd、php、MySQL(特にアカウント)があります。
2、旧サーバからコピーするデータをtarでアーカイブする
これはエディタなどで予めアーカイブ作成用のスクリプトを書いておくといいね。俺の場合、WebサーバのコンテンツとMySQLのブログ用データベースをコピーしておけば取り合えずOKなので、こんな感じで作っておきました。
#!/bin/sh
tar czvf /root/test.gz /home/httpd/html /var/lib/mysql
そして、このスクリプトを実行してアーカイブを作成します。
3、作成したアーカイブを新サーバにコピーし展開する
scpで旧サーバに作成したアーカイブを新サーバに転送します。転送した後、アーカイブをルートディレクトリに移動させ展開します。おおっと、その前にhttpdやMySQLなどのサービスは止めておきましょうね。
4、ルータの設定を変更し、新サーバを公開
こんなところです。1の設定さえ間違っていなければ、ものの数分で移管できますよ。
このエントリのTrackBack URL
https://www.oyajiman.net/oyaji/action.php?action=plugin&name=TrackBack&tb_id=1338
2006年05月24日
サーバの移管覚書 その3
[Linux備忘録]
5,Nucleusの設定を移す
サイトのフォルダをまるまま旧サーバから新サーバへ移し変えてもいいのだけれど、ゴミのようなものとかも一緒に移行されるのは美しくない。それに変な設定とかでおかしくなっている部分もあるかもしれないので、次のような手順を踏んで移管してみることにする。
1、Nucleus本体を新サーバにインストール。
2、使っているプラグインを新サーバに組み込む。
3、旧サーバから自分で作ったスキン・テンプレートを書き出す。
4、旧サーバからNucleus用のデータベースを書き出す。
5、新サーバにバックアップしたスキンを読み込ませる。
6、新サーバにバックアップしたデータベースを読み込ませる。
この手順で無駄なものは省かれてすっきりした形になると思うのだ。
とりあえずはこの手順でチャレンジしてみよう。
プラグイン等のバージョン違いなどによりDBとの整合性が図れなくなることが想定されるため、旧サーバと新サーバのプラグインのバージョンをそろえておかないとやばそう。
それから、当然ながらサイト名などのNucleus上の設定を旧サーバのものと同じにしておかないとDBからデータを読み込めないことになるので、これも注意だな。
このエントリのTrackBack URL
https://www.oyajiman.net/oyaji/action.php?action=plugin&name=TrackBack&tb_id=1232
2006年05月22日
サーバの移管覚書 その2
[Linux備忘録]
3、アップデートと必要なソフトをインストールする。
Vine Linuxのインストール終了後、忘れずにアップデートしておく。
[vine]$ su -
psssword: *******
[vine]# apt-get update
[vine]# apt-get upgrade
その他必要なサービスとしてはPHPとMySQLがあるので、aptで追加インストール。
[vine]# apt-get install php php-mysql php-apache
[vine]# apt-get install MySQL-server MySQL-client MySQL-shared
4、Apache,PHPの設定
の前に、旧サーバでssh-keygenを使ってsshログイン用の公開キーを作り旧サーバにぶちこむ。旧サーバの設定を変えて簡単にログインできるようにしてもいいのだけれど、とりあえず外部につながっているサーバだから安全にいくこととしたわけ。
PHPやApacheの設定はサーバ構築時と運用開始後はよくいじるのだが、安定運用状態になってからはあまりいじることはない。つまりどう設定したかなんて覚えていないのだよ、普通。と言うことでコンソールを二つ開き、左は新サーバ、右には旧サーバとなるようにして旧サーバの設定を見ながら新サーバを設定する。
ここまでは順調だな。
問題は、いつブログのデータベースを新サーバに移すのか、なんだよ。
このエントリのTrackBack URL
https://www.oyajiman.net/oyaji/action.php?action=plugin&name=TrackBack&tb_id=1213