MacやLinuxなど、sshクライアントにsshコマンドを使っている方のためのお話
夜間や休日で緊急事態のときは家からリモートメンテナンスを行うことがあるかと思います。
その際に、インターネットからサービスを行っているサーバーに直接sshでログインできるようにしておくのは不安がありますので、社内の特定のサーバーからのみ許可するようになっていることがあります。
この様な運用形態の場合、一度社内のサーバーにログインして、それから再度 sshコマンドで対象となるサーバにログインすることになり、一手間増えてしまいます。
できればワンステップでログインしたいところです。
sshコマンドにオプションをつけることで、ワンラインでログインできます。
ssh -o 'ProxyCommand ssh ユーザ名@中継サーバー nc %h %p' ユーザ名@ターゲットサーバー
これで一度にログインできるのですが、ProxyCommandと毎回入力するのは面倒なので、できれば更に短くしたいところです。
ローカルの ~/.ssh/config に以下のように記述しておくことで一度にログインできるようになります。
Host ターゲットサーバー
ProxyCommand ssh ユーザ名@中継サーバー nc %h %p
ターゲットサーバー名はワイルドカードが使えますので、*.xxxx.jpのような指定が可能です。
これで、
ssh ユーザ名@ターゲットサーバー
だけでログインできるようになります。
MacでSFTPおよびSCPクライアントを使用する場合は、Fuguを使用すると、~/.ssh/configに記述した内容を解釈し接続してくれます。
現時点ではCyberduckは中継をサポートしていませんので、Fuguを使用するとよいでしょう。
マカー Tips, ssh
つい最近までdocomoの絵文字は色つきで表示されないのかと思ってた。
わざわざ絵文字毎に色を指定して表示させていたのですが、
どうやらbodyタグのstyleにcolorで色指定してあると、その色が適応されてしまうようです。
ということで、bodyタグにcolorは指定しないようにしましょう。
色考慮しなくていいので、開発が楽になりました。
そんなdocomo。
下音タヌキ Tips, 携帯電話
お久しぶりです
のびーにょです
ちょっとはまったのでTips的に
ZIPをダウンロードさせるプログラムを書いてました。
右クリックして保存。とかじゃなくてアクセスしたらダウンロードするような奴です。
で、サーバ側でZIP生成してそれをダウンロードさせようとしてたんですがファイルサイズはサーバに保存した内容と同じぐらいなのに解凍すると中身が少ない・・・
解凍ソフトはLhaplus使ってたんですがWINRARとか使って解凍すると中身が全部ある という現象が発生。
色々調べてたんですけど結局わからず・・・
みたいになってバイナリエディタで比較してみると・・・
先頭に何やらついてますね・・・
EF BB BF
ってのが3つぐらい
これBOMのエンディアンじゃないですか・・・
ソース調べてみるとBOM付きUTF-8で保存されてるファイルが3つ・・・
まさにこれじゃないですか・・・
BOM無しUTF-8で保存しなおして実行すると何事もなかったかのように解凍できる
PHPでBOM付きUTF-8は使わないに越したことはないというお話でした
http://bugs.php.net/bug.php?id=22108
まだバグなおってないみたいだしね・・・
のびーにょ PHP, Tips, その他
mod_rewriteのお話。
ファイルが存在する場合はそのファイルを表示し、存在しない場合はindex.phpを表示するようにしたい。
よくある例が以下のようになっているるのですが、実際にはうまく動かないことがあります。
RewriteEngine on
RewriteBase /
# ファイルが存在しない且つ、ディレクトリが存在しない場合は、index.phpを表示
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^$ /index.php [L,QSA]
RewriteRule ^(.*)$ /index.php?jb=$1 [L,QSA]
以下のように書くと期待通りに動作します。
RewriteEngine on
RewriteBase /
# ファイルが存在するか、ディレクトリが存在する場合は、そのファイルを表示する
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.* - [L]
# ファイルが存在しない且つ、ディレクトリが存在しない場合は、index.phpを表示
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^$ /index.php [L,QSA]
RewriteRule ^(.*)$ /index.php?jb=$1 [L,QSA]
これで目的は達成されるのですが、最初の例でなぜうまくいかないのか納得できないのです。
この挙動について説明できる方がおられれば、ご教授いただけると幸いです。
マカー Apache, Tips
そろそろ仕事用のパソコンでWindowsVistaを使われる方々も増えてきているのではないこと思う今日この頃。
大抵、メーカーのPCってパーテーションが区切ってなくてCドライブしかない!という状況でお困りの方、Vistaにはパーテーションを区切る機能が付いてるので、それをご紹介。
パーティションサイズの変更は、コントロールパネルの「システムとメンテナンス」→「管理ツール」にある、「コンピュータの管理」から行うことができます。
左側の、「ディスクの管理」を選択して、分割したいドライブを右クリックして、「ドライブの圧縮」から容量を指定して分割することができます。
ただし、Vistaを使用してから結構時間がたってると、HDDのいろんな場所にデータが書き込まれていて、選択できる容量が少ない場合がありますので、事前にデフラグ等をして整理すると多少改善されます。
ベストは、使い始めに区切っちゃうのが一番なんですけどね。
メーカー物のPCでパーテーション切ってないものとか少なくないので、これからの時代を生き抜くに覚えておいて損はないかも・・?
Windows7でもたぶん搭載されてると思いますし。
と、本日でVista誕生から2年が経ったんですね。
下音タヌキ Tips