2006/10/02

FTP over SSH PortFowarding

出来たと書いている人が多かったが、PASV を使ってもデータ転送は別ポートになるわけだし、
きちんと設定されたファイアウォールは抜けにくい、と思っていたが、
一応限界までやっている人がいたのでメモしておく。
http://web.kuicr.kyoto-u.ac.jp/~hattori/non-research/memo/too
ls/ftp_over_ssh.html

ftpd 側でpassiveモードで使うポート番号を制限する、ということと、passiveモード時にftpdが返すIPアドレスを変更しておく、ということがポイントです。
勉強になりました。

追記:
http://www.ssh.com/support/documentation/online/ssh/admi
nguide/32/Port_Forwarding.html

ssh communications のssh 実装なら
ssh2 -L ftp/x:ftpdserver:y username@sshdserver
と出来るらしい。
It works similarly to generic port forwarding, except that the FTP forwarding code monitors the forwarded FTP control channel and dynamically creates ne
w port forwardings for the data channels as they are requested.
だそうな。

http://www.labtam-inc.com/articles/ssh-d-forwrd.html
これも同じ系みたい。
と思ったけど、ここのが安かったので試してみたけど設定が見当たらなかった。

SOCKS を利用する方法もあるらしい。

追記の追記:ここに書いてあるとおりですが、
===============================
パッシブモードにおけるFTP
~中略~
ポートフォワーディングはアドレスlocalhostに対して開かれるので、パッシブモードが使われる場合、FTPクライアントはSSHクライアントと同じマシン上で動作する必要
があります。

アクティブモードにおける FTP
~中略~
ポートフォワーディングは SSHサーバマシン上のアドレス localhostに作られるため、アクティブモードが使われる場合、 FTPサーバはSSHサーバと同じマシン上で動作す
る必要があります。
===============================
だそうな。前述の英文のやつにも書いてありましたね。
やっぱり抜けにくいものですね。せめてssh communications 版 ssh にMacOSX クライアントがあればいいのに。

===============================
追記の追記の追記(2008/02/18)
google analytics を見ていたらftp over ssh portfowarding に検索してきてる人がいるみたいだったので・・。

その後、紆余曲折を経て、ssh communications のssh クライアントを購入して使用、ssh on winxp on VMWare に対してMacOSX のFTP Client から利用出来ています。
報告まで。

2006/09/27

Word ファイルサイズ縮小のTIPS & レイアウトのTIPS & パフォーマンスのTIPS & 結論

=======================================================================
Word ファイルサイズ縮小のTIPS
=======================================================================
画像編集やファイルサイズについての知識が無い人がWord ファイルにペタペタと画像を貼ったりしていると、ファイルサイズが非常に大きくなることがあります。
そんなファイルに何度も接する機会があり、その都度、試行錯誤してファイルサイズを小さくしていたので、その流れをまとめておきます。
なお、ここで書いている内容は、主にWord 2000 、古くはWord 95 の頃から蓄積されたファイルのサイズで大きいものを見ていたときに気がついたことなどです。

1. 単純にファイルの解像度が高いだけならWord XP 以降で搭載された「図の圧縮機能」を使用して圧縮する
ドキュメント中の画像が不必要に高解像度になっていた場合、Word XP 以降を使っている人は「図の圧縮」機能を使用することで貼り込んである画像の解像度を落とすことでファイルサイズを小さくすることが出来ます。

http://office.microsoft.com/ja-jp/assistance/HP052307401041.aspx

2. ファイルサイズがうまく小さくならない場合は、HTML で分解する。
HTML で分解と言っても特に難しいことはなく、「名前をつけて保存」メニューから「web ページ(html)形式で保存」、を行うだけです。
これを行うと、保存されるファイルは、"ファイル名.htm" というファイルと、"ファイル名.files" というフォルダに分かれます。
大概、ファイルサイズが大きい原因はイメージの解像度が高すぎたりすることが原因なので、1. の作業内容で圧縮されることが多いのですが、うまくいかないときには、この作業によってファイルサイズを押し上げている原因を直接のぞき見ることが出来ます。

手順としては、「web ページ(html)形式で保存」を行った後に出来上がった、"ファイル名.files" フォルダの中をのぞき、それぞれのファイルサイズを確認します。
すると、下記のようにいくつか原因があります。

- 貼り込んである画像のフォーマットが圧縮がかからない、または圧縮レベルが低い
jpg など問題の起きなさそうなフォーマットのファイルが大きい場合などにはこれを疑ったほうがいいかもしれません。
特に多かったのはjpg の画像の圧縮レベル(jpg フォーマットには圧縮レベルを切り替えられる機能があります。)が低い(高品質な画像になる)場合などです。
これは画像処理ソフトを使用するなどして圧縮レベルを高めれば解決します。(jpg は非可逆圧縮なので圧縮しすぎには注意したほうがいいと思います。)

