投稿

1月, 2014の投稿を表示しています

configファイルでsshを管理する方法

ssh事情 sshでサーバーに接続するときのお話をします。 管理するサーバーが増えてくると、それぞれの環境によって微妙にsshの設定が違ってきてしまう場合はありませんか?サーバーが一括で管理されていればこんなことを起こらないのでしょうが、少しづつサーバーを増やしたり、担当者が変わったりすることで、仕方なく…ということはよくあることです。 今回はconfigファイルを使って、より便利にsshを利用できるような管理方法をご紹介します。 configファイル ところで、 ~/.ssh/ フォルダに config というファイルがあるのはお気づきですか?テキストエディタなどで開いてみると、何も書かれていないか、次のように記述されていると思います。まずは、このファイルの記述方法を学びます。 Host foo HostName bar .com Port 10022 Protocol 2 IdentityFile ~/ .ssh /id_rsa User baz 項目 内容 Host sshコマンドに指定するためのラベルの役割を果たします。 ※ ホストの設定は複数行うことができます。 HostName ホスト名を入力します Protocol SSHのプロトコルを指定します。 SSH2などと書かれていたら2を指定します IdentityFile 秘密鍵の場所を指定します User 接続するときのユーザーを指定します この設定を行うことで、次のような利点もあります。 ssh foo と入力することで、sshコマンドはconfigファイルを参照して次のようにコマンドを入力するのと同じことになります。 ssh baz @bar .com -p 10022 -i ~ /.ssh/id _rsa 事例 事例1:ユーザー名は同じだけど、ポートがことなる Host production_sv HostName bar .com Port 10022 User baz Hos

sshで利用する秘密鍵と公開鍵の作成方法

公開鍵と秘密鍵 sshでリモート接続を行いたいときは、パスワードよりも公開鍵を使うのが定石です。この記事では、秘密鍵と公開鍵を作成する方法を紹介します。コマンドを打つだけで鍵を作成することができるんですよ。 公開鍵、秘密鍵の作り方 鍵を作成するときは、 ssh-keygen コマンドを利用します。 ssh -keygen -t rsa -C "user@example.com" -f ~ / . ssh/id_rsa 上記のコマンドを入力すると、パスフレーズの入力をうながされます。パスフレーズは大切なものなので忘れないようにしましょう。これで秘密鍵 ~/.ssh/id_rsa 、公開鍵 ~/.ssh/id_rsa.pub ができあがります。 それぞれのスイッチの機能は以下のとおりです。 項目 内容 -t 暗号化の方法を指定します。 rsa1(ssh1)rsa(ssh2)dsa(ssh2) -c コメントを入力します。 メールアドレスを入力するのもいいでしょう。 -f 出力先を指定します できあがった公開鍵は接続先に持っていきましょう。

JavaでDropbox Core API のチュートリアルをやってみる

イメージ
JavaでDropboxを操作しよう オンラインストレージサービスの雄であるDropbox。そのDropboxをJavaを通して使ってみたいと思いませんか?この記事ではDropboxのJavaチュートリアルをハンズオン形式でやってみようと思います。JavaとはいうもののAndroidではありません。ごめんなさい。 アプリ作成の申請 プログラムに取り掛かる前に、Dropboxにアプリ作成の申請をします。Dropboxのサイトには開発者用にアプリを管理するページが用意されています。さっそく Dropbox App Console に行ってみましょう。 「Create app」ボタンを押すと、次のようなページに行きます。どんなアプリケーションにするのか?という質問に答えた後、アプリの名前を入力します。アプリの名前は他にないものを入れる必要があるようです。サイトの名前などを入れてはどうでしょうか?私は「prism7-backup」と入力しました。「Create app」ボタンを押すとアプリの登録が完了です。 登録が完了すると、アプリの情報が書かれたページに行くと思います。その中の App key と App secret はプログラムの時に必要なので、どこかにひかえておいてください。これでDropboxのサイトでの作業はおしまいです。 プログラムパート まずは チュートリアルページ をのぞいてみます。この記事では、認証(Authenticating your app)からファイルのアップロード(Uploading files)までをやってみます。 プロジェクトの作成 Dropboxはアプリを簡単に作成できるようにSDKを公開してくれています。SDKはDropboxのサイトからもダウンロードすることができますが、ここではMavenを利用してSDKをセットアップします。 < dependency > < groupId > com.dropbox.core </ groupId > < artifactId > dropbox-core-sdk </ artifactId > < version > 1.7.6 </ version &g

