• 締切済み

MySQLでのLinuxユーザの作成

Linux上でMySQLを構築する際useraddコマンドでmysqlユーザを作成することは何かメリットがあるでしょうか? Apache httpdの構築の本を読むと実行ユーザ用にapacheユーザを作成しているのですが、MySQLの本では実行ユーザはmysqlを指定しているのに、OS上でユーザ作成は行っていません。 存在しないユーザであっても、実行ユーザとして指定できるのであれば、MySQLではmysqlユーザを作成することに何かメリットがあるでしょうか? また、反対にApache httpdでは何故apacheユーザ(とグループ)を作成しているのでしょうか? (試していませんが、Apache httpdでは存在しないユーザでは実行できないのでしょうか?) よろしくお願いいたします。

みんなの回答

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

むしろ、単にインストーラが初期設定の際にかってにmysqlユーザーを作成してくれているのでは? >反対にApache httpdでは何故apacheユーザ(とグループ)を作成しているのでしょうか? では逆にどのユーザーで実行するのが正しいとお考えですか? 基本的には未知のセキュリティホールへの予防も視野に入れ、 rootユーザー以外の適当なユーザーが実行するのが基本ですよね? それがapacheならapacheユーザーだしmysqlならmysqlユーザーということでしょう

sainte
質問者

補足

まずまずの回答でした