- Word 図が入っていると妙な拡張子のファイルが分解した際に入る。これが大きい。
RTFで一度保存してからdoc に直す。とファイルサイズが小さくなることもある。
preview.wmf(PowerPoint関連のなにかみたいです。)

- Word 図が入っている
Word 図というのが普通の図と何が違うのかあまり把握してませんが、とにかくドキュメント中にWord 図があると下記のような拡張子のファイルが含まれていることがありました。
image003.wmz(Windows Media Player スキンパッケージ)
oledata.mso(MSOファイル)

- PNG が入っている
oledata.mso(MSOファイル)
Word 2000 の頃にpng を使ったファイルを貼りこんでおくと、png を表示するためのプラグインなのか、oledata.mso というファイルが入ってしまうことがあるように見受けられました。
解決するには、画像処理ソフトを使用してjpg 等に変換して貼りこみなおすのが良いと思います。
あるいはWord XP 以降であれば一旦分解した際にpng をとっておいて、Word 上では該当の画像を一旦削除して再度そのpng を貼りなおす、などすればうまくいくのかもしれません。

- 印刷レイアウトでは見えない画像が埋め込まれてしまっている。
Web レイアウトに切り替えて画像を探す。

- 図の圧縮を行うと画像が荒くなる場合
これはWord の解像度の変換プログラムがあまり出来が良くないためだと思われます。
html 分解して画像を特定後、その画像を画像処理ソフトで解像度を変更するなどして回避したほうが良いと思います。PhotoShop なら「ぼかし→ガウス」などで良くなることがある。

- 図がトリミングされて二箇所で使われていたりすると図の圧縮が効かない
分解して保存しなおしてひとつの画像を二箇所で使うような使い方を止めるしかない気がします。
これはWord のバグとして登録されていたような気がします。

=======================================================================
レイアウトのTIPS
=======================================================================
文字を入力したらレイアウトが崩れて図がどこかへいってしまったら、以下のポイントをチェックして再度やり直してみるとうまくいくかもしれません。

表のプロパティ 「文字列と一緒に移動する」をオフ
図のプロパティ 「文字列と一緒に移動する」をオフ・折り返しの種類を"行内"以外に。
オートシェイプ 「文字列と一緒に移動する」をオフ・折り返しの種類を"行内"以外に。

また、周囲の文字列との間隔 → 表・オートシェイプ・図とテキストの余白(マージン)

「オーバーラップさせる」 → 入れておいたほうが良い(オブジェクト同士の重なりを許す)

アンカーを段落に固定する → 入れておいたほうが良い(ピョンピョン居なくなるのを抑制する。)(added on 20060927)

他にも気が付いたら追記します。

Word にもページレイアウト機能をつけてほしくなりますね。
Word は割り切り方を間違えなければそれなりに便利だとは思いますがInDesign などのページレイアウトソフトのほうが個人的には好みです。

=======================================================================
Word (2003) でCPU 使用率が高くなってマシンがうるさい (2006/5/2 追記)
=======================================================================
http://www.koikikukan.com/archives/2004/05/25-214908.phpより。
-----------------------------------------------------------
パソコンのCPU使用率がなぜか100%になりファンが唸りっぱなしになるという事象が発生していましたが、「ツール」→「オプション」→「文章構成」タブを開いて「自動スペルチェック」と「自動文章校正」のチェックを外したら直りました。
-----------------------------------------------------------
余計な機能を削ってシンプルな構成にしてページレイアウトプログラムとして生まれ変わって欲しい。

http://www.tku.ac.jp/~densan/local/word-error/word-error.html
こんなのもあるみたいです。
-----------------------------------------------------------
1.Word を起動後、メニューバー[ツール] -[オプション] をクリックします。

2.言語データを埋め込まない設定にします。
  [保存] タブをクリックし、[言語データを埋め込む] のチェックを外し、[OK] ボタンをクリックします。
-----------------------------------------------------------
余計な機能をごっそり削除して欲しい。


=======================================================================
Word 結論
=======================================================================
限界を見極めて使えばそれなりに便利だと思う。
限界を超えて使うとすべての時間が無に帰すると思う。
疲れた。

■ 便利なツール(2006/06/15 追記)
Area61 MSワードスリム
今までの苦労は何だったんだろうか、と思える瞬間があるのが今の時代ですね・・。
まだつかっていないけど機会があればやってみます。バッチ変換とかできると良いですね。

2006/09/13

SPAM 対策(DNSBL編)

非常に役に立ったのでメモ。
http://www.ebug.jp/pub/docs/20050521/DNSBL_FirstStep.pdf

2006/08/26

CSS メモ

