FTPでapacheドキュメントルートへ転送できない?

このQ&Aのポイント
  • RHL7.0で、apacheをインストールしました。FTPであるユーザでログインし、アップロードを試みたができない。
  • ドキュメントルートのファイル所有者をグループに変更し、パーミッションも変更したがアップロードできない。
  • FTPログインはできるが、ドキュメントルートのファイルを変更しようとするとアクセスエラーが出る。
回答を見る
  • ベストアンサー

FTPでapacheドキュメントルートへ転送できない?

RHL7.0で、apacheをインストールしました。 そのドキュメントルート(デフォルトの/var/www/html配下)にwindowsPCからFTPであるユーザでログインし、アップロードを試みたのですが、できません。 下記の事もしてみました。 (1)apacheドキュメントルートのファイル所有者をあるグループに全て変更  chgrp -R グループ名 /var/www (2)ドキュメントルートのディレクトリ/var/wwwのパーミッション変更  chmod 2775 /var/www(これでwwwはdwxdwsr-xとなった) (3)ドキュメントルートへFTPログインでアップロードするユーザを、(1)のグループへ加える。 このユーザ名でFTPログインできますが、/var/www/html/index.htmlを変更しようとすると fxfer、アクセス件がありません、と出ます。 (2)の事は本に書いてあった事をそのまま実行したのですが、-Rオプションも付けるべきなのでしょうか? chmod 2775 /var/www/htmlとすべきなのでしょうか? 細かく考えすぎなのでしょうか? すみませんが宜しくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • natural
  • ベストアンサー率37% (419/1115)
回答No.2