Mavenを体験してみよう

イメージ
たくさんのライブラリに囲まれて Javaにはとてもたくさんのライブラリがあります。このようにライブラリがあふれるようにあると、いつしかライブラリを使うことが当たり前になって、このライブラリを使うためには、このライブラリが必要ですという風にライブラリたちが関係性を持ってきます。Mavenではこの関係性のことを依存関係(Dependency)と呼んでいます。 たとえば、Dropboxが提供している「Dropbox Core API SDK」は「jackson-core」に依存しています。ライブラリのバージョンが変われば、依存しているライブラリのバージョンも変わるかもしれません。ライブラリのことで右往左往したくないですよね? この記事では、Mavenのプロジェクトを作成してライブラリを追加する。という体験をしてもらおうと思います。 Mavenハンズオン プロジェクトの追加 まずはプロジェクトを作成します。Packegeビューで右クリックをして「New」「Maven Project」を選択します。 「Create a simple project」にチェックを入れて「Next」を選択します。 Group Idにはパッケージ名(私はcom.prism7と入力しました)、Artifact Idにはプロジェクトの名前を入れます(ここではhelloと入力しました)。 最後に「Finish」を選択すると、プロジェクトが作成されます。 ライブラリを探す プロジェクトが作成できたら、ライブラリを探しに行きます。今回はDropboxのSDKを題材にしてみます。数々のライブラリが蓄積されている Maven Central Repository に行ってみましょう。「dropbox」で検索をかけてみます。 検索結果にいくつかのバージョンが出てくると思います。私は1.7.6を選択しました。すると、次のようなXMLが表示されると思います。クリップボードにコピーしておきます。 < dependency > < groupId > com.dropbox.core </ groupId > < artifactId > dropbox-core-sdk </ ar

Mavenを知ることで広がるJavaの世界

Java初心者のために書きます この記事はこれからJavaを始めようという初心者や、ライブラリにを上手に使いたいという人たちのために書きます。もっと効率のいい開発手法がないかと模索している人にもお役に立てるかもしれません。 Mavenを使うことによって生ずる利点 Mavenは非常に多くの機能を持っているため、ひとことでこういうことをしてくれるソフトウェアです。というのが難しいです。まずは、主要なものを以下に挙げてみます。 プロジェクトに必要なライブラリ(jar)をそろえてくれる プロジェクトのコンパイル プロジェクトのテスト プロジェクトのパッケージング これらをながめると、Mavenというのはプロジェクトの面倒を見てくれるソフトウェアということが言えそうです。この中でも「プロジェクトに必要なライブラリ(jar)をそろえてくれる」はとても便利な機能です。 ソースコードやライブラリをひとまとめにしたものをプロジェクトと呼びますが、ソースファイルの配置場所や利用しているライブラリのバージョンなどは開発する人によって異なります。これに対してMavenは一定のルールを作ることで「環境をそろえる」という利点をもたらしてくれました。Javaは多人数で開発することが多いと思うのですが、そういう時こそMavenの登場といえるでしょう。 やさしいMavenのはじめかた Mavenはコマンドラインのソフトウェアですが、Eclipeseなどのプラグインを利用することで、コマンドを意識することなく利用することができます。Eclipseのプラグインをそろえるのは骨が折れるので、ここはSpring社がリリースしているSpring Tool Suite(STS)というEclipseベースのIDEを利用したいと思います。STSは Springのサイト にて配布されています。

Luaを始めます