関連するQ&A

  • linuxユーザ、グループ作成

    CentOSでユーザーグループの作成について以下のことが分かりません。 【質問1】ユーザとグループの同時作成 コマンド:useradd -u 502 Ashe と実行した後、idコマンドで確認しました。 ユーザ:Ashe グループ:Ashe ユーザ、グループ:id502(idコマンド確認、/etc/passwd確認) 「グループ名Ashe、グループ番号も、ユーザidと同じ502と作成される」という 私の認識に間違いないでしょうか? また、「ユーザとグループ、同じidを指定して作成する場合」、 これ以外にお勧めのコマンド等はありますでしょうか? 【質問2】context=root:system_r:unconfined_t:SystemLow-SystemHighについて idコマンドで下記内容が出力されました。(usermod -G wheel Ashe実行後) 結果:uid=502(Ashe) gid=502(Ashe) 所属グループ=10(wheel),502(Ashe)      context=root:system_r:unconfined_t:SystemLow-SystemHigh 【context=root:system_r:unconfined_t:SystemLow-SystemHigh】内容の意味が分かりません。 ご教授よろしくお願いします。

  • Linux root権限を持つユーザの作成について

    どなたかご存知であれば教えてください。 Linux のsles10sp3にて、root権限を持つユーザーを以下で作成。 #useradd -o -u 0 -g 111 ~ 特に問題なく利用できていました。 しかし、Linuxのsles11sp3で同様にroot権限を持つユーザーを作成したところ おかしな事象が発生するようになりました。 事象はroot権限を持つユーザーを仮にadminという名前で作成したとします。 そのadminでLinuxへログインしてidコマンドを実行すると  uid 0:root → uid 0:admin と表示されるようになり、ファイルのオーナーがrootだったものが一律adminで変わってしまうという事象が発生しました。 そのときは大いに焦りましたが約1時間放置するとなぜか元に戻ります。 suseのバージョンがあがってLinuxのユーザー管理で仕様が変更されておりますでしょうか? どなたかご存知でしたらご教授頂きたく、よろしくお願い致します。

  • ユーザー作成/削除をするシェルスクリプト

    とある理由によってWeb上からLinuxユーザーやMySQLデータベースなどを追加できるようにしたいのですが、 PHPなどの言語からシェルスクリプトを呼び出す方法は知っています。 ユーザー作成をするシェルスクリプトは、 普通にuseraddや、userdelでよろしいのでしょうか? あとuseraddでユーザー名を入力し、パスワードを聞かれずに 一発でユーザーが作成できるオプションがあれば教えてください。 userdelやcreate databaseも同じです。

  • Apache2実行ユーザでLinuxディレクトリへのアクセス制御をするには?

    Apache2・Tomcatを使用したWebアプリケーションよりLinuxOS(CentOS4.4)内の特定のディレクトリのファイル一覧を取得また特定ユーザにのみそのディレクトリ内へのファイルの書込みを許可するというようなアプリケーションを作成中です。またこのアプリケーションのユーザ以外は上記ディレクトリへのアクセス許可を与えないようにしたいと思っています。そこでApache2の実行ユーザと同ユーザによってLinuxOS内の該当ディレクトリにパーミッションを設定すれば実現できるのではと思い自分なりに設定してみたのですがうまくいきません。 クライアントとしてブラウザからApache2に接続したPCはLinux上ではApache2の実行ユーザとして認識されないのでしょうか? Apache2の実行ユーザはhttpd.confのUser nobody Group nobodyとなっているところを任意のユーザに変更しました。 User apa01 Group apa01(ここではapa01とします)Linux内にも同名のユーザ・グループを追加します。 LinuxOSのユーザはapa01(上記)とlxuserの2人がいるとします。 該当ディレクトリのパーミッションは d rwxr-x--- apa01 apa01 該当ディレクトリ名 とします。 これによりapa01と認識されている?と思われるwebアプリケーションのクライアントPCからは該当ディレクトり内のファイルを取得できました。ここでパーミッションをd rwxr-x--- lxuser lxuserと変更します。すると思惑ではWebアプリケーションのクライアントからはファイルの一覧が取得できなくなるはずでしたがしっかり取得してしまいます。ひょっとして・・と思いApache2のhttpd.confのUser Groupを変更してもしっかり取得してしまいます。 なにか考えが根本的に違っているのでしょうか? 長々と書きましたがもっと違う方法があるようでしたら是非ともご教授願えませんでしょうか?よろしくお願いいたします。

  • MySQLの起動ユーザ

    よろしくお願いします。 OS:Redhat Enterprise Linux 6 DB:MySQL5.6 OSでrootで作業をしており、MySQLをrpmパッケージからインストールすると、 実行ユーザがrootになってしまうことを危惧しています。 サービスをrootで起動することはセキュリティ上 望ましくない、と聞きました。 別途「mysql」というユーザを作成しました。 このmysqlユーザをサービスの起動ユーザとしたいのですが、 どういった手順でそれを実施すれば良いでしょうか?。

    • ベストアンサー
    • MySQL
  • ユーザーについておしえてください

    Red Hat7.2でPerlとProFTPDとapacheを入れました。 useraddで作ったユーザーに、ユーザーによってそれぞれいろいろ制限を与えたいのですが… 1. /home/ユーザー名 に作られるディレクトリの容量制限(ディスクスペース:ジオシティなら12MBまでのような) 2. telnetでログインしたときのコマンド制限(許可してもいいだろうと思われるコマンドと、これは許可しない方がいいコマンド) 3. 第3者であるユーザーからは見えると好ましくないLinuxのディレクトリの制限 4. ユーザーによってCGIを許可するかどうか 以上についてどうすればいいか詳しく教えて頂けないでしょうか?経験者の方の意見は参考にさせて頂きます。

  • MYSQLのユーザ変更

    質問させて頂きます。 よろしくお願いします。 MYSQL5.1をインストールしました。 任意のユーザを一人作成しました。 ルートユーザでログインし、作成したユーザに変更する方法が分かりません。 mysqlのコマンドプロンプトがmysql>のままで、 C:\mysql\bin>に変更できないので、 mysql -u ユーザ名 -p データベース名 のコマンドも使用できません。 C:\mysql\bin>に変更する方法はあるのでしょうか? また、どうやってユーザをチェンジするのでしょうか? よろしくお願いします。

    • ベストアンサー
    • MySQL
  • MySQLでmysqlコマンドが使えなくて困っています。

    MySQLでmysqlコマンドが使えなくて困っています。 知人にサーバーの設定を頼まれて構築しているのですがmysqlコマンドを実行すると mysql: command not found と言われてしまい困っています。 今回CentOSで初めて構築するのですが、何かコマンドを使えるように設定が必要なのでしょうか? 初歩的なことですが宜しくお願いいたします。

    • ベストアンサー
    • MySQL
  • mod_auth_mysqlについて

    mod_auth_mysql を導入したいのですがどうもうまく行きません。 参考ページ内に記載されている手順で行いました。 しかし、httpd.confの #LoadModule auth_mysql_module libexec/mod_auth_mysql.so を LoadModule auth_mysql_module libexec/mod_auth_mysql.so に変更して apachectl configtestを実行すると Syntax error on line 213 of /usr/local/apache/conf/httpd.conf: Cannot load /usr/local/apache/libexec/mod_auth_mysql.so into server: /usr/local/apache/libex ec/mod_auth_mysql.so: undefined symbol: mysql_connect というエラーが出力されます。 libexec/mod_auth_mysql.soも存在していますし、 mod_auth_mysqlをコンパイルする際も mysql.hなどのライブラリも存在しています。 mysql-4.1.15 apache 1.3.34 mod_auth_mysql-3.2 Redhat 8.0 どこでひっかかっているのでしょうか。 参考ページ:http://www.y-min.or.jp/~nob/Linux/apache-mysql.html

  • Linuxでログインしないユーザーを作成した場合

    Linuxでログインさせたくないユーザーを useradd -s /sbin/nologin XXX の様にして作成した場合、 /home/XXX 以下に .bashrc, .bash_profile, .bash_logout 等のファイルが作成されましたが、 元々シェルは使わせたくないので削除しても問題ないでしょうか?? また、もし問題がないのであれば、 始めから.bash* のファイルを作成させないようなユーザー追加方法はあるのでしょうか? ご教授ねがいまする。