|
すみません。ネット初心者です。 くだらないことをおききしたいのですが、、、。 いろいろなホームページをみていたら、かってに 何かわからないのですが、「無料のダウンロードを行いました」 といって、なんだか何もしていないにもかかわらず、 なにかが、ダウンロードされてしまったみたいです。 これによって、個人情報が流れてしまったり、することはあるのでしょうか?なんだか不安です。 アドバイスお願いします。 いろいろ不安になります。 |
|
koni と申します。 (環境: ActivePerl v5.6.0 + WinNT) ワンタイムパスワードについて質問があります。 MD5 を使い認証をしてくるサーバーに Net::FTP を使用して自動 FTP をし たいのですが、うまく行きません。 詳細は以下です。 ※この件に明るくないため、言葉の使用法が誤っているかも知れません。 == まずは、 # start ----- use Net::FTP; $ftp = Net::FTP->new("ftp-server-name.co.jp", Debug => 1); $ftp->login('user', 'pass'); $ftp->quit; # end ------- などとしたところ、PASS を送信したところで、はじかれてしまいました。 ちなみにこれを ffftp などの MD5 対応のクライアントを使うと、 FFFTP Ver.1.80 Copyright(C) 1997-2001 Sota. ---------------------------- ホスト ftp-server-name.co.jp を探しています. ホスト ftp-server-name.co.jp (***.***.***.*** (21)) に接続しています. 接続しました. :(省略) >USER user 331 * * * MD5を使用します. >PASS [xxxxxx] 230 User user logged in. >TYPE A 200 Type set to A. ダウンロードのためにホスト ***.***.***.*** (*****) に接続しています. 接続しました. >NLST -alL 150 Opening ASCII mode data connection for /bin/ls. 226 Transfer complete. ファイル一覧の取得は正常終了しました. (124 Bytes) (* の部分は伏せてあります。) などとなり、接続できました。 個人的には、Net::FTP にこの MD5 を実装するには、上記の USER user をし たあと、331 の後の値を、Digest::MD5 のメソッドにかませて、戻り値をパ スワードとして送信すれば OK なのか、と考え、やってみたのですがダメそ うでした。 もしご存知のかたがいらっしゃいましたら、ご教授願います。 |
|
>>2030 koni > ワンタイムパスワードについて質問があります。 > MD5 を使い認証をしてくるサーバーに Net::FTP を使用して自動 FTP をし > たいのですが、うまく行きません。 一口にワンタイムパスワードといってもいくつかあるので、 これだけでは分かりません。 しかし、md5 が云々と言うことから、opie じゃないかと思いますが。 私自身 opie も S/key も使ったことがないので、分かりませんが、 > 個人的には、Net::FTP にこの MD5 を実装するには、上記の USER user をし > たあと、331 の後の値を、Digest::MD5 のメソッドにかませて、戻り値をパ > スワードとして送信すれば OK なのか、と考え、やってみたのですがダメそ > うでした。 多分 password を md5 でハッシュしても駄目でしょう。 ワンタイムパスワードの意味がないです。 CPAN に http://search.cpan.org/search?mode=module&query=opie という module があるのでトライしてはどうでしょうか? とにかく、認証方法がワンタイムパスワードとしか分からないので、 これでうまくいくかどうかは保証できません。 上記サイトの module search で S/key とか MD5 とか MD4 で それらしきものを検索してはどうですか? でも良いことを聞きました。ありがとうございました。 # web サーバで ftp 使わせているのですが、 # パスワードの保護がどうにかならないかと # 頭を抱えていたところです。 |
|
はじめまして、C言語でFTPクライントを作ろうとここのページを参照させて いただいたのですが、以下の部分のソースがよくわかりません。 87: while (1){ 88: char c; 89: c = getopt(argc, argv, "d"); 90: if ( c == -1 ) break; 91: switch (c){ 92: case 'd': 93: debug_flg = 1; 94: argc--; 95: argv++; 96: break; 97: default: 98: break; 99: } 100: } getoptは調べたところint型だと思うのですが、なぜchar型の変数に値を 代入しているのでしょうか? また、いろいろ調べてみたんですが、このgetoptで何をしているのかもよく わかりませんでした。よろしければこの部分についての解説もお願いいたし ます。m(_ _)m |
|
>>2030 koni そういう FTP サーバを使ったことがないので試すこともできないのですが、 これって APOP みたいな感じなんですかね? どこかで公開されている FTP サーバはないものでしょうか。 >>2032 snow > getoptは調べたところint型だと思うのですが、なぜchar型の変数に > 値を代入しているのでしょうか? これは僕のミスで、正しくは int です。直しておきます。 > このgetoptで何をしているのかもよくわかりませんでした。 引数解析です。 for ( i=1 ; i<argc ; i++ ){ if ( argv[i][0] == '-' ){ switch (argv[i][1]){ case 'd': debug_flg = 1; break; } } } みたいなもんですが、自分で書くのもめんどくさいのでライブラリを 使いました。 詳しくはここらへんをどうぞ。 http://www.jp.FreeBSD.org/cgi/mroff.cgi?subdir=man&man=getopt&dir=jpman-3.1.0%2Fman§=3 |
|
>>2033 otp-md5 google 君に教えてもらいました。なるほど、こんな感じの流れになるのか。 http://www.jaist.ac.jp/~uchida-t/otp/ |
|
>>2033 68user ご回答ありがとうございます。 ですが、このままint型に変えただけだと、エラーがなければCに入るのは 通常「100」ですよね?ということは case 100: とすれば良いのですよね? そこを修正して、先ほどのプログラムを例に従って実行してみたのですが、 どうもどこかでループにはまっているようで、ファイルの取得ができません。 う〜ん・・・(汗 |
|
>68userさん http://x68000.startshop.co.jp/~68user/cgi-bin/cvsweb.cgi/public_html/cgi-bin/view-segabbs.cgi.diff?r1=1.3&r2=1.1&f=h ロボット検からまだ引っかかるので上記ページを確認したのですが <head>の部分が</head>になっているのがちょっと変かなっと思ったのですが…どうなんでしょうか。 |
|
>>2035 snow > エラーがなければCに入るのは通常「100」ですよね? 'd' の character code は 100 なので、100 でも 'd' でも動作は 同じですけど、可読性やメンテナンス性を考えて 'd' と書きましょう。 > どうもどこかでループにはまっているようで、ファイルの取得ができません。 できる限り余分な部分を削ったソースを見せて下さい。 >>2036 ED > <head>の部分が</head>になっているのがちょっと変かな プログラムのソースでなく実物を見て下さい。 http://X68000.startshop.co.jp/~68user/segabbs/bbs3/vol5/5_97.html > ロボット検からまだ引っかかるので META タグを追加してからまだ15日しか経過していません。例えば google なら、クロール頻度は最低1ヵ月に1回だそうです。 http://www.google.com/intl/ja/faq.html |
|
>>2037 68user >> エラーがなければCに入るのは通常「100」ですよね? >'d' の character code は 100 なので、100 でも 'd' でも動作は >同じですけど、可読性やメンテナンス性を考えて 'd' と書きましょう。 そうなんですか。すいません、'd'で大丈夫だとは知りませんでした。 >> どうもどこかでループにはまっているようで、ファイルの取得ができま >>せん。 >できる限り余分な部分を削ったソースを見せて下さい。 いえ、前回のcの型の変更以外の変更は行っていません。 それでできないのですが・・・ |
|
>68useさん すいません。プログラムのほうしか見てませんでした。 |
|
お礼です。 「ネットワークプログラミングの基礎知識」を参考にさせて頂きました。 とても分かりやすく私にとって大変役に立ちました。 自分はDOSやWindowsのアプリ、ドライバを作ることが主な仕事ですが この度、サーバ側のプログラムを作ることになり、こちらのHPを参考に させていただきました。 特に「ネットワークプログラミングの基礎知識」と「簡易版コマンド マニュアル」内のcrontabを読ませていただき、大いに参考になりました。 普段はC(ドライバ作成用)とDelphi(クライアント側アプリ作成用) を使っていますが、こちらでPerlの使い方までも教えてもらいました。 ただただお礼を言うばかりです。 素晴らしいHPを提供してくださって、こころから感謝申し上げます。 有り難うございました。 |
|
>>2038 snow > いえ、前回のcの型の変更以外の変更は行っていません。 > それでできないのですが・・・ 動かないというのは、 http://X68000.startshop.co.jp/~68user/net/c-ftp-1.html の ftp-client.c ですか? コマンドラインからは何とタイプしましたか? % ./ftp-client -d anonymous your@mail.address ftp.jp.FreeBSD.org /pub/FreeBSD/README.TXT のように -d を付けるとデバッグ情報が表示されますが、どこで 止まっていますか? もし NAT 環境で試しておられるなら、 --> PORT 192,168,0,7,9,58 <-- 500 Illegal PORT range rejected. などとプライベート IP アドレスを送ってしまい、エラーと なります。しかしこのプログラムではエラーチェックを行って いないので、構わず RETR を送ってしまいうためファイルを 取得できません。この点は説明を付けておくべきでしたね。 getopt の件は修正しておきました。ご指摘ありがとうございました。 http://X68000.startshop.co.jp/~68user/cgi-bin/cvsweb.cgi/public_html/net/sample/ftp-client.c >>2039 ED というわけで、しばらくお待ち下さい。 >>2040 Moo どもども。わかりにくい点がありましたら ご指摘お願いします。 |
|
>>2041 68user > この点は説明を付けておくべきでしたね。 NAT 環境では動かない旨、追加しました。 http://X68000.startshop.co.jp/~68user/cgi-bin/cvsweb.cgi/public_html/net/org/c-ftp-1.html.diff?r1=1.1&r2=1.2&f=h |
|
>>1691 紅の猫 >>2023 rosegarden http-client, http-client-2 のバッファオーバーランの修正と、 bzero,bcopy の説明の追加を行いました。ご指摘ありがとうございました。 http://X68000.startshop.co.jp/~68user/cgi-bin/cvsweb.cgi/public_html/net/sample/http-client.c http://X68000.startshop.co.jp/~68user/cgi-bin/cvsweb.cgi/public_html/net/org/c-http-1.html |
|
このようなことでもアドバイスもらえるのかな? えっと、CGIでHTMLの一部(5行目から7行目)までとかをログとして取得し、その部分を出力することはできるんでしょうか? |
|
>>2044 幸江 質問の意味がわからないです。 > HTMLの一部(5行目から7行目)までとかを この HTML はどこにあるんですか? どこかから取得するんですか? > ログとして取得し、その部分を出力 「ログとして取得」とはどういう意味でしょうか? HTML から 特定の範囲を切り出し、ブラウザ上に出力し、さらにそれを ログに記録しておくのですか? |