トップページunix
1001コメント328KB

SSH その4

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。NGNG
SSHに関する情報交換のスレッドです。
FAQ、リンク集は >>2-5 あたり。

過去ログ
 Part1:http://pc.2ch.net/unix/kako/976/976497035.html
 Part2:http://pc.2ch.net/test/read.cgi/unix/1028157825/ (dat落ち)
  春山さんのとこ→ http://www.unixuser.org/%7Eharuyama/security/openssh/dat/pc.2ch.net_80__unix_dat_1028157825.html
 Part3:http://pc5.2ch.net/test/read.cgi/unix/1058202104/
0570名無しさん@お腹いっぱい。2005/09/16(金) 02:59:40
もういいよ。
0571名無しさん@お腹いっぱい。2005/09/16(金) 03:13:14
毛利名人よ。
05725632005/09/16(金) 10:57:50
なんだかボロカスに言われているようですが、ちょっと確認させてください。

・使用したTeraterm proは「UTF-8 TeraTerm Pro with TTSSH2」なので、SSH2に対応しているはず
・「New connection」で「Service:SSH」、「SSH version:SSH2」を選択
・サーバ側のsshd_configでProtocol 2 を指定
・/var/log/messages のAcceptメッセージでssh2と表示されている

以上の理由でSSH2による接続はできていると思うのですが、見落としているところがありましたら
お教え願います。
0573名無しさん@お腹いっぱい。2005/09/16(金) 12:22:53
>>563
ボロカスには言われて無いだろ。
>>564が無知を晒して突っ込まれてただけ。
俺もTTSSHでssh2接続してるよ。

で、本題の方は、俺はLinux使ってないしそういう
システムに出会ったことが無いのでわかんないや。
俺が使ってるシステムでは、一般ユーザの/etc/passwdの
パスワードはつぶしてあって、パスワード認証は
ローカルでもできないから…。
0574名無しさん@お腹いっぱい。2005/09/16(金) 22:48:58
>>563
opensshのsshクライアント使って、サーバ-クライアント間のやり取りぐらい自分で調べたら?

0575名無しさん@お腹いっぱい。2005/09/16(金) 23:05:32
>>563 がアホの子だった場合に備えて、懇切丁寧に説明してやると

>cygwin,putty:パスワードの変更を要求される 

なんて場合があるのは、パスワードの変更を「サーバが要求する」ようなメッセージが流れているはず。
!!これが分からなければ、オマイはアホの子!!
よって、cygwin opensshをhigher debug levelで動かして、解析しろ。

自分で調べるなら、IETF Draftsでそのメッセージの存在を調べれば良いし、
分からなけりゃ、調べた経緯をまとめ上げた上で、初めて人に聞くべき。
0576名無しさん@お腹いっぱい。2005/09/19(月) 11:09:54
A と B の PC があります。
A で ssh-keygen を行ない鍵を作成しました。
A で cat id_dsa.pub > authorized_keys を実行しました。
A から B に id_dsa, id_dsa.pub, authorized_keys をコピーしました。
Keychain を使い A から B に入る時は最初の一回だけ id_dsa に対するパスワードを聞かれます。
しかし B から A に入る時は毎回 id_dsa に対するパスワードを聞かれます。
両者の /etc/ssh/sshd_config は全く同じ内容です。

B 側の Keychain がうまくいってないように思えます。しかし両者の設定は全く同じです。
何処がおかしいか分かりますか?何かしら根本的な間違いがあるでしょうか?
0577名無しさん@お腹いっぱい。2005/09/19(月) 16:51:59
keychain じゃなくって ssh-agent でやってみたら?
それでうまくいくのだったら keychain の問題なのでは。
0578名無しさん@お腹いっぱい。2005/09/19(月) 18:55:40
>>577
ssh-agent だといけました。
0579名無しさん@お腹いっぱい。2005/09/21(水) 11:20:24
以前は問題なかったのですが、圧縮転送をオンにして接続しようとすると
Algorithm negotiation failed
というエラーが出て接続できなくなってしまいました。圧縮転送をオフにすれば
今でも接続できます。どうしたらこのエラーを消せるのでしょうか?よろしくお願いします。
0580名無しさん@お腹いっぱい。2005/09/21(水) 11:26:48
>>579
そのメッセイジそのものだと思うんだけど?
05815792005/09/21(水) 11:28:55
>>580
サーバ側が圧縮転送に対応していないということだと思うのですが、その設定はどこでやればよいのでしょうか?
0582名無しさん@お腹いっぱい。2005/09/21(水) 11:31:29
>>579
sshd_config:
Compression yes
のことか?

