shのwhileループでファイルを読み、中でsshを実行すると1回しかループしない 2011-03-18 シェル(sh)スクリプトネタ。 while 文で以下のように指定すると、行ごとにファイルを読み込むことができる。 #!/bin/sh \# ファイルを1行ずつ読み込んで表示 TESTFILE=./hoge.txt while read line do echo $line done < $TESTFILE
Windows環境 PuTTY, Tera Term Pageant.exeを使う 起動時の引数に秘密鍵のパスを与えると便利。 ショートカットを作って、スタートアップ登録すると更に便利。 例: "C:\Program Files (x86)\PuTTY\pageant.exe" "C:\hoge\fuga.ppk" ssh-agent.exeを使う 参考: http://mattn.kaoriya.net/software/20081106192615.htm Poderosa メニュー「ツール」「エージェントフォワーディング」から設定をする Mac OS X環境 ※ssh-agentの起動は不要 秘密鍵の登録状況の確認
WebOS Goodies へようこそ! WebOS はインターネットの未来形。あらゆる Web サイトが繋がり、共有し、協力して創り上げる、ひとつの巨大な情報システムです。そこでは、あらゆる情報がネットワーク上に蓄積され、我々はいつでも、どこからでも、多彩なデバイスを使ってそれらにアクセスできます。 WebOS Goodies は、さまざまな情報提供やツール開発を通して、そんな世界の実現に少しでも貢献するべく活動していきます。 SSH ではログインするときにパスフレーズの入力が必要ですが、ときどきこれが億劫になるときがあります。例えば scp コマンドでファイル転送を繰り返すときなど、転送のたびにパスワードを打ち込まなければなりません。 元来、人間というのは単調作業が苦手です(プログラマーなどと呼ばれる人種はこの傾向が顕著なようです^^;)。同じパスフレーズを何回も入力するなど、苦痛以外
意外と知らない人がいるようなのでブログに書いておきます。 GitHub のアドレスのあとに .keys を付けるとその人の SSH 公開鍵が表示される。 たとえば id774 さんの公開鍵であれば https://github.com/id774.keys を参照すれば良い。 ぜひ自分のアカウントで試してみて欲しい。 新規に用意するサーバーの ~/.ssh/authorized_keys に上記アドレスを wget したものを置いて適切なパーミッションを設定しておけばすぐに公開鍵認証ができるというわけである。 もうそろそろ公開鍵をメールで送ってくれとかいう文化が滅亡して GitHub から勝手に公開鍵を持っていくのが常識な世界になってほしい。
SSHポートフォワーディング(トンネリング)を利用して、外部サーバーで稼働しているMySQLデータベースに接続する方法を紹介します。 SSHポートフォワーディングとは SSHポートフォワーディングの仕組みがわかってしまえば、今回の話は簡単です。要は上図のように、SSHによって確立された通信経路を利用してクライアントの10000ポートをサーバーの3306ポートにマッピングするわけです。 つまり、このポートフォワーディングが行われているときにクライアントのローカルの10000ポートに接続すれば、サーバーの3306ポートに接続していると変わらないというわけです。 しかも、このとき通信経路はSSHによって暗号化されおり、また接続先のポートがファイアウォール等で閉じられていたとしてもSSHのポートさえ開いていれば利用可能という非常に使い勝手がよい仕組みになっています。 ポートフォワーディングを実行す
MacFUSEとかOSXFuseとか色々あるみたいですがhomebrew経由でインストールしたソフトだけで環境を作りたかったのでメモ。 まずsshfsを確認します。 ➜ ~ brew info sshfs sshfs 2.4.0 http://fuse.sourceforge.net/sshfs.html Depends on: pkg-config, fuse4x, glib, automake, automake, libtool Not installed https://github.com/mxcl/homebrew/commits/master/Library/Formula/sshfs.rb ==> Caveats Make sure to follow the directions given by `brew info fuse4x-kext` before trying
Macfusion brings servers from across the internet directly to your Mac's desktop! Mount files and documents as a "Volume" in the Mac OS X Finder. Work with your files using your favorite Mac OS X applications directly. No manual upload or download needed! Support for SSH (Secure Shell) and FTP (File Transfer Protocol) servers. Uses your machine's native configuration for SSH, including support for
ref. openssh 4.9以降でchroot ssh chroot するディレクトリを /chroot の例 ↑のエントリにも書いたように、以前のpatch版のchrootの場合は sshd_configには特別に記述をせずに、/etc/passwdに hoge:x:1000:1000::/chroot/./home/hoge:/bin/bashと書くだけだった。 これに対してopenssh 4.9 以降では、sshd_configに Match user hoge ChrootDirectory /chrootと書いて、/etc/passwd には 設定するディレクトリ、/chroot からのパスである/home/hoge を記述する。 hoge:x:1000:1000::/home/hoge:/bin/bash chroot ユーザで公開鍵認証するとき ユーザの実際のホームディレ
随分前から使っているSSHFSがなかなか便利。 SSHFSとは SSHFSはリモート(サーバ)のディレクトリをマウントしてひとつのボリュームとして扱えるようにするファイルシステムのことで、サーバ側ではsshdさえ設定してあればクライアントのセットアップだけで使えるようになる。 基本的にはDropboxからキャッシュ機能を引いたものと同じと考えても問題ないでしょう。Dropboxに見られると嫌な書類をおいておくのは気持ち悪い*1 / *2&容量面でMP3を置くのが躊躇われるので、そこそこ使い道はありそう。 使い道 最近は iTunes Media ディレクトリ ドキュメント類 をサーバに置いて、クライアントではそれをマウントする形で利用中。 セットアップ サーバ側はSSHの設定さえしてあれば何もする必要はない(必要に応じてディレクトリを作っておくくらい)なので、クライアント側をセットアップ。
以前はリモートのファイル編集するのにEmacsでTRAMP使ってたんですが、sshfsの方がシェルでcdとかlsできるし、Emacsでoccurとかもできるしいいよねってんで最近はsshfs使ってます。 で、sshfsしたいホストが多いといろいろめんどくなるんで、↓みたいなヘルパスクリプト書いて使ってましたよって話です。 マウントポイントをまとめておくディレクトリ(~/r/とか)の下に、予めsshfsするリモートホストの名前のディレクトリを作っておきます。sshするときユーザー名が必要なホストはUSERNAME@HOSTNAMEでmkdirしときます。 $ cd ~/r/ $ mkdir host1 $ mkdir foo@host2 あとは末尾のヘルパスクリプトで、sshfsでマウントしたり、sshfsなマウントポイントの一覧を見たり、アンマウントしたりできます。 $ ./m host1
sshには言わずと知れた「ポートフォワード」という機能があります。 読んで時の如しで、sshの暗号化されたトンネルを利用し、任意のポートに来た通信を転送できます。 何がうれしいかと言うと、リモートの 5432番 をローカルの 5432 にマッピング出きる。 つまり、sshさえ繋がれば、そのサーバから見える範囲ならなんでも使える!と言うことです。 1・ローカルへリモートのポートをマッピング 例えば、二つのホスト(chiba, shiga)があるとします。 chibaに、shigaの5900ポートをフォワードする場合は以下のようになります。
五月病が抜け切らないIT系新入社員に贈るシリーズ第1段。 ~/.ssh/configにはいろいろな設定が書けるが、周囲を見渡した限り、あまり活用されているようには見受けられない。そこで、今回は便利な設定をいくつか集めてみた。 長いホスト名に短い名前をつける Host exp1 HostName verrrryyy.looooong.hostname.example.jp ssh verrrryyy.looooong.hostname.example.jpの代わりにssh exp1でログインできるようになる。 ちなみに、zshの場合、configファイルに登録されたホスト名はsshコマンドを打つときに補完されるので更に便利。 特定のホストへログインするときのユーザ名や鍵をカスタマイズする Host github.com User tkng IdentityFile ~/.ssh/id_rsa
sshって制限かけなければどこからでもアクセスできてすごく便利だし、サーバの近くで作業するとホコリやファンの音でうるさいから、よほどの精神力を持った人じゃなければ通常はsshを使って作業をしていると思う。 だけど、iptablesの設定をいじっていて葬ってしまったり、ネットワークの設定いじっていたら急にコマンド受け付けなくなったりすることもその分多かったりする。 しかも仮想コンソールとかなければ遠隔じゃどうしようもないから、現場に行かなきゃいけないわけですよ。 そんな精神的ダメージを避けるためにも、事前に対策しておきましょうぜというお話し。 検証環境 検証環境はこんな感じ。 (192.168.1.3) ---------- (192.168.1.5) (getty等立ち上げ) (cu, screen, jerm, minicomによるアクセス)同一ネットワーク内にある2台のサーバ(Cent
「入門OpenSSH」 (新山 祐介 著) は、 2006年6月に秀和システムから刊行されました (2009年末に絶版)。 秀和システム 「入門OpenSSH」のページ ここで公開している原稿は、最終的な版下になる前のものです。 実際に出版された書籍とは異なっている部分があります。 重大な間違い等がありましたら、新山までお知らせください。 () 注意: 本書が刊行された時点での OpenSSH のバージョンは 4.3 でした。 現時点(2011年2月)における OpenSSH のバージョンは 5.8 です。 変更履歴 2010/09/12: 公開。 目次 はじめに 第1章. OpenSSH を導入するにあたって 1.1. OpenSSH とは 1.2. OpenSSH にはできないこと 1.3. OpenSSH ができること 第2章. OpenSSH をインストールする 2.1. 現在イン
動機 [local] $ ssh dev-server [dev-server] $ ./do-something-that-takes-long-long-time.sh Processing... # ああっいつ終わるかわからないコマンドを実行してしまった、Growlで終了を通知できたら…… # しかしサーバ側に特殊なソフトを入れたくないし ソリューション require 'rubygems' require 'sinatra' require 'ruby-growl' g=Growl.new 'localhost','general',['general'] get '/:message' do g.notify 'general','Message from remote',params[:message] 'hello!' end # 事前に上のスクリプトを走らせておく [loc
OpenSSH で生成した秘密鍵を使って Poderosa で公開鍵認証をしようと思ったのですが 「Wrong Key Format」なるアラートがでて困り果てました。 いろいろ調べてみると OpenSSHの鍵ファイルは変換しないと使えない ・・・それ先に言ってくださいzz SECSH 形式への変換方法 PuTTYに付属している「PuTTYgen」というプログラムを利用します。 ※このままPuTTYに乗り換えてもいいんジャマイカ? PuTTY(SSHクライアント)をインストールしてください。 更に日本語化するならPuTTYjpをインストールしてください。 PuTTYgenを起動します。 Loadボタンを押しOpenSSH 側で生成した秘密鍵を読込みます。 秘密鍵を無事に読込めれば、以下のメニューを選択する Conversions ⇒ Export ssh.com key SECSH
OpenSSH SSH クライアント 設定ファイル 書式 ~/.ssh/config /etc/ssh/ssh_config 説明 ssh (1) は以下のものから (この順序で) 設定情報を取得します: コマンドラインオプション ユーザごとの設定ファイル 各設定項目にはそれぞれ最初に見つかったものが使われます。設定ファイルはいくつかのセクションに分かれており、これらは"Host"キーワードにより区切られています。あるセクションの設定が適用されるのは、コマンドラインから与えられたホスト名が、このキーワードで指定されているパターンのどれかにマッチするときだけです。 各設定項目で最初に見つかった値が使われるので、ホストに特化した宣言をファイルの先頭近くに置くようにし、一般的なものを後に置くのがよいでしょう。 設定ファイルは以下のような形式になっています: 空行、および # で始まる行は、コメン
なんと、秘密鍵、公開鍵を自動生成してくれるWEBサービス!! http://d.hatena.ne.jp/daigaku-syokuin/20100905/p1 このエントリがはてブコメントで批判され気味のようだが、本当にそこまで非難されるべきサービスなのだろうか? 僕も最初はこれ駄目だろwと直感的に思ったんだが、よくよく考えてみたらちょっと条件がつくけど鍵ペアの生成自体には別に問題なんじゃね?と思い直した。 追記:(注意)このエントリの前半部は「ある閉じたシステム利用の為の鍵生成サービスの是非」について考察しています。後半部では違った結論もあるので読むなら最後までちゃんと読んでね。 鍵生成自体は問題ないんじゃね? 僕が思うにキーペア生成WEBサービス自体は以下の条件がクリアされていれば問題ないと思うのよ。 通信路がちゃんとした証明書付きのhttpsであること。 生成された秘密鍵がサーバ側
環境は、 FreeBSD eagle 7.2-RELEASE-p2 FreeBSD 7.2-RELEASE-p2 #0: Wed Jun 24 00:14:35 UTC 2009 root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC amd64 まずは、sftp でログインさせる用のアカウントを作成。group は sftponly に。 通常のログインはさせたくないので、 shell nologin にしておく。 /etc/ssh/sshd_config に以下を追加。 Subsystem sftp internal-sftp # さっきの sftponly にマッチさせるルールを書く Match Group sftponly # あんまりやりたくないけど、クライアントの関係でパスワード認証をしぶしぶ有効に Pas
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く