• ベストアンサー

cgiでメールを発信する時のユーザ

h-kikuの回答

  • ベストアンサー
  • h-kiku
  • ベストアンサー率50% (22/44)
回答No.2

質問の意図がイマイチわからないのですが. nobody のプロセスで動くと何か都合が悪いのですか?? 一番、手っ取り早い解決方法は(あまりお薦めしませんが)  cgi のパーミッションに suid ビットを立てる 方法があります. WWW サーバそのもののプロセスを nobody 以外の ユーザの権限で動くようにすれば cgi もサーバの ユーザで動くと思いますが...

pochi0000
質問者

お礼

nobodyで動作させたくないのは実はメールサーバ側で外部ドメインに発信できる ユーザを制限しているので、できればnobodyは避けたいという理由です。 色々と試した結果、 http://ユーザ名@xxx.co.jp/sendmail.html という形でページを表示してcgiをactionされると出来そうなことが 分かりました。 ありがとうございました。

関連するQ&A

  • mailコマンドについて

    UNIXのmailコマンドについてです。 test.dat というファイルを作成し、(vi) mail コマンドを実行すると % mail aaa@bbb.ne.jp < test.dat test.datがaaa@bbb.ne.jp に行くと考えています。 ある一台のサーバから実行するとちゃんと送れるのですが もう一台のサーバから実行すると送れません。 やたら時間が掛かった上に、送信できない状態です。 しかも Host unkown で返ってきました。 送信できる方のサーバは Solaris2.5 で sendmailの設定、DNSの設定、POP3のインストール mnewsのインストール がされています。 送信できない方のサーバは Solaris7 で メールに関する設定はほとんどやっていません。 当然、ここに問題があると思うのですが、 メールの送信にあたって、何の設定をすればいいのでしょうか?

  • FreeBSDでのsendmailでのメール送信

    はじめまして FreeBSD11.0で自前サーバ構築をしています。 今回、サーバ上からsendmailで、下記ページを参考にメールを送信を試みています。 ・http://x68000.q-e-d.net/~68user/unix/pickup?sendmail FreeBSD11.0上での作業は、以下の通りです。 1. /etc/rc.confに下記を追加 sendmail_enable="YES" 2. リブート 3. sendmailが動作していることを下記で確認 # /etc/rc.d/sendmail status sendmail is running as pid 713. sendmail_msp_queue is running as pid 716. # 4. sendmailコマンドを実行 % sendmail From:送信元メールアドレス To:宛先メールアドレス Subject:タイトル xxx . % ●結果、コマンドは、正常に終了してますが、メールは、送信できません。 試しに自分の契約しているレンタルサーバ(FreeBSD9.1)で上記の4.のsendmail コマンドを実行すると、メール送信ができます。 環境設定など作業上なにが足らないのでしょうか。 FreeBSDのsendmailコマンドでの送信についてご存知の方がおりましたらご教示頂け ないでしょうか。 いろいろと調べたり試行錯誤したのですが、解決できなく質問をさせて頂きました。 よろしく、お願いいたします。

  • cron実行時のメールについて

    SolarisでCRONを実行した場合 メールが送信されるようですが cronに登録してあるものでもメールが送信されるモノと されないモノが存在します 実行コマンドのリダイレクトに下記が実行されているわけでもないのですが   コマンド >/dev/null 2>&1 コマンド 1> /dev/null OSはSolaris9です ご存知の方ご教授ください

  • SENDMAIL:root以外のローカルユーザはunknown

    SENDMAILサーバ上のすべてのローカルユーザにメール送信ができません。rootへは可能です。maillogを見ると「UserUnknown」と表示されています。ローカルユーザAからローカルユーザBにmailコマンドで送信した場合、「Saved message in /home/A/dead.letter」というエラーメッセージが表示されます。 ログインできる有効なローカルユーザに送信ができないのは何故なのでしょうか...? ご教授お願いします。 *今日SENDMAILの再インストールも行いました。

  • CGIを実行した時に作ったファイルの所有者に関して

    Proftpdとapacheを用いてWebサーバを運用していますがCGIやPHPによって作られたファイルの所有者がapacheになってしまいFTPからファイルが削除できません。 hoge.hoge.comはhogeでCGIを実行し aa.hoge.comはaaでCGIを実行することはできないのでしょうか? バーチャルホストでCGIを実行するときは何か別に記述が必要なのでしょうか? ちなみにFTPDは User   nobody Group   nobody apacheは User apache Group apache このように設定してあります。

  • CGIでメール送信がしたい

    ホームページからメールを出すCGIを作ろうとしています。 コマンドからCGIを直接実行すると問題なく動くのですが、formから動かすと Premature end of script headers: ・・・・ というエラーがでます。いろいろ探してみたんですが、分かりませんでした。 改行コードは端末からviで書いてますので、問題は無いだろうと思っているんですが… エラーはでますが、メールは送っているようです。 コマンドから実行した場合の差出人はroot@hoge.netになっているんですが、 ページから実行させたものはanonymous@hoge.netになります。 きっと勉強不足でとんでもないことをやっているんだろうと思うのですが、 探した範囲には答えがありませんでした。 どこが悪いのか教えてください。よろしくお願いします。 サーバーはVine2.6R1でApacheを使っています。 (test.html) <html> <body> <form name="down" action="/cgi-bin/test/a.cgi" method="post"> <input size="20" type="text" name="a_sel"> <input type="submit"> </body> </html> (a.cgi) #!/usr/bin/perl require '../mimew.pl'; require '../jcode.pl'; $sendmail = "/var/qmail/bin/sendmail"; $master_id = "ho\@hoge.net"; $msg="メッセージ"; &jcode'convert(*msg,'jis'); open (ML,"| $sendmail $master_id"); print ML $msg; close(ML); exit;

    • ベストアンサー
    • CGI
  • ユーザーディレクトリでCGIの実行ができない。

    環境 FedoraCore2 Apache で、ルートディレクトリでCGIの実行が可能であるのに、ユーザーディレクトリに設置したCGIは500エラーを起こして実行できません。 ブラウザを通してアクセスすると500が出ますが、ユーザーでコマンドラインからCGIを実行すると正常に結果を返します。 なお、コマンドラインでCGIを実行した場合にはログは残りませんが、ブラウザでアクセスした場合、以下のログファイルにログが記録されていました。 error_log [Tue May 16 08:49:21 2006] [error] [client 192.168.11.2] Premature end of script headers: test.cgi suexec.log [2006-05-16 08:49:21]: uid: (503/test) gid: (503/503) cmd: test.cgi [2006-05-16 08:49:21]: cannot get docroot information (/home/test) ちなみに、ネットで見つけた#!/usr/bin/perlの後ろに--を付加する方法では同様の500エラーが出てしまいました。 どなたか、原因及び解決法をご存じの方、ご教授いただければ幸いです。

  • solaris8 の mailコマンドについて

    こんにちは、 今solaris8でsendmailを設定して送信テストを行っています。 メールをコマンドラインから送信しようと思い、mail コマンドを使っています。 そこでこの mailコマンドを使って、 to: cc: bcc: の宛先の指定と subject:をつけての送信テストを行いたいのですが、どうしても宛先の指定とsubjectをつけてのメール送信ができません。サーバからどのように送ればいいのでしょうか。

  • sendmailのCGIを実行させたい

    ブラウザ画面から入力した内容を取得して、sendmailするCGIを作ったのですが、プロバイダへ上げて実行させてみたら、何かでつまずいていてエラーになるんです! ちなみにプロバイダは、Hi-Hoなのですが、 #sendmailのパス $SENDMAIL = '/user/lib/sendmail'; と指定して、文字の復元・変換・ヘッダの成形をした後で、 #Sendmailでメール送信 open(MAIL, "| $SENDMAIL -i -t -f $FORM{'Email'}") or die("ERROR: exec sendmail."); print MAIL $header, $body; close MAIL; と記述してるのですが、全然うまくいかないんです。 どなたか、Help Me!!

    • ベストアンサー
    • CGI
  • CGIのみでメール送信

    SENDMAIL、SMTPを使わずCGIのみでHPに設置したフォームから メールの送信って出切るのでしょうか? 皆様のお知恵をご教授ください。 宜しくお願いします。