>>580
さすがにそれくらいは解ってるだろ。答えたくないならレスするなよ。
0583名無しさん@お腹いっぱい。2005/09/21(水) 20:23:00
OpenSSH 4.2のリリースノートにこう書いてある。
---
- Added a new compression method that delays the start of zlib
compression until the user has been authenticated successfully.
The new method ("Compression delayed") is on by default in the
server. This eliminates the risk of any zlib vulnerability
leading to a compromise of the server from unauthenticated users.

NB. Older OpenSSH (<3.5) versions have a bug that will cause them
to refuse to connect to any server that does not offer compression
when the client has compression requested. Since the new "delayed"
server mode isn't supported by these older clients, they will
refuse to connect to a new server unless compression is disabled
(on the client end) or the original compression method is enabled
on the server ("Compression yes" in sshd_config)
---
クライアント側がOpenSSHの3.5より前のバージョンじゃないか?
0584名無しさん@お腹いっぱい。2005/09/21(水) 23:32:01
sshdを起動しようとしてもできず
ログには
Sep 21 22:55:48 6151 sshd[73]: error: Bind to port 22 on 0.0.0.0 failed: Address already in use.
Sep 21 22:55:48 6151 sshd[73]: fatal: Cannot bind any address.
と、残っています(6151はホスト名です)
何が悪いのでしょうか?
0585ヽ(´ー`)ノ ◆.ogCuANUcE 2005/09/21(水) 23:38:29
>>584
> Bind to port 22 on 0.0.0.0 failed: Address already in use.
> Cannot bind any address.
0586名無しさん@お腹いっぱい。2005/09/21(水) 23:56:04
>>583
問題はそれでした。

クライアント側にこれ
http://www.ssh.com/support/downloads/secureshellwks/non-commercial.html
を使っていたのが問題だったようです。

とりあえずは、サーバ側の設定のdelayedをyesにして対処したいと思います。
05875842005/09/22(木) 01:32:51
>>585
すいません
bindが0.0.0.0の22番ポートを失敗しました: アドレスが使われています
と言うような感じだと思うのですが
検索などしましたが、どのように解決できるかわかりません
すいませんが教えていただけ無いでしょうか?
よろしくおねがいします

また、sshdは起動できていたみたいです
すいませんでした
0588名無しさん@お腹いっぱい。2005/09/22(木) 02:09:58
>>587
→ 22番ポートへのbindに失敗しました。
で、「起動できていたみたい」じゃなくて、「起動しているのに
また起動しようとするからエラーが出ていた」んだよ。
# 眠ぃ...
05895842005/09/22(木) 02:16:46
>>588
すいません
ありがとうございました
0590名無しさん@お腹いっぱい。2005/09/30(金) 23:17:20
急に今まで繋がっていたSSHが突如先日繋がらなくなりました。
もちろん設定は一切変更してません。でも何故か一般ユーザーはログインできるようなんです。
ちなみに認証は公開鍵式で試しに設定でパスワード認証も許可してみましたがその問題のユーザーはログインできませんでした。

ちなみに問題のユーザーと言うのはrootのことです。
root以外の一般権限のユーザーはログインできますがrootのみ急に出来なくなってしまいました。
ログを参照してみると下の様なものが記されていたのですがどうすればよいのかご伝授お願いします。

Sep 30 23:05:03 sv crond(pam_unix)[6292]: session closed for user root
Sep 30 23:10:01 sv crond(pam_unix)[7237]: session opened for user root by (uid=0)
Sep 30 23:10:01 sv crond(pam_unix)[7240]: session opened for user root by (uid=0)
Sep 30 23:10:01 sv crond(pam_unix)[7237]: session closed for user root


0591名無しさん@お腹いっぱい。2005/09/30(金) 23:59:39
root で入れるようにしとくなよ。
0592名無しさん@お腹いっぱい。2005/10/01(土) 05:50:59
>>590
> ログを参照してみると下の様なものが記されていたのですがどうすればよいのかご伝授お願いします。
マジレスすると root でログインするのをやめる。
0593名無しさん@お腹いっぱい。2005/10/01(土) 06:16:10
このスレの連中はログの見方も知らんのか。

そのログは、クーロンがroot権限で実行されたときのログだ。
sshには何も関係ないし。
0594名無しさん@お腹いっぱい。2005/10/01(土) 10:18:13
わろす
0595名無しさん@お腹いっぱい。2005/10/01(土) 12:56:03
ぇ、このログ関係なかったんですか(´・ω・`)
言われてみればよく見るとこれが5分間隔で延々並んでましたからSNMP関係のかもしれませんでした;
どうもお騒がせしました(;

ちなみにこの問題の鯖は仲間内で使うターミナルサーバ的な感じだったのでrootを許可してましたがやっぱりそれでもrootは×の方が良かったかもですね
一応今は権限を持たせた一般ユーザーからsuでrootになるようにしてます。

ところで、認証はパスワードも許可してるのですがそれもやめるべきでしょうか。
テンプレには暗号化されてると書かれてますしいいかなぁと思っているのですが(汗
0596名無しさん@お腹いっぱい。2005/10/01(土) 13:29:11
>>595
よしあし。
パスワードは総当たりだの推測だのに弱い。盗聴にも多少弱い。
鍵は秘密鍵の盗難に弱い。
0597名無しさん@お腹いっぱい。2005/10/01(土) 15:48:50
>>595
鍵認証はMan-in-the-middle攻撃に強い。総当たり攻撃や推測は事実上不可能。
鍵の管理さえしっかりしていれば(パスフレーズさえ漏らさなければ)
PAMよりずっとセキュア。

それと、複数人で管理している場合、suはお勧めできない。
操作が記録に残るsudoを使うべし。
0598名無しさん@お腹いっぱい。2005/10/05(水) 07:58:08
VNCをフォワーディングして使用したいのですが、
sshログインは出来ますが、ポートフォワーディングが出来ません。
家でプライベートネットワーク内だと出来るのですが、外からだと出来ません。何か設定はございますでしょうか?

因みにクライアントはteraterm-utf8です。
ルーターはかんでるけどsshログインは出来てるから関係ない??
0599名無しさん@お腹いっぱい。2005/10/05(水) 10:08:57
>>598
VNCサーバー側のログと設定の確認はした?
VNCの実装にもよるけど、(通常意味のない)localhostからの接続を制限しているものがあるよ。

とりあえずポートフォワーディングが問題だとかんがえているなら、
他のアプリ(ポート)で試してみるとかやんないと。
0600名無しさん@お腹いっぱい。2005/10/05(水) 13:28:19
>>599
一応apacheでも試したんですが、ダメでした。http://localhst や プライベート内のpcからhttp://192.168.1.xでは見えるんですが。
最初に書いたとおり、プライベートネットワーク内からのフォワードは出来てるので、localhostは拒否してないと思うのですが。
0601名無しさん@お腹いっぱい。2005/10/05(水) 13:30:02
あっ、http://localhostてのはもちろんssh鯖のpcからです。
0602名無しさん@お腹いっぱい。2005/10/05(水) 14:25:26
具体的に!
0603名無しさん@お腹いっぱい。2005/10/05(水) 20:14:55
思う、じゃなくって、telnet localhost 80 でもなんでもいいからやれ。
個人的推理では loopback でしくってるだけ。
0604名無しさん@お腹いっぱい。2005/10/05(水) 20:20:11
> localhostは拒否してないと思うのですが
> 思うのですが
0605名無しさん@お腹いっぱい。2005/10/05(水) 20:59:00
>>603 すいません。。telnet localhost 80 は問題なく接続出来ました。。
0606名無しさん@お腹いっぱい。2005/10/05(水) 21:00:58
ネタだよネタ。ヌルーしろ。
0607名無しさん@お腹いっぱい。2005/10/06(木) 12:19:24
パスワードを入力しないでログインできるようにするにはどの方法がよいのでしょうか?
0608名無しさん@お腹いっぱい。2005/10/06(木) 14:18:30
環境による。
0609名無しさん@お腹いっぱい。2005/10/06(木) 23:59:16
>>607
鍵認証。
0610名無しさん@お腹いっぱい。2005/10/07(金) 00:10:53
それにしても一度はパスフレーズを入力するんだけどね。
どっちみち。
だけどパスワード認証よりも、公開鍵認証のが安全らしいよ。
御安全に。
0611名無しさん@お腹いっぱい。2005/10/07(金) 00:52:26
空パスフレーズ
0612名無しさん@お腹いっぱい。2005/10/07(金) 09:15:42
>>610
鍵認証時のパスフレーズなんておまけみたいな物。
あってもなくても大して変わらん。

秘密鍵さえ確実に保存しておけば。
0613名無しさん@お腹いっぱい。2005/10/07(金) 09:21:43
鍵のパス空にしてるけどやばいかな?
0614名無しさん@お腹いっぱい。2005/10/07(金) 09:29:07
レスを読めない人
0615ヽ(´ー`)ノ ◆.ogCuANUcE 2005/10/07(金) 09:32:23
ssh-agent とか。

パスフレーズより、鍵の bit 長の方が重要なんじゃなかったっけ?

むしろ、パスフレーズの入力無しでログインするってことは、PC を放置してて
誰かに勝手にログインされても分からないということなので、そこは気を付け
た方が良いね。そういう意味では、パスフレーズがあった方が気休めにはなる。
06166102005/10/08(土) 20:08:46
俺は>615の言うとおりと思ってる。
あと仮に公開鍵を盗まれても、もう一つパスフレーズという鍵みたいなもんがあるから、
クラックするのにもう一手間かかるもんね。まぁ無いよりはましって事で。
>613
やっぱり簡単にログインできる魅力と
クラックされてどれぐらい困るかの問題じゃないかなぁ?
にしてもパスフレーズつければ完璧って事ではないけどね。

#パスフレーズは俺の自己満足なのかなぁ?
0617名無しさん@お腹いっぱい。2005/10/09(日) 01:40:20
自動化処理でいろいろ面倒なのでパスフレーズは無しにしてる。
0618名無しさん@お腹いっぱい。2005/10/09(日) 02:05:33
>>616
公開鍵は盗まれても問題ない
0619名無しさん@お腹いっぱい。2005/10/13(木) 00:06:20
>>607
Kerberos使う。
ログインもKerberosでやって、そのとき発行されたチケットでsshに突撃。

SSOって奴だ。
0620名無しさん@お腹いっぱい。2005/10/19(水) 02:19:57
SSHのブルートフォースが毎日毎日続くので対策を検討しています。
簡単な対処法などあったら教えてください。
OSはRed Hat Linux 9。openssh-3.5p1-11.2.legacy。openssl-0.9.7a-20.4.legacyです。
一定回数以上の接続リトライで通信を遮断とか、
リトライ間隔の調整が、容易に行えるrpmパッケージがあると最高なのですが。
0621名無しさん@お腹いっぱい。2005/10/19(水) 02:21:42
syslogをパイプで受けてファイアウォールのフィルタをon/offするツールでも
作れば簡単にできそうだけど。
0622名無しさん@お腹いっぱい。2005/10/19(水) 02:31:59
>>621
> syslogをパイプで受けてファイアウォールのフィルタをon/offするツールでも
> 作れば簡単にできそうだけど。

ブルートフォースはrootユーザーから始まるようなので、syslogのAuthを
パイプで受けとって、rootのログインの試みを検出した時点から、
ポートを一定時間閉じるスクリプトを書けばいいんだけど・・・
・・・作るのがメンドイのですよ。

ポートノッキングをrpmパッケージで導入した方が簡単ですかねぇ。
0623名無しさん@お腹いっぱい。2005/10/19(水) 02:38:30
メンドイってあんた、そんな何時間もかかるものじゃあるまいし……。
こうやって質問してる間に書けちゃうだろうに。
0624名無しさん@お腹いっぱい。2005/10/19(水) 02:53:55
アクセスごとにポートの開け閉めをしていたら、競合状態を
作り出しちゃいそうだなぁ、設計がめんどうだなぁと。
0625名無しさん@お腹いっぱい。2005/10/19(水) 02:58:24
つiptablesのipt_recentモジュール
0626名無しさん@お腹いっぱい。2005/10/19(水) 03:05:59
620タソが穴のあるスクリプト書いちゃうかもしれんから、
もし既に書いてるなら参考に見せたげりゃーいいのに。
0627名無しさん@お腹いっぱい。2005/10/19(水) 09:34:32
ふつーはもっと下のレベルでアクセス制限するなりポート変えるなりすりゃいいだけだろ
0628名無しさん@お腹いっぱい。2005/10/19(水) 09:39:09
swatch -> tcp_wrapper でどうよ ?
0629名無しさん@お腹いっぱい。2005/10/19(水) 17:32:15
デフォルトの22番ポートを使わないようにしてから
アタックなんて一切無いんだが。
0630名無しさん@お腹いっぱい。2005/10/19(水) 19:04:09
それメンドイと思ったけど、
普通は.ssh/configの定義名でアクセスするから問題ないか。
0631名無しさん@お腹いっぱい。2005/10/19(水) 19:07:25
それに頼ると出先にいったときに忘れてたりする
0632名無しさん@お腹いっぱい。2005/10/20(木) 09:10:43
>>629
おれもそれで自宅のは運用してるけど、
一般的にはアレゲな方法だと思われてるよね。
0633名無しさん@お腹いっぱい。2005/10/20(木) 12:21:28
>>632
なんでアレゲなの?
0634名無しさん@お腹いっぱい。2005/10/20(木) 12:24:15
そもそもアレゲってドレゲよ?
0635名無しさん@お腹いっぱい。2005/10/21(金) 06:11:40
エロゲの親戚?
0636名無しさん@お腹いっぱい。2005/10/21(金) 22:26:48
>>633
おれにもよくわからん。
httpd のポートを同じように 80 から変えるのは、
(会社の)proxy の許可が通らなかったりとか、
まー、色々あるから、避けられるのは理解できるんだけどネ。
0637名無しさん@お腹いっぱい。2005/10/21(金) 23:15:01
アレゲって何?

スラドのコピペ
  ↓
0638名無しさん@お腹いっぱい。2005/10/21(金) 23:28:12
↑ .| .┌┐
│ .└‐┘└┐
└──┐  │
      └─┘
0639名無しさん@お腹いっぱい。2005/10/21(金) 23:56:19
>>620
ふつうにportsentryとかdenyhostsとか
0640名無しさん@お腹いっぱい。2005/10/22(土) 03:19:19
knockdでコンコン
0641名無しさん@お腹いっぱい。2005/10/22(土) 23:16:15
>>620
.jp以外を問答無用で蹴る。これでぐっと減ります。
0642名無しさん@お腹いっぱい。2005/10/23(日) 03:40:21
hosts.denyとかより下位レイヤで蹴ったほうが負荷が少ないよ。
うちは .cn .kr .hk .tw に属するIPアドレス手に入れて、
ssh に限らずざっくり全部拒否。
0643名無しさん@お腹いっぱい。2005/10/23(日) 08:01:03
>>642
.tw はまずいだろ
0644名無しさん@お腹いっぱい。2005/10/23(日) 11:49:40
>>643
なんで?
0645名無しさん@お腹いっぱい。2005/10/23(日) 14:41:33
マザーボード資料とか見るとき?
0646名無しさん@お腹いっぱい。2005/10/23(日) 14:48:49
こちらから接続にいくTCPくらいはステートフルに通すだろうから
全然問題ないのでは。
0647名無しさん@お腹いっぱい。2005/10/23(日) 15:18:40
台湾に出張に行ったときに困る
0648名無しさん@お腹いっぱい。2005/10/23(日) 15:21:43
FTPのように、ユーザーが自分のホームディレクトリ以上に行けないようにすることは出来ますか?
0649名無しさん@お腹いっぱい。2005/10/23(日) 15:21:57
>>647
そのときは開ける、または君のところは開けるでいいじゃん?
0650名無しさん@お腹いっぱい。2005/10/23(日) 16:15:40
>>648
/bin や /usr や /usr/local も見えなくなるけどいいのかね?
0651名無しさん@お腹いっぱい。2005/10/23(日) 16:18:28
Webページのみ利用のユーザーにFTPの代わりに提供したいのです。
0652名無しさん@お腹いっぱい。2005/10/23(日) 16:20:37
chroot(概念を理解)とかjail(chroot環境構築のツール)とかを
調べてください。
0653名無しさん@お腹いっぱい。2005/10/25(火) 11:25:27
.cn .kr .hk に属するIPを教えて
0654名無しさん@お腹いっぱい。2005/10/25(火) 12:00:17
>>653
つ ttp://www.blackholes.us/
週一くらいで更新されているからrsyncでも使って自動updateのshellでも書けばいい
0655名無しさん@お腹いっぱい。2005/10/26(水) 21:00:30
putty に関する質問はここでよろしいでしょうか?
0656名無しさん@お腹いっぱい。2005/10/26(水) 21:31:39
>>655
Putty その2
http://pc8.2ch.net/test/read.cgi/unix/1084686527/
0657名無しさん@お腹いっぱい。2005/10/26(水) 22:41:14
>>656
過疎ぎみのようですがそっちいってきます.
0658名無しさん@お腹いっぱい2005/10/26(水) 23:27:57
SSHの通信内容を復号化してそのまま読みたいんですが、どうやったらできますかね?
デバッグモードとかじゃなくて、ペイロードを直接そのまま見たいんです。
0659名無しさん@お腹いっぱい。2005/10/27(木) 00:18:49
暗号鍵を手に入れて復号。
06606582005/10/27(木) 01:22:02
>>659
そういうことではなくて、通信内容を表示してくれる
sshクライアント等が欲しいんです。
どういう風に通信が行われているかはRFC読んでも
いまいち実感がわかないので、実際に見てみようかなと。
0661ヽ(´ー`)ノ ◆.ogCuANUcE 2005/10/27(木) 01:46:10
言ってる意味が良く分からんけど、ethereal とかか?
0662名無しさん@お腹いっぱい。2005/10/27(木) 02:52:44
>>660
NULL 暗号化を実装したサーバとクライアントを用意してがんばる。
06636582005/10/27(木) 05:11:59
説明が足りませんでしたね。
実は今SSHの通信部分を実装してるんです。
実際のパケットも観察してみようと思ったんですが、当然ながらそのままでは暗号化で読めません。
で、どうにかして見られないかなと思ったわけです。

>>662
なるほど。ただちょっと面倒ですな…
0664名無しさん@お腹いっぱい。2005/10/27(木) 12:39:51
opensslの関数をフックして通信内容をdumpするsoを作って、LD_PRELOADで読み込ませる。(socksみたいな感じで)
0665名無しさん@お腹いっぱい。2005/10/27(木) 12:40:45
いま実装中ってことならおそらく ver.2 なんだろうけど、ver.1 でもいいんな
ら dsniff の sshmitm を debug mode で間に噛ませてやれば復号した通信内容
を dump してくれた筈。
0666名無しさん@お腹いっぱい。2005/10/27(木) 12:45:43
>>648

scpやsftpだけで良ければこれで簡単に実装できます。
つ rssh http://www.sdri.co.jp/rssh/index.html.ja

shellが無いとダメ?
0667名無しさん@お腹いっぱい。2005/10/27(木) 18:41:51
接続先サーバのホストキーが変わったときに
~/.ssh/known_hosts を新しいので上書きさせる方法ってない?

サーバ構築中で再インストールしたときとかで
攻撃によるものじゃないのが明らかなときに
いちいちエディタで開いて削るのはめんどくさい。
HashKnownHosts してるとどれを削ればいいのかわからないし。
0668名無しさん@お腹いっぱい。2005/10/27(木) 22:24:55
>>667
構築中のサーバ専用の known_hosts ファイルを UserKnownHostsFile で指定
すればいいんじゃない? 変わったら rm すればいい
0669名無しさん@お腹いっぱい。2005/10/28(金) 00:43:55
>>668
あー、それいいね。
やってみる。
どうもー。
■ このスレッドは過去ログ倉庫に格納されています