必要になったので実は初めて設定してみた。その際に、やりかたをぐぐりながら参考にしたサイト情報が結構余分な設定があったりなんだりしたので、自分用にまとめ直し。 sftp専用ユーザはユーザ名のprefixを決めておくと楽 設定が以下のように設定一つにまとめられるのと、 後で/homeを見たときに一目で こいつらはsftp専用ユーザだな と分かるので。
Linux/Unixサーバにsshしている際、sshdを再起動したとする。 sshdは一度終了する訳だから、現在接続しているsshも切断されるかと思いきや、接続は継続する。 今まであまり気にしていなかったけど、この振る舞いについて調べてみた。 先ず、現象の確認から 対象サーバにssh接続し、sshdを再起動してみる。 $ ssh ryozo@192.168.56.12 # 対象サーバに接続 $ hostname centos1.example.jp $ sudo service sshd restart sshd を停止中: [ OK ] sshd を起動中: [ OK ] $ hostname centos1.example.jp sshdは一度停止されているにもかかわらず、対象サーバからは切断されていない。 プロセス構造から理由を探る sshdプロセスの構成 先ず、sshdプロセスの構
概要 社内プロキシに様々なサイトへのアクセスをブロックされたり、社外サーバにsshできなかったりする人向けに社外プロキシを立ててあらゆるサイトにアクセスする方法のまとめです。(後述しますが半分くらいネタポストです。) 他にも以下のような効果がありますので、プロキシフリーな会社にお勤めもし良かったら参考にして頂ければと思います。 なぜか2015年になっても存在するカフェとかホテルとかでの保護されていなかったりする無線wifiを使っても盗聴されない。 日本からアクセスできないサイトにアクセスできる。(海外のデータセンタ上のVMを使った場合) なお、非認証プロキシを例にしてます。認証プロキシでもあまり変わらないとは思いますが、環境が無いため未確認です。また、プロキシの挙動や設定方法はプロキシサーバの種類や設定によって多岐に渡るため、全てのプロキシで同じ方法が使えるとは限らないとは思います。 最後
ウチのお客さんのところでは、その顧客のLinuxサーバー計数百台にアプリを導入してサービスを提供している。それだけの数を捌いていると、不思議な現象に出くわすもので、今回の「超常現象」はsuやsshの実行が非常に遅いというものであった。 このようなケースで多々あるのは、名前解決や認証系がきちんとセットアップされておらず、そこでしばらく立ち往生してしまうことだ。sshについては、ssh接続が妙に遅い・・・でも記事にしたけれども、そこで書いた以外にも原因となるものがある。 まず、Why does sudo command take long to execute?にも指摘されている通り、sudo、ひいてはsuが遅い原因のひとつとして、Fedoraのインストール中にホスト名を変更したために、/etc/hostsファイルにそのホスト名が登録漏れを起こすというケースがある。そのときには、自分でホスト名
比較的大きいサイズのファイルをSCPで転送することがあって、できるだけ高速化してみたかったので、色々試してみたメモ。 scpというかsshには、暗号化方式と圧縮有無の指定があるので、それらのベンチマークを。 尚、以下は、SSH v2が対象です。v1はかなり遅かったのと、そもそも使っていないので試していません。 (追記: 2019/11) 本エントリの情報は既に古いため、以下のエントリにて再検証しています。あわせてご覧くださいませ。 ベンチマークで利用した環境 [Server1] <=> [Gigabit Switching Hub] <=> [Server2] Server1 (HP ML115 G5) AMD Phenom 9950, 8GB, RAMディスク使用, Gigabit Ethernet Server2 (HP ML115 G1) AMD Opteron 1210, 4GB,
http://mosh.mit.edu/ ローミング可能 断続的な接続でも平気 ローカルエコーで快適なレスポンス などの機能をそなえたSSH代替ターミナルソフト。その名も「モッシュ」 iPhone/iPadでウロウロしながらサーバ作業をするのを想定しているようだ。ドキュメントやパッケージの充実度からしてもかなり高質のプロジェクト。こいつら本気でSSHを越えようとしている。 こんな能書き IPが変っても大丈夫 スリープ後もターミナルが生きている 遅いリンクでもローカルエコーにより快適 要は素早く打ち込んでいるときにスクリーンが止っちゃうことがない フルスクリーンモードでも有効 サーバ側と同期化されていない入力はアンダーラインで記される ルート権限がなくてもサーバのインストール可能 サーバは一般プログラムとしてインストールして、それをSSHで立ち上げる SSHをinetdとして使っている感じだ
2009年01月16日00:40 カテゴリLinux Cluster SSHで複数ホストでコマンド同時実行 複数のホストに対してコマンドを同時に実行できるツール Cluster SSH を試してみました。結構便利そうです。 SourceForge.net: Cluster SSH - Cluster Admin Via SSH 以下がわかりやすいです。 1つのシェルから複数のSSHセッションを同時に実行するツール3種類を試す - SourceForge.JP Magazine クラスタのノードの分だけ別々のxtermが立ち上がり、制御用のウィンドウで入力した内容をすべてのノードに送信できるという仕組みだ。 openSUSE 10.3で試してみました。 インストールは特に迷うことはありません。 Tk と X11::Protocol のperl moduleが必要です。 例えば、node01
いろいろ方法があるとおもうのですが、以下のようなシェルスクリプトですませるのはどうでしょうか? #!/bin/bash function kill_children { # jobs -l | perl -ne 'print "kill $1\n" if /^\S+?\s+(\d+)/' | sh; pkill -P $$; wait; } trap "kill_children" EXIT HOSTS="192.168.1.1 192.168.1.2" for host in $HOSTS do ssh $host tail -F /service/foo/log/main/current & done wait ちょっと箇条書きで解説すると以下のようなことをおこなっています。 & でバックグラウンドジョブをはしらせるwait でそれらの終了を待つtrap 〜 EXIT は atexit
Examples $ tomahawk -h host1,host2,host3 uptime --> 'uptime' command is executed in host1, host2 and host3 as follows. kazuhiro@host1 % uptime 22:41:27 up 10 days, 3:26, 1 users, load average: 1.11, 1.13, 1.11 kazuhiro@host2 % uptime 22:41:28 up 20 days, 4:26, 2 users, load average: 2.11, 2.13, 2.11 kazuhiro@host3 % uptime 22:41:29 up 30 days, 5:26, 3 users, load average: 3.11, 3.13, 3.11 $ tomaha
簡単だろうと思って始めてみたら意外とハマった。。。例えばネットワーク機器の設定確認とかで、ロードバランサ経由でアクセスしてみてちゃんとアクセスが来てるか確認したい時に、人力だったらターミナル開いてアクセスログをtail -fしといてcurlとかで叩いて「きたきた」ってやって終わりでいいと思うんですが、台数がべらぼうに多いときとかムリポ。 そこで、サーバにsshしつつtail -fを発行してアクセスログをフェッチしつつ、grep的なことをして目的のログが来たら終了、みたいな処理を考えてみた。方針はたぶんこの 2 種類。 sshで渡すコマンドでgrepして目的の行が出たらsshが終了するようにしておく 目的の行は perl で探して、見つけたらsshのプロセスにシグナルを送る なんでこんなめんどくさいことが必要かというと、tail -fは明示的に殺すまで基本的にはずっと動き続けるので、なんらか
別のコンピュータのファイルシステムをマウントすれば、ローカルディレクトリと同様に扱える。4月版 カーネル2.6.11.yのメンテナは嫌なヤツ?(FUSEが本流デビューするのはいつの日か?)で紹介したsshfs(http://fuse.sourceforge.net/sshfs.html)は、これをsshで実現するファイルシステムである。なお、sshfsはFUSEベースなので、FUSE(http://fuse.sourceforge.net/)というモジュールも必要だ。 注:マウント操作を行うコンピュータ(クライアント側)にsshfsをインストールする。マウントされるディレクトリを持ったコンピュータ(サーバ側)は、sshが稼働していれば特に設定の必要はない。
え、SSH通るんならscp使えばいいじゃん。 YES、その通り。 しかし、「大容量ファイルを転送中に接続が切れてしまった」なんてときに、コピーが完了した後から残りを引き継ぎたい、みたいな要求にはscpコマンドは答えてくれない。もちろん、sftp使えばレジューム機能もあるんだしそうすればいいじゃんというのは正論だが、sftpの方はsshが通るからといって必ずしも使えるとは限らない。 そんなときは、多少強引だとしても、一歩戻って解決を試みるのもひとつの手だ。 単純転送 単純な転送から試してみよう。まず、リモート先のhostAにあるsrcfileを、手元にdestfileとしてコピーしたいとする。 sshはリモートで実行するコマンドを受け付ける(実際のところ、scpも内部的にはsshのリモートコマンドで実装されていたはずだ)。ということは、リモートでcatコマンドを実行してファイルの中身を「表示
5. RFC RFC 4250 The Secure Shell (SSH) Protocol Assigned Numbers RFC 4251 The Secure Shell (SSH) Protocol Architecture RFC 4252 The Secure Shell (SSH) Authentication Protocol RFC 4253 The Secure Shell (SSH) Transport Layer Protocol RFC 4254 The Secure Shell (SSH) Connection Protocol RFC 4255 Using DNS to Securely Publish Secure Shell (SSH) Key Fingerprints RFC 4256 Generic Message Exchange Authent
こんにちは、牧野です。久々の、9か月以上ぶりのブログです。。 仕事では、ここ1年近くずっっとインフラ関係のことをやっていました。 今日は、SSHに関するTIPSを紹介します。 1. 特定のサーバーにSSHログインする時に、特定の設定を使用する ホームディレクトリ/.ssh/configファイルに設定を書いておくと、特定のサーバーにログインする時に、自動的に特定の設定を使うようにできます。 SSHのオプションをサーバーによって分けたい時に入力が楽になります。 以下は、xxx.yyy.zzz.aaaでアクセスする時に使う秘密鍵をid_rsa_testに設定しています。 .ssh/config Host xxx.yyy.zzz.aaa IdentityFile /home/asial/.ssh/id_rsa_test 2. ホストキーをチェックしないようにする LinuxからサーバーにSSH接続
昨日のエントリが、被はてブ1000件達成しました。ありがとうございます。これだけの注目をあびることに恐怖すら覚えました。ブクマコメントや直接コメントを頂いたので幾つか補足説明をさせてください。 Cygwin環境の話がすごくブクマコメントいただいたので補足させてください。 やっぱり昔のCygwinイメージは強い。 昔のイメージって強烈なんだなと思いました。1.5以前のイメージとは違うんだよ。って最初に書いたんだけど、脱却は難しい感じでした。 1.7変更点やCygwinの細かいの話は id:fd0さんのエントリを参考にして欲しい。 コメントへのレス。 補足させてください。昨日のエントリでも間違ってるところもあるので、補足しながら訂正させてください。すいません。 以下の事について、レスしていきます。よろしくお願いします。 ブクマコメントの反響 ドライブ指定がキモい Mingwでもいいよね。 Ma
以前 2.(gateway で netcat を ssh 経由で実行することによる転送)はよくわからないけど失敗 多段 rsync がめんどくさい - daily dayflower と書きましたが,なんとなく仕組みがわかってきたので書きます。 2年前くらいに流行ってたネタなので今更感満点。 まとめ 単純に到達できない場所に ssh でつなぐために ProxyCommand という [http://www.openbsd.org/cgi-bin/man.cgi?query=ssh_config:title=ssh_config] の設定子が使える ProxyCommand とは ssh クライアントと標準入出力でやりとりする 多段 ssh をする際に ProxyCommand で指定すると有用なものとして下記のものがある nc (netcat) OpenBSD や RedHat 系には(お
はじめに こんにちは、Python界のロナルド・レーガンです。さて、HTTP proxy環境下でどうしても外部にSSHしたいっていうことってありませんか。ありますよね。そういうときにWindowsだったらPuttyとかでやれば楽ちんですね。 Proxy越しにSSHする - YAMAGUCHI::weblog で、Linuxではどうやるんだろうなーと思って調べたらconnect-proxyが楽と知りました。 ログ パッケージを探してインストール。ssh_configにProxyCommandの項目を追加して、-Hオプションにこんな感じで追加。 % sudo apt-get install connect-proxy % vim .ssh/config Host example User hoge HostName example.com Port 22 ProxyCommand connec
Amazon EC2 はVMを好きなタイミングで好きなだけ使うことができるので、複数のサーバを使う分散システムの検証環境として非常に使いやすい*1。費用を計算してみても、自宅でクラスタを動かすことを考えれば、十分安く上がりそうである。 しかし、VMを起動するたびに環境を設定したり、新しいテストを実行するたびにファイルを配ったりするのは面倒なので、ファイルを共有したくなる。 通信の遅延がかなり大きいので、EC2上でssh越しにファイルを編集するのも少々つらい。 そこで、手元のホストとホームディレクトリを共有する。さらに、一度転送したデータはキャッシュさせる。 共有ホームディレクトリ環境の管理方法と組み合わせれば、便利に使えるに違いない。 戦略 ファイル共有には NFSv4 over ssh を使う。NFSv4はポート番号を1つしか使わない(portmapperも要らない)ので、ssh越しで使
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く