うまくいきませんでしたか…。(^_^; そうなると残念ながら現状私には障害の原因が解りません。 No.1で書いた事への補足ですが、参考URLを読んで頂いた方が良いと思いますので、ご一読下さい。 間口は狭めた方がより安全と言うことです。 特に書き込み権限は必要最小限とした方が良いでしょう。 ただしCGI等により書き込みが必要な場合等はケースバイケースで設定が必要になりますが。

参考URL:
http://linux.ascii24.com/linux/linuxcom/2000/02/22/390496-000.html
chrilake
質問者

補足

naturalさん、大変返事が遅くなり、申し訳ありませんでした。 実は気をつけてはいたのですが、恥ずかしながらNimdaに感染してしまい、初めてのことなのでてんやわんやしてしまいました。 参考URLの内容を今読ませてもらっています。 ご丁寧なご回答を頂戴し、ありがとうございます。 また書込みいたします。

その他の回答 (2)

  • natural
  • ベストアンサー率37% (419/1115)
回答No.3

No.2を書き込んだ後でこんなページ(参考URL)を発見しました。 私の様に単独で管理するのでなければ有効な手段なのですね。 一面的なことを申し上げまして失礼しました。<(_ _)>

参考URL:
http://www.amy.hi-ho.ne.jp/kens/linux/httpd2.html
chrilake
質問者

お礼

naturalさん、度々のご回答、ありがとうございました。 お陰さまでセキュリティの面で大変勉強になりました。 また何かと宜しくお願い致します。

  • natural
  • ベストアンサー率37% (419/1115)
回答No.1

>chmod 2775 /var/www/html とすれば出来ると思います。 ところで、こういう場合Web管理者用のアカウントを作成して、ホームページを置くスペースの所有者をそのアカウントに設定、そしてそのユーザーでFTPをかけるという感じだと思うのですが、如何でしょうか。 そうすればこんなセキュリティ上危険な状態にしなくて済みますよね。

chrilake
質問者

お礼

すみません。 chmod 2775 /var/www/html を実行して見たのですが、アクセス権限がありません、と出てしまいました。 何か設定が悪いのかもしれません・・…。 ls -alでもhtmlの所有はloginしたユーザのグループになっているし、このユーザはそのグループのはずなのですが・・・・・。

chrilake
質問者

補足

早速のご回答ありがとうございました。 小生、ディレクトリなどのパーミッションが良く分かっていないようです。 度々本当に恐縮ですが、下記お願い致します。 (1)uploadする直接のディレクトリを2775にしないと出来ないという事でしょうか? (2)この方法が何故セキュリティ上危険なのか、わかっておりません。 大変厚かましいお願いですが宜しくお願い致します。

関連するQ&A

  • Apacheのドキュメントルート

    現在、PCにApacheをインストールしておりWeb公開しております。 Apacheのドキュメントルートを c:\xampp\htdocs\public_html に設定しておりFTPソフトにてこのpublic_htmlにファイルをアップロードしようとすると エラーになり 「c:\xampp\htdocs\public_html に対する許可されていない操作です。」 というエラーメッセージが出ます。 ちなみにpublic_html配下にサブフォルダを作成するとそこにはFTPソフトでアップロードできる 状態です。 Apacheのドキュメントルートってファイルの書き込みはできないのでしょうか。

  • Apache2.2のドキュメントルート変更ができない

    こんにちは。 apache1.3を今まで利用していたのですが、今回2.2を利用するにあたり、ドキュメントルートの変更が出来なくて困っています。 通常、ドキュメントルートは/var/www/htmlになっているのですが、今回(/home/test)に変更したいと思いDocumentRoot "/home/test"としました。ドキュメントルートを変更したので、以下の<Directory>も<Directory "/home/test">と変更したのですが、うまくいきません。 エラーがPermission denied: access to /index.html deniedと出ていますが、user,groupもtestに変更しております。 1.3の時はうまくいったのですが、2.2になって何か変更があったのでしょうか? どなたかご教授お願いします。

  • Apacheのドキュメントルートについて

    これまでwindows版のApacheを使ってきて、htmlファイルを配置するのはhtdocsでした。 今回Linux上でApacheを使うことになったのですが、本を読んで見ると、/var/www/~がドキュメントルート となっています。 しかし、windows版と同じくhtdocsはあります。 Linuxの場合、htdocsなのか、/var/www/~のどちらにhtmlファイルやPHPファイルを配置したらいいですか?

  • apacheでパスワードなしログインが出来ない

    いつもお世話になります、 PHPからrsyncを実行するため、 apacheでパスワードなしログインが出来るようにしたいのですが 設定をしても、どうしてもパスワードを要求されてしまいます。 エラーメッセージが出ないので八方ふさがりになってしまいました LINUX上級者の方ご教授頂けると嬉しいです クライアント:CentOS5 サーバ:RedHutLinux5.6 【行いたいこと】 apacheでパスワードなしログインが出来るようにしたい 【クライアント側】 1.まずはapacheでsuできるようapacheユーザの最後の/sbin/nologinを/bin/bashに変更 2.apacheユーザの秘密鍵と公開鍵を置く場所を作る # mkdir /var/www/.ssh # chmod 700 /var/www/.ssh # chown apache.apache /var/www/.ssh 3.apacheユーザの秘密鍵と公開鍵を作る # su - apache $ ssh-keygen -t rsa 空でenter 4.以下の文字列をコピー $ cat ~apache/.ssh/id_rsa.pub 【サーバ側】 5./etc/passwdにapacheが見当たらなかったので追加 apache:x:48:48:Apache:/var/www:/bin/bash 6./etc/groupにapacheが見当たらなかったので追加 apache:x:48: 7.フォルダを作り公開鍵をペースト # mkdir /var/www/.ssh # chmod 700 /var/www/.ssh # chown apache.apache /var/www/.ssh # chown apache.apache /var/www/.ssh/authorized_keys # chmod 600 /var/www/.ssh/authorized_keys 8.権限付与 # chgrp -R apache /var/www/html 【クライアント側】 9.apacheにsuする 10.SSHで接続 ssh -i /var/www/.ssh/id_rsa XX.XX.XX.XX 11.パスワードを聞かれてしまう apache@XX.XX.XX.XX's password: 失敗

  • Apacheの設定(ドキュメントルート関連)

    Apacheを使用したサイト構築で以下のことが可能か、可能であれば方法、参考となるサイト等お教え願います。 ■やりたい事 公開したいドキュメントが次のように2つのフォルダに格納されています。 (1)/var/www/html/hoge1 (2)/var/www/html/hoge2 ブラウザから、それぞれ次のように参照することは可能でしょうか。 (1)http://ホスト名/ (2)http://ホスト名/hoge2/ ■私の考え ドキュメントルートを「/var/www/html/hoge1」にすれば(1)は可能だと認識していますが、(2)はhoge2がドキュメントルートの上位フォルダになるので、「http://ホスト名/hoge2/」のような参照は出来ないと思っています。 しかし、何らかの設定で可能であればその方法をお教え願います。 よろしくお願い致します。

  • Apache2+perlのドキュメントルート設定

    既存のデータを動かすために、ubuntuに (1)apache2インストール (2)perlインストール しました。 既存のcgiファイル等を apache2のインストールで作成された  /var/www/html に入れても動かなかったため、設定ファイルである  apache2.conf の中を、 (1)+ExecCGIを追記(下記) <Directory /var/www/html> Options +ExecCGI </Directory> +ExecCGI (2)末尾に  AddHandler cgi-script .cgi .pl を追記しましたが、まったく動きません。 上記の設定はまちがってますでしょうか? ほかになにを設定すればいいでしょうか? 知人に聞いたところ、あとドキュメントルートの設定ができればいいと言われましたが、設定ファイルのどこをいじっていいかわかりません。 ドキュメントルートの設定方法がわかりません。 教えてください。

    • ベストアンサー
    • CGI
  • Apacheの実行権限について

    Apacheがユーザーディレクトリに、ディレクトリを作成したり画像を(アップロードして)作成したりする場合、以下のように設定していますができません。 httpd(子プロセス)の実行ユーザー/グループはそれぞれapacheです。 親プロセスはrootになっています。 以下のディレクトリは次のようになっています。 (ドキュメントルートはwordpressです) /var/www/html/projectName/wordpress/wp-content/uploads drwxrwxr-x(775) owner=yamada group=apache このように、group(apache)に書き込み権限を与えているのですが、uploads以下にディレクトリやファイルの作成ができません。このディレクトリのownerをapacheにするとできるようになります。 apacheユーザーはapacheグループに属しているので、書き込み権限(w)をもってディレクトリの作成やファイルの作成ができるはず、という認識だったのですがなぜかできません。私の認識が間違っているのでしょうか。

  • 所有者は違うがグループが同じファイルに対して、グループ所属者がFTPでRW,chmodするのを許可したい

     現在サーバを運用しているのですが、同じグループに属するユーザーには、ファイル所有者(そのグループに属している)に関係なくFTPにおいて読込、書込、上書、権限変更を許可したいのですが、実現方法がわかりません。 *Windowsにおける、グループ権限に相当することを実現させたいです。 ユーザー A、B、C 上記ユーザーはグループ:webに所属。 ドキュメントルート以下は以下のように構成 ドキュメントルートはAのみアクセス可能(RW,chmodなど全権限) /----dirA Aのみアクセス可能(RW,chmodなど全権限)   |   --dirB A、Bのみアクセス可能(RW,chmodなど全権限)   |   --dirC A、Cのみアクセス可能(RW,chmodなど全権限)  以上のように、Aを管理者的に扱い、B、Cはchrootして限定的なアクセスにしています。  当然、B、Cは自分のホームにファイルをUPして全権限を行使できますが、その際 所有者がBやCになってしまうため、Aがchmodしたり、上書きできません。  Aをrootにして、FTPアクセスさせれば解決できそうですが、セキュリティ上rootでFTPアクセスは避けたいです。  どのように設定すればよいでしょうか?  よろしくお願いいたします。 環境 OS FreeBSD 4.7 FTP ProFTPD 1.2.10

  • Apacheのドキュメントルート配下のファイル、ディレクトリの所有者は

    Apacheのドキュメントルート配下のファイル、ディレクトリの所有者は、rootのままだと危険でしょうか? /var/www/html/以下を公開しています。所有者をとりあえず、apacheに変えましたが、通常所有者はどうすべきですか? パーミッションの関係でrootのままが便利な気がしますが。

  • apacheでドキュメントルート変更

    httpd.confを編集して # DocumentRoot: The directory out of which you will serve your # documents. By default, all requests are taken from this directory, but # symbolic links and aliases may be used to point to other locations. # DocumentRoot "C:/www/jisaba" とドキュメントルートの変更を行ったのですが、 127.0.0.1とアドレス入力してもApacheのデフォルトのhtmlに飛んでしまうのです。 apacheをアンインストールして再インストールしてもapacheのhttpd.confの 設定は DocumentRoot "C:/www/jisaba" と以前の設定が残っています。 google検索などをしたのですが、 「OSを再インストールするのが一番早い」 みたいな事をかいてあります。 apacheってレジストリの変更までしてしまうのでしょうか? それとも、httpd.confの書き間違え? 原因がわかりません。前はディレクトリ変更は成功していたのですが…