SquirrelとLua 先週「Squirrelに挑戦します」の記事を書きました。舌の根も乾かぬうちにLuaにお引っ越しします。その理由はといいますと、Squirrelを勉強しているうちに、ファイルのインポートの機能がないことに気がついたからです。そもそも、なぜスクリプト言語を学ぼうかと思ったというと、ゲームやアプリケーションのロジックを共通化するためでした。1つのファイルにすべての機能を集約してしまえばできないことはありませんが、1ファイル1クラスのようなファイルとアプリケーションの構造が合っている方が好みなのです。 というわけで、Luaのインストールにお付き合いください。対象の環境はMacOS Xです。その他の環境の方はごめんなさい。 Install Lua さて、Luaのインストールです。Luaのサイトにもあるように、ソースファイルをダウンロードしてきて、手元でビルドするのが良さそうです。バージョンは記事作成時のものなので、適宜に読み替えをお願いします。(curlを使わなくても、ブラウザなどを使ってダウンロードしても構いません) curl -R -O http://www .lua .org /ftp/lua- 5.2 .3 .tar .gz tar zxf lua- 5.2 .3 .tar .gz cd lua- 5.2 .3 make macosx test 上記でコンパイルが確認できたらインストールしましょう。 make macosx install バージョンも確認してみましょう。 lua -v インストールが終わったらダウンロードしたファイルや展開&コンパイルしたファイル群は削除して構いません。ですが、Makefileにはアンインストールの機能が含まれていますので、将来的にアンインストールする可能性がある場合は適当な場所にとっておきましょう。 which lua をしてインストールされている場所を確認してみましょう。私の環境では /usr/local/bin/lua でした。 with SublimeText Install Package 先日の記事でもお話したように、私はSublimeTextを利用しています。Luaに関するパッケージを探してみると、 Lua Dev というパッケージを見つけました。こ

Squirrelに挑戦します

はじめに Squirrelというスクリプト言語を使ってプログラミングをしてみます。フットプリントの小さなスクリプト言語はいろいろなところで動かすことができるのでとても便利です。 Install ソースコードからビルドする方法もあるようですが、Macの場合はMacPortsを利用するのが簡単なようです。 sudo port install squirrel with SublimeText SublimeTextの吊るしには、Squirrelのスニペットやビルドシステムはビルトインされていません。それぞれ追加してみましょう。 Install Snippet 運の良いことに、スニペットを 公開 してくださっている方がいらっしゃいました。 Add Build System ショートカット ⌘ + b ですぐに実行できるようにBuild Systemを整えます。メニューから「Tools」「Build System」「New Build System…」を選択してSquirrelの設定を行います。次のように入力して、 Squirrel.sublime-build の名前で保存します。 { " cmd ": [ "sq" , "$file" ] , " file_regex ": "(.*\\.nut?)\\s\\(([0-9]+)\\,([0-9]+)\\)\\:\\s(...*?)$" , " selector ": "source.nut" , " osx ": { " path ": "/usr/local/bin:/opt/local/bin" } } MacPortsでインストールを行うと、 /opt/local/bin にインストールされるはずですが、もしも別の場所にインストールされている場合は( which sq などで調べることができます)pathを書き換えてください。

Squirrelを学びます

イメージ
学習のコツ 皆さんは新しい言語にふれるときに、どのような学習方法を採っていますか?私は、手を動かしてコードを書き、実行してみるということをします。その時のコツはできるだけ早く結果が返ってくる環境を整えることです。先日のPostでSublimeTextでの実行環境を整えましたが、トライ・アンド・エラーを手元で簡単に試すことができれば、言語の習得は早まるというわけです。 写経と称して、ソースコードをひたすら入力するやり方があります。ただ書き写すだけではなく、実行して結果を確認するところまで行うのがいいと思います。 参考書を紹介します Squirrelは素直な言語なので、なにかひとつプログラミング言語を使うことができれば、公式サイトのリファレンスを読みながらでも進めていくことができると思います。ですが、日本語で書かれた書籍をたよりにすれば、より理解が深まると思います。私は達人出版会から出版されている書籍を使って勉強を進めました。 PDF形式でダウンロードすることができるので、横に置きながら学習することができます。スマートフォンやタブレットを使うのもいいアイディアですよね。 はじめる! Squirrel【電子書籍】 ykanda 達人出版会 発行日: 2010-12-09 対応フォーマット: EPUB, PDF 詳細を見る この書籍はSquirrelのバージョン2.2.4を元にして執筆されています。この書籍にそって進めるとテーブルのdelegateのあたりでつまづくと思います。なぜならば、Squirrelのバージョン3ではdelegeteキーワードが廃止されているからです。でも大丈夫、書籍の最後に付録という形でバージョン3へのフォローがなされています。