第18回シェル芸勉強会のLTで使ったスライド https://usptomo.doorkeeper.jp/events/28602
今日はPHP製のデプロイツールの紹介です。デプロイツールとはCapistranoみたいなツールのことです。コマンド一発でデプロイが完了するようにするツールです。 PHP製のツールもいくつかありますが、Deployerは非常にシンプルなツールで、最近3.0がリリースされました(最新版は3.0.4)。 https://github.com/deployphp/deployer/releases/tag/v3.0.0 より。 インストールが簡単 公式サイト http://deployer.org/ へアクセスし、deployer.pharをダウンロードするだけです。 公式には/usr/local/bin/depにインストールすると書いてありますが、プロジェクトのフォルダに突っ込んでも問題ありません。 私はプロジェクトのルートにdeployというフォルダを作成し、そこに関連するファイルをまとめるこ
近年、ChefやPuppetなどの構成管理ツールが人気だが、新たに注目されつつある構成管理ツールとして「Ansible」がある。Ansibleは設定ファイルがシンプルで、管理対象サーバーに特別なソフトウェアをインストールすることなく利用できるなど、最小限の手間で各種設定を自動化できるのが特徴だ。今回はこのAnsibleについてその基本的な使い方を紹介する。 小規模な環境でも手軽に使えるAnsible あらかじめ用意しておいた設定ファイルに従って、ソフトウェアのインストールや設定ファイルの修正、サービスの起動/停止、ネットワーク設定といったサーバーの各種設定を自動的に実行するソフトウェアを構成管理ツールと呼ぶ。代表的なものとしては、さくらのナレッジでも過去に取り上げているChefやPuppetがある。 関連記事: サーバー設定ツール「Chef」応用編:knife-soloとData Bagを
ポートフォワーディング(port forwarding)とは、ローカルコンピュータの特定のポートに送られてきたデータを、別な通信経路を用いてリモートコンピュータの特定ポートに送信する事です。 この通信経路には、SSHを利用する事が多いです。 SSHの通信路を使用することによって、通信を暗号化することができます。 通信のイメージは図のようになります。 通常は、各アプリケーションが、それぞれのポートを使用して暗号化されていない平文で通信を行います。 しかし、このままではパケットの盗聴などセキュリティに危険が生じます。 そこで登場するのが、”SSHを利用したポートフォワーディング(Port Forwarding)”です。 この方法によって、通信は暗号化されたSSHの経路を通ります。 従って、平文よりも安全性を高める事ができます。 では、実際の通信の経路を追ってみましょう。 通常の通信では、各アプ
追記 はてブでつっこみもらいました が、実行するカレントディレクトリは /var/lib/docker/execdriver/native/$id を使うのが正しいようです。(情報読み違えてた。)こちらには container.json があるので、ソースツリーからコピーしてくる必要ないですね。 また、コンテナ ID 取得は、docker ps -q --no-trunc の方が良い、とも教えていただきました。 つっこみにしたがって、最後の方の説明とシェル関数書き換えました。 つっこみありがとうございます! tl; dr タイトルまま 経緯 Docker でつくったコンテナの中に入って状態を確認するために、コンテナ内で sshd を立ち上げてアクセスする、ってなことを以前やってたんですが、コンテナ内で sshd を立ち上げる、というやり方がいまいちだし、そもそもコンテナの仕組みから考えれば
RSA暗号はHTTPSやSSHの通信で利用されている暗号化方式です。公開鍵として巨大な素数の積を交換しあって暗号に利用しており、この素因数分解が困難であることにより安全性が担保されています。このことは教科書にも載っているような内容で、ご存じの方も多いかと思います。 ところで、その素数の積を実際に見たことってありますか?少なくとも僕は見たことがありませんでしたし、大抵の人は見たことが無いのではないでしょうか。本稿ではこの公開鍵の情報を見る方法を紹介します。 OpenSSH公開鍵の中身を見る まずはOpenSSHの公開鍵の情報を取り出してみます。OpenSSHの公開鍵は次のようなものです。 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCw+XdXSrhBcDFAXPcisrc8im4y8ytC46HEQ0GsWOph9OPK1elTQmBD5LATGfp4JG4
わたし的棚ぼた一万円選書 急に千葉さんに手渡された封筒、開けてみたら1万円札が1枚。何ごとかと思えば、同期の出張を代わったお礼をもらったらしい。 「葵はワンオペで育児してくれたから」と半分わけてくれました。 泡銭の1万円 これはもう、わたし的1万円選書をしろという思し召しなのでは……
自分の場合はこれを利用させて頂いてます。 使い方は簡単で、どこでもいいから適当にリンク先のコードをファイルに書き出して置いておく。 例だと~/bin/ssh-host-color となっているので自分もそうしている。 特にPATHが通っている必要はない。 ポイントはコード中の if [[ "$@" =~ thomd ]]; then set_term_bgcolor 40 0 0 elif [[ "$@" =~ git ]]; then set_term_bgcolor 0 40 0 fi で、ifの中のthomdやgitに当たる箇所を変更する。 実際にsshコマンドの中に含まれている文字列を書いておくことで、それに反応してset_term_bgcolorが実行される。 set_term_bgcolorの後の数字はRGBに当たる数字になっているので、自分でお好みの色を指定すればよい。 配置
仕事でsftpがどうの、、、とかいう話が出たので調べてみた。 ★sftpって…? wikipedia先生。 SSH File Transfer Protocol (以下SFTP) とは、SSHの仕組みを使用しコンピューター間でファイルを安全に転送するプロトコルである。sftpは、このプロトコルを利用するコマンドの名前である。 OpenSSHには、sftpコマンドがサブシステムとして含まれる。 ありがう。 ★実験内容 つまり、FTPみたいなことをSSH通信でできるということらしい。 仕事関連ということから実験テーマは 「Windowsからバッチファイルでファイル転送を」 に決定。 ★事前準備(サーバ側とか) SSH動いてるサーバがあること(OpenSSHね) ↑のサーバのSSHの設定でsftp使うようになっていること ↑のSSHの公開鍵が設定されていること(鍵使わないなら要らない)
インストールするまで サーバを沢山管理することになりました.それらのサーバではrubyを使っていたので,rubyベースのdeployツールCapistranoを使ってみる事にしました.Capistranoは2009/2に作者がもうメンテナンスしないぜと宣言したプロダクトです.とはいっても,コミュニティがメンテすることになるだろうから今後も問題ないだろうなと思ってます.それはそれとして,CapistranoをインストールするにはRubyGemsが必要なのでまずはそこからインストールします.RubyGems の使い方 - WebOS Goodiesを見ながらwgetでファイルをダウンロードして, # ruby setup.rb でインストールします.Capistranoは $ sudo gem install capistrano でインストールできます. 秘密鍵の管理 普段色々鍵を使っていて
% svn co svn+ssh://hogehogeとかで、sshを使ってSubversionにアクセスできることはしってたんだけど、いつもDAV経由にしちゃうのであまり使ったことがなかった。 で、今回は、ssh経由でsvnにアクセスしなきゃならなかったんだけど、DSA(別にRSAでもいいんだけど)の公開鍵を使って接続する方法がわからなかったから調べてみた。 あ、前提として、接続先サーバには鍵認証を使ってsshできるようになっていること。 結論から言うと、どうやら scheme を自分で定義することになるようだ。 $HOME/.subversion/configを見ると、 ### Section for configuring tunnel agents. [tunnels] ### Configure svn protocol tunnel schemes here. By defau
たまにしか使わないため,使おうと思ったときに忘れているのでメモ. ssh-keygen -i -f id_rsa_putty.pub > id_rsa.pub via: まつぼっくり - puttyで作成したプライベートキーをopenssh形式へ変換する方法 http://www.tymy.net/~matsu/blog/2008/03/14/putty%E3%81%A7%E4%BD%9C%E6%88%90%E3%81%97%E3%81%9F%E3%83%97%E3%83%A9%E3%82%A4%E3%83%99%E3%83%BC%E3%83%88%E3%82%AD%E3%83%BC%E3%82%92openssh%E5%BD%A2%E5%BC%8F%E3%81%B8%E5%A4%89%E6%8F%9B%E3%81%99/
Puppet や Chef で構築したサーバを RSpec でテストする で書いた仕組みを使いやすくするために serverspec という名前で gem 化してみた。 rubygems.org にも登録してあるので、gem install でインストールできる。 $ gem install serverspec インストールしたら、適当なディレクトリで serverspec-init を実行。すると、雛形となるディレクトリやファイルを生成する。 $ serverspec-init + spec/ + spec/www.example.jp/ + spec/www.example.jp/httpd_spec.rb + spec/spec_helper.rb + Rakefile spec/www.example.jp/httpd_spec.rb がサンプルテストコードで、こんな感じになって
Windowsからssh2でLinuxにログインするにはでは、PuTTYを使ってsshプロトコルバージョン2(ssh2)でLinuxに接続する方法を紹介した。この方法ではパスワード認証を使用しているため、パスワードが知られてしまえばほかのユーザーでもアクセスできてしまう。ここで紹介する鍵交換方式の認証に変更すれば、鍵を持っていないユーザーはアクセスできないので、より安全である。 最初にputtygen.exeというプログラムを使用して、秘密鍵と公開鍵を作成する。puttygen.exeは、PuTTYのWebサイト(http://www.chiark.greenend.org.uk/~sgtatham/putty/)のdownloadページからダウンロードできる。 puttygen.exeを実行すると、[PuTTY Key Generator]というウィンドウが表示される。ここでは、ssh2
Github っていう超ベンリスーパークールサービスがあるんですけど、このサービスを使うと VPS のセットアップがすごく楽。 皆いろんなマシンとか持ってて SSH 鍵もいくつも持ってると思うんだけど、このサービスを使えば VPS のセットアップの時にいちいちいろんな公開鍵を集めて SCP で配置するみたいな手間がなくなる。 具体的には $ wget https://github.com/[username].keys $ mv [username].keys .ssh/authorized_keys $ chmod 600 .ssh/authorized_keys すると良い。 Github に登録してある公開鍵は上記の URL で取れるので、例えば友達と共有サーバーを作るみたいなときにも役に立つ。 ギッハブマジ便利だなー
先日 Vagrant を触ってみたら便利すぎて鼻血が出ました。しばらく見ないうちに色々進んでるもんですねえ、いやはや参っちゃいました。 Vagrant は仮想マシンの VirtualBox のフロントエンドに相当する、ruby で書かれたツールです。vagrant コマンドなどを使ってコマンドラインから簡単に新しい VM を作れる。 % gem install vagrant % vagrant box add centos http://developer.nrel.gov/downloads/vagrant-boxes/CentOS-6.3-x86_64-v20130101.box % vagrant init centos % vagrant upこれだけで CentOS の Linux box をローカルマシン内に立ち上げることができる。*1 *2 なにこれすごい。 % vagra
はじめに ちょっとデプロイしてスマホで確認したい、皆に見てもらって感想が欲しい、とにかく直ぐにデプロイしたい。そんな時に便利なgrunt.js用のタスクのgrunt-rsyncです。 rsyncコマンド知ってますか? 僕は知りませんでした(汗。ファイル群の同期を取る用途のコマンドです割と古くからあるみたいです。多くのUnix系環境にデフォルトで入っているようです。名前の通り、ファイルの同期を取るのがこのコマンドの仕事で、ローカル同士でもリモートともSCP経由などで同期を取れるようです。 詳しくはWikiで。 grunt-rsyncパッケージ rsyncwrapperというrsync用のパッケージを使用しているgrunt用タスクです。もっとシンプルにrsyncをラップしている grunt-rsync-2 というのも存在しますが、コピーに失敗してもがエラーが出なかったのでこちらの方がいいと思い
以前、ブログに書いて以来、活用しているpsshとpscpなんですが、 付属コマンドのpslurpについてはすっかり忘れて全く利用していなかったんですが、 同僚の刺身さんが結構活用しているというのを聞いて、改めて使ってみると大変便利! Parallel sshで複数のホストへ同時にコマンドを実行する | Glide Note - グライドノート 環境はSL6.1です。 pslurpの使いどころ 複数のサーバからaccess.logなどのログ、my.cnfといった設定ファイルなどの同名ファイルを持ってくる場合 DNSラウンドロビンや、ロードバランサを利用していてアクセスログが分散している場合 通常何も考えずscpとかで持ってくるとファイルが上書きされてしまうので、 ホスト毎にファイルを分けて管理したい場合にpslurpが活躍します。 pipを利用してpsshの導入 2012年なんでeasy_i
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く