タグ

ブックマーク / xtech.nikkei.com (206)

  • 第15回 パケット・フィルタリングとQoS機能

    前回まで3回にわたって,Linuxカーネルのネットワーク機能を解説しました。取り上げたのは,現在主流のネットワーク・プロトコルである TCP/IPの基機能です。TCP/IPは標準的なプロトコルですから,Linuxだけでなく他の多くのOSでも利用できます。基機能については,他のOSの実装も大体似通ったものとなっています。 Linuxは,TCP/IPの基機能のほかに,さまざまな拡張機能を備えています。この記事の読者の方なら,一度はLinuxカーネルを再構築したことがあると思います。再構築の際にはカーネルの諸機能を設定するのですが,ネットワーク関連機能については実にさまざまなオプションが存在します。これらのオプションのほとんどは,「Networking options」という項目に収まっていますので,ぜひご覧下さい。今回は,良く利用される拡張機能について紹介します。 パケット・フィルタリン

    第15回 パケット・フィルタリングとQoS機能
  • 第11回 デバイス・ドライバ

    前回までの10回の連載で,プロセス管理やメモリー管理,ファイル・システムといったカーネルの基機能を一通り解説しました。 しかし,これまで解説してきた機能は,ほぼプロセッサと主メモリーだけを対象とするものばかりです。ファイル・システムはハード・ディスクなどの補助記憶装置と関連が高いのですが,主メモリー上にRAMディスクを作成した場合などを考えれば分かる通り,必ずしも補助記憶装置を必要とはしません。 これに対し,カーネルにはもう一つ重要な役割があります。それは,コンピュータに接続されているさまざまなハードウエアの制御です。 最近のコンピュータには,非常に多くの周辺機器が接続されています。モニターやキーボードはもちろん,ハード・ディスクやCD-ROMドライブなどの補助記憶装置,ネットワーク・インタフェースや各種USBデバイスなどさまざまな周辺機器が挙げられます。カーネルは,こういったさまざまな

    第11回 デバイス・ドライバ
  • 第4回 Catalyst(前編)---Perl向けWebアプリ・フレームワーク

    この記事は,日経ソフトウエア2006年9月号,連載「簡単実装で学ぶWeb技術2006」の第3回「Catalyst――Perl向けWebアプリ・フレームワーク」の再録です。記事は執筆時の情報に基づいており,現在では異なる場合があります。 こんにちは,結城浩です。今回はPerlのWebアプリケーション・フレームワーク「Catalyst」を解説し,簡単なメモ帳プログラムを作ります。 Catalyst(カタリスト)は,Perlで作られたWebアプリケーション・フレームワークです。Catalystを使うと,Webアプリを簡単に作成・テスト・配布することができます。catalystという単語のそもそもの意味は,「触媒」あるいは「促進させるもの」です。Perlのモジュール同士を触媒のようにうまく結びつけて,Webアプリ作成を促進させるという意味の名前なのでしょう。 Catalystのオフィシャルページは

    第4回 Catalyst(前編)---Perl向けWebアプリ・フレームワーク
  • ITスキル標準が2年ぶり大改訂、情報処理試験との対応を明確化

    IPA(情報処理推進機構)は3月31日、「ITスキル標準(ITSS)」を2 年ぶりに大幅改訂したバージョン3(V3)を公開した。最も重要な改訂ポイントは、ITSSのレベル認定に情報処理技術者試験を利用可能にしたこと。IT人材の育成に生かせる「ものさし」を統一したという意味で、大きな前進と言える。 ITSS V3は、IPAが2006年4月に公開した「ITSS V2」以来、2年ぶりのメジャー・バージョンアップとなる(図1)。ドキュメントは、IPAのWebサイトhttp://www.ipa.go.jp/jinzai/itss/download_V3.html)からダウンロードできる(別掲記事「ITSSは業界共通の『ものさし』」参照)。 図1●ITスキル標準改訂の経緯 2008年10月には「共通キャリア・スキルフレームワーク」を介して、ITSS、ETSS、UISS、情報処理技術者試験の対応を明確化

    ITスキル標準が2年ぶり大改訂、情報処理試験との対応を明確化
  • 総論:もう騙されない,手軽な防衛テクニック

    図1-2●便利なセキュリティサイトのURL一覧 2007年12月9日に発生した障害により、来のサイト「http://www.aguse.net/」にアクセスできない状態が続いている(2007年12月12日現在)。その後、2007年12月17日にサービスのURLが 「http://www.aguse.jp/」に変更された。 [画像のクリックで拡大表示] メールの詳細を調べてくれるサイトもある。「aguse.net」では、メールがどのような経路をたどって送られてきたのかを調査。送信者のなりすましなどを見抜いて、ユーザーに警告する。 Webサイトの危険度診断には「サイトアドバイザ」が有用。サイトのURL(ドメイン名)を入力すれば、「そのサイトにウイルスが置かれているか」「そのサイトから迷惑メールが送られてくるか」といった情報を表示してくれる。 そのほか、自分が使っているパスワードの強度を調べて

    総論:もう騙されない,手軽な防衛テクニック
  • インジェクション系攻撃への防御の鉄則

    前回までは,主にクロスサイト・スクリプティングのぜい弱性とその対策について解説してきた。最終回となる今回は,クロスサイト・スクリプティング以外の「インジェクション系」ぜい弱性について解説する。具体的には,SQLインジェクション,OSコマンド・インジェクション,HTTPヘッダー・インジェクション,そしてメールの第三者中継である。 SQLインジェクション対策にはバインド変数の利用が最適 まず,SQLインジェクションから見ていこう。対策には二つの方法がある。一つは,SQLの「バインド変数(注1)」を使う方法である。バインド変数の書式はプログラミング言語によって異なるが,一例として,Perlを使った場合に,パスワード認証のSQLをバインド変数で書き換えた例を示す(図1)。 (注1) 「準備された文(Prepared Statement)」というのがJIS SQLでの用語だがあまり普及していない。バ

    インジェクション系攻撃への防御の鉄則
  • オープンソース使ったWeb開発編独自実装をしてはいけない:ITpro

    などと書いてしまう方も多いのではないだろうか。このような記述が書かれている記事をオンライン上で見かけることがあるが,これはダメ。文字列の間にアットマークが含まれていれば,メール・アドレス以外の文字列にも一致してしまうからだ。例えば, という文字列を正しいメール・アドレスと認識してしまう。 このようなうかつな正規表現は,SQLインジェクションというデータベースを不正に操作するデータを埋め込む攻撃にもつながってくる。HTMLフォームから送信された値は,できる限り妥当かどうか正確に判断し,問題となるデータはサニタイズ(不正な文字を無効化すること)しておかなければならない。そうした危険を防ぐコードを自分で記述したければ,メール・アドレスがどのような形式なのかを正しく理解する必要がある。 メール・アドレスの形式は,RFCという文書に定められている。具体的にはRFC2822にある。文書として相当な量で

    オープンソース使ったWeb開発編独自実装をしてはいけない:ITpro
  • 開発プロセスの基本を学ぶ:ITpro

    一口に開発プロセスと言っても,様々な種類がある。具体的に,それぞれの開発プロセスにはどのような違いがあるのか。また,どのような基準に基づいて開発プロセスを選択すればいいのか。ここでは,様々な開発プロセスについて解説する。 「反復型やスパイラル型といった言葉は聞いたことがあるが,それらの内容までは知らない」。読者の中には,こうしたエンジニアも少なくないのではないか。そこでここでは,様々な開発プロセスの歴史や特徴,選択の基準を説明しよう。 まずは「開発プロセス」の定義を明確にしておきたい。 英語の辞書を引くと,プロセスには「処理」と「工程」という2つの意味がある。一般に「処理」は単数形(Process),「工程」は複数形(Processes)で表す。 情報システムにおける「処理」とは,仕様やデータ,プログラムなどの「入力」に対してなんらかの作業を実施して,結果を「出力」することを言う。一方の「

    開発プロセスの基本を学ぶ:ITpro
  • 「Webからの脅威」を攻略せよ――セッション管理編

    改めて知る「iPad」の底力、高精度の手書き入力や背面カメラでの3Dスキャンが可能 2024.09.20

    「Webからの脅威」を攻略せよ――セッション管理編
  • 第2回 ICT時代のネットワーク運用の基盤「NETCONF」[2]課題解決のキーワードはNETCONF/XML/Java API

    これらの対策を装置に実装するためのキーワードが「NETCONF」,「XML」,「Java API」の三つです。今回は,これらの技術がどのように課題を解決するのかと,実装するうえでの課題を詳しく見ていきます。 ネットワーク機器-NMS間の管理用標準プロトコル「NETCONF」 NETCONFは,ネットワーク機器を制御するための次世代プロトコルです。IETF(Internet Engineering Task Force)で標準化が進められています。ネットワーク機器とNMSの両方がNETCONFを実装することで,ネットワークの制御のしくみが用意されることになります。 ネットワーク機器とNMSが標準プロトコルでつながるということは,標準規格のないCLIの課題を解消できます(図1)。また,NETCONFではプロトコル・スタックとしてSSHやSSLなどが利用できるように規定されているので,複数のNM

    第2回 ICT時代のネットワーク運用の基盤「NETCONF」[2]課題解決のキーワードはNETCONF/XML/Java API
  • 第3回 CAT5eケーブルで72W給電するPoE Plus登場,XMLとIPv6も脇固め

    2008年内に「PoE Plus」がデビュー 「2008年後半に標準化が完了する予定」。こう語るのは,イーサネットで給電するPoEの次世代仕様IEEE 802.3atの委員を務める米ファウンドリーネットワークス エンタープライズビジネスユニットのヴァル・オリヴァ ディレクタ。IEEE 802.3atは,消費電力が高いIEEE 802.11n準拠の無線LAN機器などをカテゴリ5e 以上のケーブルで給電できるようにする新仕様である。1ポート当たり従来の15.4Wから2倍以上の36Wを給電できるようになる(表1)。改良版PoEであることから,PoE Plusとも呼ばれる。 従来のPoEの標準仕様であるIEEE 802.3afは1ポートで15.4W,ケーブル損失が2.45W,計12.95W以下で動作するデバイスを想定している。ところが,物理速度300Mビット/秒の無線LAN仕様であるIEEE 80

    第3回 CAT5eケーブルで72W給電するPoE Plus登場,XMLとIPv6も脇固め
  • ITpro:画像拡大表示

    close

  • 【特選フリーソフト】3種類のパッケージを手軽に作成 checkinstall:ITpro

    checkinstallは,任意のソフトウエアのソース・アーカイブから,RPM形式やdeb形式,tgz形式のパッケージを作成するソフトである。パッケージ化するための詳しい知識がなくても,ソースからパッケージを手軽に生成できる。 最近の主なディストリビューションはソフトの管理を容易にするため,「パッケージ管理システム」を備えている。パッケージ管理システムとは,rpmやdpkgなどのパッケージ管理コマンドにより,ソフトの導入や削除を手軽にできるようにした仕組みである。Linuxシステムを構成するソフトはすべて,このパッケージ管理システムに対応するファイル形式である「パッケージ」として提供されている。 Linuxシステムを構成するソフト以外にもパッケージで提供されているソフトは数多いが,世の中にさまざまなソフトが存在する。中にはソース・コードだけでパッケージが用意されていないソフトも多数ある。こ

    【特選フリーソフト】3種類のパッケージを手軽に作成 checkinstall:ITpro
  • オフショア時代を乗り切る明確な要求仕様作成術

    正確で明確な「要求仕様」を作成するのは非常に難しい。それがオフショア開発となればなおさらである。 開発技術の発展により,従来よりも変更に強く,速くシステムを作ることは可能になった。しかし,実物を作らずに「紙上」だけで仕様を正確に定義するのは,いまだにとても難しい。 システム化の対象業務も様々で,近年では経理システムのように定型なものは少なくなった。要求を出す側のユーザーでも,アプリケーションを作成して初めて仕様が見えてくるといったことはよくあることだ。 システムに対する業務的な要求が,時間の流れによって変わってしまうこともよくある。チェンジビジョン代表の平鍋健児氏は,このことをで「ムービングターゲット」,つまり動く標的という言葉で説明している。 オフショア開発の場合,それが顕著になる。日人同士のように,電車で移動すれば顔を合わせられる位置にいても,仕様に対する意識の違いや,仕様そのものの

    オフショア時代を乗り切る明確な要求仕様作成術
  • 第11回 MCSの仕組みと基本操作法

    Fedora Core 5でのSELinuxの機能や使い方を,これまでSELinuxを使ったことがない人に向けて分かりやすく解説する。今回は,新たに組み込まれたアクセス制御機能「MCS」を紹介する。 Fedora Core 5以降のSELinuxには,新たなアクセス制御機能「MCS(Multi Category Security)」が組み込まれている。今回は,このMCSの基を説明する。 ログイン・ユーザーの権限が問題に MCSが登場した背景には,targetedポリシーにおける,ログイン・ユーザーのセキュリティ上の問題がある。targetedポリシーでは,ログイン・ユーザーのシェルは,「unconfined_t」というドメインで動作する。unconfined_tドメインは,SELinuxのアクセス制御を極力受けない*1ように設定されたドメインだ。一般ユーザーでログインした人が,セキュリテ

    第11回 MCSの仕組みと基本操作法
  • 第11回 テスト用の名前データを自動生成する

    最近は,どのプログラム言語でもデータベースと絡むお話が多くなりました。データベースとプログラムの接続そのものは,入門書や雑誌記事が豊富なので困ることはありません。しかし,実際に何万件かのデータを入れて…という作業がやっかいだったりします。 今月のサンプルは,日人の名前を大量に生成してテキスト・ファイルに書き出すというものです。プログラム言語はPHPを使います(サーバーは必要ありません)。 データベース開発の案件で,動作確認用のテスト・データを作る必要があるとき,すべてのテスト・データが同じ“テスト太郎”だったり,あるいは元のデータが20人ぶんの名前の繰り返しになっているだけだったり,ということは少なくありません。データがデータベースに入るか入らないかを調べるためなら,件数だけそろえればなんとかなります。しかしデータベース・プログラムの検証では,「50万件のデータがあるけれど,実質は20個

    第11回 テスト用の名前データを自動生成する
    kura_ken
    kura_ken 2008/01/07
  • テストを自動化する注目のツールSelenium:ITpro

    ケイビーエムジェイ 最高技術責任者。普段はWebアプリケーションの開発を主に行っています。Seleniumを初めて知ったときは,特にWebブラウザが自動的に操作される様子が見えることや,そのテストの書き方の単純さに感動しました。その後テストをさらに簡単に作成できるようにしたいと思い,Selenium IDEを開発しています。 多くのWebサイトは,一度リリースしたらそれで終わりということはありません。リリース後も多くの機能追加や機能変更によるアップデートが頻繁に行われます。プログラムに変更を加えたときには,新たなバグが入り込んでいないことを確認するテストが不可欠です。 システムのリリース前にテストを実施するのはWebサイトに限った話ではありません。が,Webサイトの開発では,画面の確認のような手間がかかるテストが必要です。リリースの頻度が高い場合,そのようなテストを毎回手作業で行うとコスト

    テストを自動化する注目のツールSelenium:ITpro
  • 5分で人を育てる技術 (37)“理解が浅い人”と“理解が深い人”の8つの違い(後編)

    前回は小島に「“理解が浅い人”と“理解が深い人”の8つの違い」の途中までを説明しました。 「理解が浅い」,「理解が深い」・・・私たちは日常の仕事の中で,他人を評してこのように言うことがあります。しかし,理解が浅い人と深い人の違いについてまではあまり考えません。 これを突き詰めることで,理解を深くできるかも知れない・・・私はかつてこのように思い,さまざまな人を観察,事例研究しました。これを今回,小島に説明したのです。 さて,今回も次回の続きとして,“理解が浅い人”と“理解が深い人”の8つの違いの続きを説明します。 (1)理解が深い人は目標を持ち,自分にテーマを課す。 理解が浅い人は目標感がなく,自分にテーマを課せない。 (2)理解が深い人はイメージする。 理解が浅い人はイメージしないか,そもそもできない。 (3)理解が深い人は体験する。 理解が浅い人は体験しない億劫な性格である。 (4)理解

    5分で人を育てる技術 (37)“理解が浅い人”と“理解が深い人”の8つの違い(後編)
  • Excel/VBAクリニック,今月の診断

    Microsoft Excelは,VBA(Visual Basic for Applications)と呼ぶプログラミング言語を使えます。この連載では,VBAを使う上で生じる悩みや疑問を,クリニック形式で解説していきます。 【第1回】バグの予防にエラー・トラップ 【第2回】自作関数にヘルプを設定する処方 【第3回】Accessのデータを取り込む処方 【第4回】印刷時の怪現象に対処する処方 【第5回】印刷時の怪現象に対処する処方その2 【第6回】マクロだけを更新するには 【第7回】自作ツールバーでマクロ実行を容易にする処方 【第8回】イベント・プロシジャを関数代わりに活用する 【第9回】ユーザー・インタフェースにOfficeアシスタントを利用する 【第10回】エラー・トラップが働かないときの対処法と手抜きテクニック 【第11回】セルのイベント・ドリブンで自動入力 【第12回】再帰的に表現でき

    Excel/VBAクリニック,今月の診断
  • 〔続〕Excel/VBAクリニック,今月の診断---目次

    Excel/VBAファンの皆さん,お待たせしました! あの「Excel/VBAクリニック」が戻ってきました。よりパワーアップし,内容を濃くした「〔続〕Excel/VBAクリニック,今月の診断」をお楽しみください。 【その1】セルの文字列を指定文字で分解する 【その2】メッセージボックスの文字列を改行する 【その3】ユーザー入力のデータに全角と半角の数字が混在して困る 【その4】マクロ実行中のメッセージを出したい 【その5】複数のコントロールを配列のように処理したい 【その6】グラフを一括して変換する 【その7】音で知らせる 【その8】項目数可変の小計/合計欄の作り方 【その9】親オブジェクトを省略できない罠 【その10】シートごとに異なるフォームを表示する 【その11】リストボックスのリストを動的に作る 【その12】進ちょく状況を表示する 【その13】全シートにわたって検索する 【その14

    〔続〕Excel/VBAクリニック,今月の診断---目次