table.aaa td { color: red; }
このような指定方法があるのを知らなかったのでいままではいちいちセルにclass適用してました。
上記の場合、class="aaa"のtable 内のtd に適用されます。

いつもわすれるのでメモ。
ひとつの要素にfloatとmarginを同時に設定すると位置がずれる
http://www.brnet.co.jp/BRnet/stylesheet/float003.html

・IE はホワイトスペースを変に展開して空間を作ろうとする
・Mozilla はホワイトスペースを無視してレイアウトする
のでソース中のホワイトスペース、特にimg の前後をHTML コメントで潰すときっちり合う。

line-height をピクセル指定であわせる。

width を指定しないとMac IE だけレイアウトがおかしいことがある。

2006/04/28

古いPostgreSQL でIN 句を利用したサブクエリーが重い現象について。

古いPostgreSQL でインデックスを正しく張っているにもかかわらず重かったらこれを疑ったほうが良いでしょう。

古いPostgreSQL のFAQ より。(無くなってしまったら困るので自分用にメモ。)
=======================================================================
4.22) なぜ、INを使う副問い合わせがとても遅いのですか?

7.4 より前のバージョンでは、副問い合わせは、副問い合わせの結果を外部問い合わせの各ロウについて順次走査することによって、外部の問い合わせに結合させられる
。副問い合わせがわずかなロウしか返さず、外部問い合わせが沢山のロウを返す場合は、INが最も早いです。他の問い合わせを高速化するには、INをEXISTSに置換します:

SELECT *
FROM tab
WHERE col IN (SELECT subcol FROM subtab)

を、置き換えて:

SELECT *
FROM tab
WHERE EXISTS (SELECT subcol FROM subtab WHERE subcol = col)

とします。これが手っ取り早いですが、subcolは索引付きカラムであるべきです。
=======================================================================

こんなふるいシステムは本来は使いたくないのですが・・。

Java アプレットの起動のたびに重くていらいらする問題を改善する方法。

今まで知らなかったのですが、
http://forum.mozilla.gr.jp/?mode=al2&namber=2448&rev=&&KLOG=17
==============================================================
j2re1.4.0以降なら、コントロールパネルのJava Plug-inを開くと
基本タブにコンソールを開始しないという項目があるはずですので
それにチェックしてみたらいかがでしょうか。
コンソールを開始しなくてもJavaは動作しますから…。
==============================================================
という記載を見つけて試してみたら確かに軽くなった感じ。
Sun はなぜこれをデフォルト設定にしないのでしょうか・・。

2006/04/21

sed one liner and if.

http://www.student.northpark.edu/pemente/sed/ifelse.txt
http://www.student.northpark.edu/pemente/sed/sed1line.txt
メモ。

Excel がなぜかやけに重いときに良くあるケース

0 x 0 のサイズにリサイズされたオブジェクトがセルの隙間に大量に入っていることがあります。
「オブジェクトの選択」を使用して適当に探し出して削除して保存してファイルを開きなおせば直ることがあります。

2008/11/20 追記:
Word やExcel でホームページからコピーした際などに書式をクリアにするTips に書いた手法でファイルを新規に作り直してデータを奇麗にする、という手もあります。

2006/04/03

カナロック

ときどきWindows を使っているとIME が何かの弾みで半角カタカナのロックがかかってしまうことがあります。
いつもは気にせずマウスに手を伸ばして、MS-IME の設定を戻して直しているのですが、ちょっと気になって調べたら、Ctl-Shift-CAPS がその切り替えに対応している模様。
自分が使っているHHK-Lite2 というキーボードだとこれらが一番左に全部寄って配置されているのでこれを同時に押してしまっていたのだと納得しました。

2006/04/01

MySQL 日本語で使うときの設定

いつも忘れてしまうのでメモしておく。

http://www.mysql.gr.jp/mysqlml/mysql/msg/9586 より抜粋。
=====================================================================
少なくとも mysql コマンドに限っていえば、個人的には、

o my.cnf の [mysqld] に default-character-set = utf8 と書いておく。
utf8 が一番大きな文字集合なので。
o mysql コマンドはもっぱら euc-jp な環境で使うので、
my.cnf の [mysql] に default-character-set = ujis と書いておく。
o CREATE DATABASE するときは sjis なり ujis なり文字コードを明示的に
指定する。
o ひとつのデータベースに複数の文字コードのテーブルを混在させない。
o ひとつのテーブルに複数の文字コードのカラムを混在させない。

のルールを守ればトラブらないんじゃないかと思います。
=====================================================================

どうも慣れないMySQL なのでとりあえず盲目的に信じておく。

Snippet:
mysql> CREATE DATABASE DBName CHARACTER SET utf8;
mysql> GRANT ALL ON DBName.* TO userName@localhost IDENTIFIED BY 'PASSWORD';