1 名前:名無しさん@お腹いっぱい。 mailto:sage [04/12/05 19:35:08] SSHに関する情報交換のスレッドです。 FAQ、リンク集は >>2-5 あたり。 過去ログ Part1:pc.2ch.net/unix/kako/976/976497035.html Part2:pc.2ch.net/test/read.cgi/unix/1028157825/ (dat落ち) 春山さんのとこ→ www.unixuser.org/%7Eharuyama/security/openssh/dat/pc.2ch.net_80__unix_dat_1028157825.html Part3:pc5.2ch.net/test/read.cgi/unix/1058202104/
711 名前:名無しさん@お腹いっぱい。 [2005/11/11(金) 14:39:29 ] >>710 そうです。始めはこれと似た方法でしましたが、SSHサーバー側で なぜ、毎回、起動するのはいやだということでしたので....
712 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/11(金) 14:43:31 ] >>711 言ってることがよくわからないんだが。 >>708 で ssh をフォアグラウンドで上げれば >>694 と変わりないじゃん。
713 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/11(金) 14:54:02 ] ps コマンドで生死の検査をする方がずっと危険度が高い気がするのだが。 その「SSHサーバ運用者」がアレな気も。
714 名前:名無しさん@お腹いっぱい。 [2005/11/11(金) 14:54:50 ] >>712 >>>711 >言ってることがよくわからないんだが。 こちは、SSHサーバは別の会社で管理するということです。 >>708 で ssh をフォアグラウンドで上げれば たれかが、CTRL+Cかを押すと切れるはずですね。 >>694 と変わりないじゃん。 プロセス検索で、あったら、とりあえず再起動するところはとおらないはずです。
715 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/11(金) 14:58:46 ] だめだ、話が通じない。 ここで聞くより 自分の母語のコミュニティで聞いた方がいいんじゃないか?
716 名前:708 mailto:sage [2005/11/11(金) 15:03:07 ] >>714 だから、 >>708 をバックグラウンドで動かせばいいじゃん。 と思ったが、 autossh でも使った方がいろいろ面倒が無くていいか。
717 名前:名無しさん@お腹いっぱい。 [2005/11/11(金) 15:15:33 ] >>716 >>>714 >だから、 >>708 をバックグラウンドで動かせばいいじゃん。 ありがとうございます。 しかし、この方法は、試したことがあるので、とりあえずは使わないです。
718 名前:名無しさん@お腹いっぱい。 [2005/11/11(金) 15:20:51 ] >>716 >>>714 >だから、 >>708 をバックグラウンドで動かせばいいじゃん。 ありがとうございます。 しかし、この方法は、試したことがあるので、とりあえずは使わないです。
719 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/11(金) 21:04:28 ] 死んでたら自動的に立ち上げたいの? つ daemontools
720 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/11(金) 21:08:45 ] >>719 絶対出てくると思った。 俺は我慢してたが。
721 名前:719 mailto:sage [2005/11/11(金) 21:25:46 ] >>720 ごめんねえ 「そろそろ来るころだと思ったよ」ってやつ? 我慢すると体によくないよ。
722 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/11(金) 22:01:17 ] inittab に書いとけ。
723 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/13(日) 10:57:14 ] 漏れ実際に daemontools 使って ControlMaster 立ち上げてまふ。 けど、たまにソケットファイルのロックにひっかかって死んでることが...
724 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/13(日) 18:10:13 ] 何がしたいか、よくわからんが、-Nでいいんじゃねーの?
725 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/13(日) 19:44:26 ] 「ソケットファイルのロック」って何?
726 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/13(日) 20:59:06 ] >>725 プロセスが死んだ時に ControlPath に書いたソケットファイルが残っちゃうってはなし。
727 名前:名無しさん@お腹いっぱい。 [2005/11/14(月) 15:00:47 ] ttp://www.zelow.no/floppyfw/download/contrib/ssh/ ここのパッケージを使って floppyfw で sshd を動かすところまではできたのですが, パスワードなしでのログインができません. クライアントの公開鍵をサーバの /root/.ssh/authorized_keys に追加しているのですが, 鍵認証に失敗してパスワード認証しようとします. パスワードなしでログインできるようにするにはどうすればいいでしょうか? ログは以下のようになっています. クライアント側ログ $ ssh -v root@192.168.20.19 [snip] debug1: Authentications that can continue: publickey,password,keyboard-interactive debug1: Next authentication method: publickey debug1: Trying private key: /home/user/.ssh/identity debug1: Offering public key: /home/user/.ssh/id_rsa debug1: Authentications that can continue: publickey,password,keyboard-interactive debug1: Offering public key: /home/user/.ssh/id_dsa debug1: Authentications that can continue: publickey,password,keyboard-interactive debug1: Next authentication method: keyboard-interactive debug1: Authentications that can continue: publickey,password,keyboard-interactive debug1: Next authentication method: password root@192.168.20.19's password:
728 名前:名無しさん@お腹いっぱい。 [2005/11/14(月) 15:01:34 ] >>727 サーバ側ログ # sshd -d [snip] debug1: userauth-request for user root service ssh-connection method none debug1: attempt 0 failures 0 Failed none for ROOT from 192,168,20,1 port 3970 ssh2 debug1: userauth-request for user root service ssh-connection method publickey debug1: attempt 1 failures 1 debug1: test whether pkalg/pkblob are acceptable Failed publickey for ROOT from 192,168,20,1 port 3970 ssh2 debug1: userauth-request for user root service ssh-connection method publickey debug1: attempt 2 failures 2 debug1: test whether pkalg/pkblob are acceptable Failed publickey for ROOT from 192,168,20,1 port 3970 ssh2 debug1: userauth-request for user root service ssh-connection method keyboard-interactive debug1: attempt 3 failures 3 debug1: keyboard-interactive language devs Failed keyboard-interactive for ROOT from 192,168,20,1 port 3970 ssh2
729 名前:名無しさん@お腹いっぱい。 [2005/11/14(月) 15:52:59 ] 〜>>726 皆さんの協力、ありがとうございます。 この起動セールスクリプトは問題ないです。 この問題は急ぎやらなければできないので、結局はCronTabに登録して、1分ごと にチェックするようにして、解決しました。今のところ、元は30分〜4時間で 一回、この起動セールスクリプトが切れたんですが、10時間ほどだったんですが 発生してなかったです。よい解決方法とは、なりませんが......
730 名前:名無しさん@お腹いっぱい。 [2005/11/20(日) 17:35:33 ] どこで聞くべきかよくわからないので、ここで質問させてください。 Vine3.2で sftp サーバーを構築しています。 hpn-ssh のパッチを当てると高速化が可能であると聞いて、以下の手順で導入してみました。 1) もともと入っていた ssh は apt-get remove ssh で削除 2) openssh-4.2p1.tar.gz をDLして解凍 3) hpn-ssh-4.2p1-hpn11.diff のパッチを当てる 4) $ ./configure --prefix=/opt --sysconfdir=/opt/etc/ssh 5) $ make 6) # make install 7) /etc/rc.d/init.d/sshd の中の sshd 等の場所を prefix で指定したものに書き換え 8) 再起動 これでとりあえず接続は出来るようになったのですが、いかんせん速度が遅いまま なのです。入れ替える前は 200-300kB/s だったのですが、入れ替え後もほとんど 同じ数値です。hpn-ssh を有効にするには何かオプションの指定のようなことが必要 なのでしょうか? それとも PentiumIII 1GHz ではこのくらいの速度が限界なのでしょ うか? ちなみに ftp 接続では 8-10MB/s 程度の速度が出ています。
731 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/23(水) 12:30:06 ] >何かオプションの指定のようなことが必要 知らないが、パッチを嫁ばわかるだろ。
732 名前:名無しさん@お腹いっぱい。 [2005/11/24(木) 13:22:03 ] ssh の Remote Forwarding が下のような警告で失敗するのですが, 1023以下のポートの転送はできないのでしょうか? $ ssh -N -v -R80:localhost:80 remote ... debug1: Remote connections from LOCALHOST:80 forwarded to local address localhost:80 debug1: Entering interactive session. debug1: Remote: Server has disabled port forwarding. debug1: remote forward failure for: listen 80, connect localhost:80 Warning: remote port forwarding failed for listen port 80
733 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/24(木) 13:30:42 ] 特権ポートだけど root ならできるんじゃないの?
734 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/24(木) 16:36:39 ] >>733 root でも Remote Forwarding で特権ポートは使えませんでした. サーバ側で root 権限で Local Forwarding ならいけるようです. remote# ssh -N -v -L80:localhost:2080 localhost client$ ssh -N -v -R2080:localhost:80 remote のように二つ動かすしかないんでしょうか. 板違いになりますが, こういうことは iptables で可能なんでしょうか?
735 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/24(木) 16:48:09 ] iptablesなら可能だね
736 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/24(木) 17:03:37 ] >>734 ちゃんとサーバー側の root で接続してる? $ ssh -N -v -R80:localhost:80 -l root remote
737 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/24(木) 20:03:54 ] >>735 ,736 すいません. なんかボケてたみたいです. もう一度確認したら root なら Remote Forwarding でできました. でもこれでは全部 localhost からのアクセスになってしまって .htaccess でアクセス制限できないんですね. ディレクトリごとの制御とかはできなくなりますが, サーバ側の iptables を併用するしかなさそうです.
738 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/25(金) 15:08:30 ] いまがver3を使っているのですが、問題ありませんか?
739 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/25(金) 15:35:51 ] 自分で判断できないのは問題ですね。
740 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/30(水) 00:27:37 ] 自由に使用できるサーバを、 友人に公開しようと思っているのですが、 IP アドレスが一つしかありません。 WEB サーバの方は、delegate を使用してなんとかなるのですが、 SSH も delegate を使用できますでしょうか。 ちなみに、JAIL 環境でプライベート IP が振ってあります。 あと、DNS は書いてあります。 ポートをずらして公開するのが手っ取り早いでしょうか。 MOUNT="/* www.example.com1* vhost=-www.example.com1" \ MOUNT="/* www.example.com2/* vhost=-www.example.com2" \ MOUNT="/* www.example.com3/* vhost=-www.example.com3" \
741 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/30(水) 00:31:58 ] 友人の発信元IPアドレスを見てなんとかする方法もあるけどポートずらすのがいいと思う。
742 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/30(水) 00:46:57 ] 22 番を外部公開してても、 暗号鍵認証でのみ許可してれば セキュリティホール以外で進入されることは ないと考えてよいですか?
743 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/30(水) 01:01:26 ] >>742 いいえ
744 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/30(水) 01:43:24 ] >>742 公開鍵ではなくて?
745 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/30(水) 02:05:14 ] >>744 そんなことは知っています。 どなたかわかる方、お願いしますm(_ _)m
746 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/30(水) 02:10:20 ] >>742 絶対はないです。
747 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/30(水) 03:17:18 ] セキュリティに関して「安全ですか?」と聞けば答は常に「いいえ」。 その質問は一番大きなセキュリティホールが質問者の頭に開いている事を示しているから。 そして>>745 のレスはおまえが人間のクズである事を示しているので、 もうマトモな解答は付かないだろう。
748 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/30(水) 03:28:59 ] LANケーブルをひっこ抜きました。 無線LANもserialも繋がってません。 これで絶対安全ですか?
749 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/30(水) 06:25:14 ] コンソールがのこっとる
750 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/30(水) 08:10:41 ] テンペストで画面もまる見え
751 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/30(水) 08:23:23 ] 引っこ抜くなら電源ケーブルだな
752 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/30(水) 10:06:41 ] 透視でHDDの中身もまる見え
753 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/30(水) 11:55:09 ] 円盤引っこ抜け
754 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/30(水) 11:57:20 ] 昨日までログインできてたんだけど、今日になってできないようになった。 ssh -vvvvv me@myhost すると、id_rsa読む所で、 debug2: key_type_from_name: unknown key type '-----BEGIN' debug3: key_read: missing keytype こんなん出るんだけど、これって何が起こったの?
755 名前:742 mailto:sage [2005/11/30(水) 13:22:47 ] >>743 ,744,746,747 どうもありがとうございました。 ソーシャルハッキングなどを想定してるので「いいえ」ということでしょうか。 少なくともパスワード総当りでは通れないですよね。 >>745 は自分ではないのですが、 不愉快な思いをさせて失礼しました。
756 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/30(水) 13:57:06 ] >>754 > ssh -vvvvv me@myhost すると、 v は三つまで。 > こんなん出るんだけど、これって何が起こったの? その部分は、まず rsa1 鍵だと思って読んでみたら違ったー、と言っ てるとこなんで、ログインできない理由とは無関係。
757 名前:754 mailto:sage [2005/11/30(水) 15:12:39 ] > その部分は、まず rsa1 鍵だと思って読んでみたら違ったー、と言っ それは読めば判るんだけど、これって昨日まで使ってたRSA 鍵なんだけど。 ログインできない最後の理由は判っていて、RSA鍵が読めない為に鍵認証 できなくて、パスワード認証は禁止してるからなんだけど。 どうしてRSA鍵が読めないなんて言い出すのかが判らんのよ。 パスワード認証有効にする訳にもいかんし、ssh-keygen -t rsa で鍵作りなおしても やっぱり読めないとぬかしやがるし。 パーミッションも確認したけど、.ssh/は700で .ssh/id_rsa も600になっとる。 ワケワカラン。
758 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/30(水) 15:15:08 ] >>757 サーバ側の設定が変わったってことはないの?
759 名前:754 mailto:sage [2005/11/30(水) 15:45:08 ] >>758 昨日はssh関係いじった覚えはないんだけど。 そもそも、鍵が読めないのとサーバの設定になんか関係あるの?
760 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/30(水) 15:47:42 ] >>754 サーバ側でログ確認した方がいいなじゃない? それか -d とか。
761 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/30(水) 16:52:40 ] >>754 例えば、Protocol 2 になると rsa1 が使えなくなったりするわけですよ。 サーバ側の管理を >>754 がやってるかどうかも俺らは聞いてないし、 適切にアドバイスできるとでも思ってるんか? 「ログ見ろ」としか言えねぇよ。
762 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/11/30(水) 16:57:45 ] strace使うとかね。
763 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/08(木) 00:44:53 ] sshでリモートログインした時に ~/.ssh/rc から exec zsh で zsh を起動させたいんだけど起動しない。 sh ~/.ssh/rc としてやると普通に起動するんだけど…。 もしかしてこれって仕様?
764 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/08(木) 01:34:49 ] >>763 sshdからpopen(3)されるだけなので対話的プログラムは実行できない。
765 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/10(土) 02:08:14 ] NAT 配下のマシン(A)にアクセスさせたく、グローバルIPをもっている マシン(B) に対して ssh -R 8888:localhost:22 hostB とやりました。この時、hostB にログインして ssh -p 8888 localhost をすると hostA に接続できるのですが、この hostA, hostB とは関係のない hostC から ssh -p 8888 hostB しても hostA には接続できません。 これを実現させるのにはどのような設定が必要でしょうか?
766 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/10(土) 02:43:12 ] >>765 sshd_configのGatewayPorts
767 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/10(土) 09:21:21 ] >763 >It must not produce any output on stdout; stderr must be used instead. とか書いてあるし、~/.ssh/rc でやるのは無理があるんじゃない? ログインシェルの初期設定ファイルで環境変数を見て SSH_* が設定されていたら zsh にとばすとか。 っていうか ssh -t example.com zsh だとあかんの?
768 名前:名無しさん@お腹いっぱい。 [2005/12/19(月) 07:47:20 ] すみません sshクライアントからviを起動すると未確認のエスケープシーケンスがある。 というエラーが出てしまい、ファイルの編集ができません。 sshからテキストファイルを編集する何か良い方法はないものでしょうか?
769 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/19(月) 08:00:06 ] ターミナルを変更したら、エラーが無くなりました。吊ってきますorz
770 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/13(金) 16:46:47 ] 保守
771 名前:名無しさん@お腹いっぱい。 [2006/01/25(水) 15:50:08 ] Debian sargeでOpenSSH 3.8.1p1, OpenSSL 0.9.7eを使ってsshサーバを立てようとしています。 あるIPアドレスからの接続はパスワード認証と公開鍵認証を許可して、それ以外のIPアドレスからの 接続は公開鍵認証のみ許可をする、といった感じの設定は出来ますか?
772 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/25(水) 16:22:10 ] キター ヽ(゚∀゚)ノ CVE-2006-0225 www.cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2006-0225 www.st.ryukoku.ac.jp/~kjm/security/memo/2006/01.html#20060125_scp tun(4)のサポートなんて後でイイから、さっさといろんなバグ潰した4.3を 出せってば :-) 1週間後に出すぞってメールで流してから何週間経っているんだと小一時間(ry
773 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/25(水) 22:01:50 ] >772 scp 'foo:bar*' . とか便利に使ってたんだが、バグだったのか…
774 名前:名無しさん@お腹いっぱい。 [2006/01/25(水) 23:58:08 ] >>773 そーいうことではなくて、記号や空白が名前の一部に入っているファイル が問題視されているのですが。 たとえば scp 'foo:bar*' . であれば、foo というマシン上に bar foo bar* といったファイルがあるとうまくいかないと。 そもそもが、 www.redhat.com/archives/fedora-announce-list/2006-January/msg00062.html には local to local and remote to remote copy with scp と書いてあるわけで、 foo という「リモートマシン」から「ローカル」 という時点で、既に今回の対象外な気がしますが。
775 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/26(木) 01:45:25 ] >774 OpenSSH 情報の www.unixuser.org/%7Eharuyama/security/openssh/20060125.html に > system()関数を用いているためにリモートホストでもシェルによるコマンドの解釈が行われます。 > このため適当に細工を施されたファイル名をコピーすると、リモートホストでユーザの権限でコマンドが > 実行されます。 なんて書いてあって、リモート側でsystem()関数によるファイル名展開しないように 対策されるのかと勘違いしてました。
776 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/26(木) 13:51:52 ] >>771 > あるIPアドレスからの接続はパスワード認証と公開鍵認証を許可して、それ以外のIPアドレスからの > 接続は公開鍵認証のみ許可をする、といった感じの設定は出来ますか? OpenSSH だと config file を変えて sshd 二つ上げとくしかないん じゃなかろか。 ちなみに $sh.com 版なら HostSpecificConfigって機能を使うと sshd 一つで client host 毎に認証方式を変えることが可能。
777 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/26(木) 15:53:09 ] そだねえ。片方をポート10022とかに上げといて、 ソースアドレスによってはそちらにリダイレクトするようにしたら、 sshdが2つなのをユーザに意識させずに切り替えることもできそう。 pfなら rdr on fxp0 proto tcp from <allow_password_address> to self port ssh -> $myaddr port 10022 とかになるのかな。
778 名前:771 mailto:sage [2006/01/26(木) 20:41:25 ] >>776-777 前の代のサーバはssh.com版を使ってたみたいで、HostSpecificConfig を使って上記のような設定をしていたので、なんとかOpenSSHで 出来ないものかな、と思いましたが、2つ立ち上げるしかないんですね。 ありがとうございました。
779 名前:春山征吾 ◆unIxUSernc mailto:sage [2006/01/26(木) 21:15:43 ] >>775 間違った記述をしていたので修正しました。
780 名前:773 mailto:sage [2006/01/28(土) 04:18:01 ] >774 問題の本質は > シェルによるファイル名の解釈が2度おこなわれる 事なので、local-to-localやremote-to-remoteのコピーだけの問題じゃない気がしてきた。 remote-to-local、local-to-remote でも、localでのシェルによる解釈、 remoteでのscp起動の時にもシェルを経由するわけだし。 その意味で、OpenSSH 情報の元の記述は的外れでなかった気がしてきた。 なわけで、今回の修正だけではまずいんじゃないかなあ。
781 名前:春山征吾 ◆unIxUSernc mailto:sage [2006/01/28(土) 09:07:30 ] >>780 パッチをみたところ、local-to-localとremote-to-remoteでの処理での system()が置き換えられていました。 scp.cのそれ以外の部分ではsystem()は使われていません。 OpenSSH情報の記述はさらに直します。
782 名前:773 mailto:sage [2006/01/28(土) 21:06:24 ] >781 system()を使ってなくてもやばいんじゃないかって事です。
783 名前:春山征吾 ◆unIxUSernc mailto:sage [2006/01/29(日) 01:24:30 ] ためしてみたところ、 % scp remote:\;/usr/bin/yes . とすると remoteで/usr/bin/yes が起動しました。
784 名前:春山征吾 ◆unIxUSernc mailto:sage [2006/01/29(日) 01:33:08 ] % scp remote:\;/bin/sleep\ 1000 . なんてのもいけますね。
785 名前:春山征吾 ◆unIxUSernc mailto:sage [2006/01/29(日) 01:40:59 ] local-to-remoteでも % scp foo remote:.\;/bin/sleep\ 1000 としてコマンドを実行できました。 local-to-localやremote-to-remoteと同様の問題があると考えていいように思えます。 明日朝から用事があるので一旦終了します。
786 名前:春山征吾 ◆unIxUSernc mailto:sage [2006/01/29(日) 17:22:47 ] rsyncでも % rsync foo remote:.\;sleep\ 1000 や % rsync remote:foo\;sleep\ 1000 . でremoteでのコマンド実行ができました。 ファイル転送においてもリモートでコマンドを実行する枠組を利用している以上 利用者が気をつけるしかないかもしれませんね。
787 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/29(日) 17:55:02 ] sshdはコマンドを実行するときsh -cで実行しているけど、shを使 わずに直接実行してほしい。shを使いたかったら明示的に書けばい いだけ。 参考 pc8.2ch.net/test/read.cgi/unix/1131026501/984
788 名前:773 mailto:sage [2006/01/30(月) 01:08:35 ] OpenSSH情報では > local-to-localやremote-to-remoteとは異なり実際のファイルのコピーによって > コマンドが実行されるわけではありません。 と修正されてたけど、 % ls remote:;/usr/bin/yes % scp * foo とか。 % ls remote:* これも意図しないファイルをコピーされてしまうような。 OpenSSH FAQ 2.13とか、ほっといてはいけなかったのかな。 >787 確かにその通りだと思うんだが、変更したらSSHのRFCと矛盾しないかな?
789 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/30(月) 01:35:38 ] >>787 参考が読めない おれにも●売ってくれよ。10円で。
790 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/30(月) 01:37:01 ] >scp 'foo:bar*' . は今後使えなくなるの?
791 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/30(月) 02:20:09 ] >>788 > % ls > remote:;/usr/bin/yes これは無理w > % ls > remote:* これは仕様上仕方ないんじゃないか。 $ scp * . ssh: remote: Name or service not known
792 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/30(月) 02:33:14 ] >>789 984 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2006/01/20(金) 22:59:14 スレ違いだが、 sshは引数をスペースを間に入れて結合した文字列をsshdに送る。 sshdは argv[0] = shell argv[1] = "-c" argv[2] = 送られた文字列 のように実行する。 なので'1 2 3'というファイルを指定するためには ssh localhost touch "'1 2 3'" のように''をつける必要がある。 シェルを経由して実行する場合は引数(の数と内容)を保ったまま渡 すのは無理なのかもしれんが。
793 名前:773 mailto:sage [2006/01/30(月) 02:35:42 ] >791 確かにこのままだと駄目だった。 が、path通っているのであれば、こっち > % ls > remote:;yes だったら。
794 名前:春山征吾 ◆unIxUSernc mailto:sage [2006/01/30(月) 09:14:19 ] >>793 % ls remote:;yes % scp * foo でremoteでyesが実行されますね。 OpenSSH情報の記述を訂正します。
795 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/30(月) 10:32:33 ] >>794 > % scp * foo hostname:pathname の形式で指定する以上、たぶんどうしようもない。 scp ./* foo:bar/ なら問題ない。
796 名前:773 mailto:sage [2006/01/31(火) 01:22:49 ] >795 リモートでコマンド実行の方は危険な記号をエスケープするなり して対処するのかなあ。 で、hostname:pathname の hostname: の部分を処理する前に、 hostname:pathname がファイルとして存在しているか確認して、 存在していた場合、ユーザーに確認 or エラー吐いて失敗とか。 # -B オプションとか付いてたら確認せず実行とか。 とにかく、意図したファイルのコピーが失敗するだけならともかく、 意図しないファイルのコピーが実行されてしまうのは避けた方が無難だと 思う。
797 名前:773 mailto:sage [2006/01/31(火) 01:37:42 ] >791 >> % ls >> remote:;/usr/bin/yes >これは無理w こんなの思い付いた。 % echo */*/*/* remote:;/usr/bin/yes
798 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/01(水) 17:51:27 ] PuTTYgen使って公開鍵作るとき[Public key for pasting into OpenSSH authorized_keys2 file]欄の 文字列をコピーしてメモ帳に貼り付ける、と紹介してるサイトがあるけど 【Save Public key】ボタンを押して保存じゃ駄目ですか? わざわざ面倒なことする理由って何ですか?
799 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/01(水) 17:58:44 ] ボタンが無い時代に書かれた記事の孫引きだからだろ
800 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/01(水) 19:57:54 ] >>798 形式が違う。
801 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/01(水) 23:41:18 ] OpenSSH 4.3/4.3p1 リリース
802 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/02(木) 01:48:07 ] >798 保存した物はssh-keygen -X -fで変換しないと~/.ssh/authorized_keysの形式に成らないよね
803 名前:798 mailto:sage [2006/02/02(木) 02:03:23 ] >>799 自分もそうじゃないかと思いました。 ボタンがあるのにコピペするのは昔の名残なのかと。 しかしどうしても気になり、質問してしまいました。 >>800 、>>802 !!、そういうことなんですか!ありがとうございます!! モヤモヤが晴れました。御三方ありがとうございました。!
804 名前:名無しさん@お腹いっぱい。 [2006/02/02(木) 06:05:35 ] >>801 4.3(p1) キター ヽ(゚∀゚)ノ
805 名前:春山征吾 ◆unIxUSernc mailto:sage [2006/02/03(金) 18:57:02 ] 4.3p1はconfigureまわりに問題があるので、4.3p2がじきにでるようですね。 >>773- 以降で議論したscp の local-to-remote, remote-to-local のコマンド挿入の 問題について、セキュリティの問題として openssh@openssh.com に連絡しようと思います。 (なぜ openssh@openssh.com かは ttp://www.openssh.com/report.html を参照) 反対意見がなければ、日曜か月曜に送ります。 メールの内容は長いので ttp://unixuser.org/%7Eharuyama/security/openssh/tmp/openssh_scp_command_injection.txt におきました。
806 名前:773 mailto:sage [2006/02/03(金) 22:17:07 ] >788 > % ls > remote:* > これも意図しないファイルをコピーされてしまうような。 こっちの報告はどうしましょう? >791 > これは仕様上仕方ないんじゃないか。 ってのも分かるのですが、 さらに % ls foo@remote:* とかにして、 foo@remote% ls -l rwsrwsrwx 1 foo foo 100 2006-02-03 03:55 bar とかが % scp * . とかでコピーされちゃうとまずそうなんですけど。 実験したら -p オプション付けなくてもsuid bitコピーされちゃいましたし。 # umask の設定でsuid bit無効化出来ましたっけ? 後、 % ls -p foo とかで、予期しないオプションをremoteのscpに与える攻撃とか思い付いたのですが。 # 組み合わせや設定次第でやばげな事が出来そうです。 # remote:-Sfoo とかでremote-to-remoteになったときとか。 対策するなら796で書いた事ぐらい?
807 名前:773 mailto:sage [2006/02/03(金) 22:25:54 ] rsyncの開発元にも別に送った方がいいかもしれません。 # scp や rsync の実装の問題でしょうし。
808 名前:春山征吾 ◆unIxUSernc mailto:sage [2006/02/03(金) 22:47:52 ] >>806-807 に対応して ttp://unixuser.org/%7Eharuyama/security/openssh/tmp/openssh_scp_command_injection.txt を上書きしました。 ・Subjectを scp/rsync Command Line Shell Command Injection in the case of local-to-remote and remote-to-local copies & scp/rsync user-unintended file copy with a malicious filename に。 ・rsync-bugs@samba.orgにも送るという文章を追加 ・次の文章を追加 In addition, This example (using a malicious filename) ---------- % ls remote:* % scp * . (or rsync -e ssh * .) ---------- causes an user-unintended file copy.
809 名前:春山征吾 ◆unIxUSernc mailto:sage [2006/02/03(金) 22:57:20 ] オプションを利用すると、 % ls -S ls a % scp * remote: ls: No such file or directory lost connection とローカルホストでプログラムを実行させることもできますね。 (rsyncでも-e で同様のことができるでしょう) 送るまでにもっと例を追加します。
810 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/03(金) 23:01:52 ] 日本の恥だから止めんか!
811 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/02/03(金) 23:11:11 ] 春山さん乙