Entries from 2007-11-01 to 1 month

sudoers で許可したディレクトリだけ削除させる sudorm

たとえばリモートから ssh でログの退避を行っている場合、コピーが完了したログをどうやって削除するかが問題になったりする。というのは、ログファイルの owner はたいてい root だから、ssh 経由だと削除できない。古典的な方法としては setuid された (…

SuitePro V1 サーバのメンテ

下手な専用サーバよりも速くて(?)安定しているので気に入っている SuitePRO だけど、旧タイプの v1 だとディスク容量が少ない。というわけでちょっとでも空き容量を増やすために rpm -qa してパッケージ削除開始。今日はこれだけ削除した。 gnome-python2 gn…

twitter が落ちてると辛い

IRC で言えない独り言でも twitter なら言えるのに。

CGI::Application::URIMapping 0.04

CGI-Application-URIMapping-0.04 - A dispatcher and permalink builder - metacpan.orgURI がパーマリンク形式じゃない場合にリダイレクトとか書けるようになった。例えば、以下のコードだと、 users?order_by=name users?category=friends&order_by=age&s…

SSH 接続の権限を限定 (しつつトンネリングするとかそういう話)

SSH でサーバへの接続をトンネリング - kazuhoのメモ置き場の続き。 セキュリティ上の要請として、SSH 接続のクライアント側がクラックされても、サーバ側に対して攻撃ができないよう設計したい、ということがある。 先の例のように単純に公開鍵認証をしてい…

SSH でサーバへの接続をトンネリング

zebedee 使おうかと思ったけど面倒そうだったので SSH。 % cat /service/********/run #! /bin/sh exec /usr/local/bin/setuidgid tunnel \ /usr/bin/ssh -R '12345:localhost:12345' tunnel@remote-host \ 'while [ 1 ]; do echo ping ; sleep 60; done' % …

アプリケーションプロトコル設計のベストプラクティス (over TCP)

みたいなものを誰かまとめてないのかな、と思ってる。ないのかな。とりあえず自分用メモ。 概要 接続後最初の電文は client => server であるべき 理由: syn_cookies, dataready, パケット数削減 (w. SYN ACK) 最初の電文は、プロトコルの magic で始めるべ…

MySQL における Bulk Update

またハマったのでメモ。 begin; delete from t; insert into t select ...; commit;とかやると、完了までの間、他の更新がブロックされてしまう。更新系と参照系が同一のウェブサーバで動いていたりすると、サービス全体がその間利用不可能になる、というこ…