星野/Ubuntu
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
[[星野]]
*UbuntuでLAMP鯖構築 [#t68c0933]
#contents
*鯖機 [#m6418feb]
**HP ProLiant ML115 [#e920f8f4]
-http://www26.atwiki.jp/ml115_g5/pages/11.html
-NTT-Storeで16800円のところ、週末まで3000円引きであせってポチった。
-モニタが自動認識しない。なぜ?
--結局800×640までしか表示できない。あきらめた。
*構築 [#y05a13a9]
**Ubuntu [#na59b72c]
-Ubuntu 8.04 日本語ローカライズドDesktop版
--ラウンジにあった雑誌の付録。
--鯖ようなのに、なんでDesktop入れたのかは秘密。
--aptが使えるディストリビューションがよかったからこれ。
**SSH [#od0a03de]
-普通にopensshをいれてみる。
--sudo apt-get install openssh-server
**Apache2 [#a3e8b918]
-Webサーバ
--sudo apt-get install apache2
**MySQL [#ycad7d42]
-DBサーバ
--sudo apt-get install mysql-server
**PHP [#c952458d]
-サーバサイドで動作するスクリプト言語。
--sudo apt-get install php5
-MySQLとの連携
--sudo apt-get install php5-mysql
-Apache2用のモジュール
--sudo apt-get install libapache2-mod-php5
-モジュール設定後再起動
--$ sudo a2enmod php5
--$ sudo /etc/init.d/apache2 restart
**FTP [#x9c126c2]
-Proftpd
--$ sudo apt-get install proftpd
-設定
--/etc/proftpd/proftpd.conf
ユーザログイン高速化
IdentLookups off
UseReverseDNS off
管理者以外は上位ディレクトリのアクセス権限を与えない
DefaultRoot ~ !admin
**簡単セットアップ [#j9a88cc9]
-$ sudo tasksel
--LAMPを選ぶと、勝手にスタックインストールしてくれるらしい。
**Mail [#g82b5967]
-Postfix
--phpからメールを送れないので、入れてみた。
--$ sudo apt-get install postfix
---対話式の設定ウィンドみたいなのが出てくる
---サテライトを選択し、外部のSMTPを使う設定に。
---DDNSでのサイト運営なので、送れないエラーがあったから:Outbound Port 25 Blocking (OP25B)
-設定
--/etc/postfix/main.cf
*運用 [#lf5282cc]
**Ubuntu [#mdf932d2]
***アップデート [#p528a154]
-更新データ取得
--sudo apt-get update
-更新
--sudo apt-get upgrade
-保留も更新
--sudo apt-get dist-upgrade
***サービス確認 [#h183dafb]
-ポート確認
--netstat -untap
---開いているポートとか状態とかみれる。
***セキュリティ [#g7857e55]
-host
--/etc/host.allow
--/etc/host.deny
---それぞれ、許可ホストと拒否ホストを設定できる
-iptable
--まだ。
***バグ [#ba4e1f50]
-/etc/hosts
--バグがあるらしい
--127.0.1.1というのができてしまうので、修正する必要がある
---127.0.0.1 localhost hostname
--という風に変更する。
***ユーザ [#dca59c21]
-追加
--sudo useraddd -m -g100 -s/bin/bash username
---/etc/default/useraddの値が有効にならないのはなぜ?
---gid=100 : users
---シェルはログインが必要なければ/bin/falseにするべき。
--sudo adduser useraname
---こっちはスクリプトで対話式に作ってくれる
-パスワード作成
--sudo passwd username
--作成されるまではログインできない。パスワード聞かれても設定してないもんね。
-確認
--id username
--more /etc/passwd
***LAN [#vad8d661]
-イーサネットの設定
--/etc/network/interfaces
--設定を有効にする
---$ sudo /etc/init.d/networking restart
-DNSレゾルバ
--/etc/resolv.conf
---search:ホスト名の後に付加されるドメイン名
---namesaver : ネームサーバのアドレス
**SSH [#j3b0a345]
***起動とか [#g4b22138]
-/etc/init.d/ssh [start/restart/stop]
***設定ファイル [#d12fcb59]
-/etc/ssh/sshd_config
-マニュアル
--man 5 sshd_config
-$ sudo /etc/init.d/ssh reload
**Apache2 [#b3ac90d9]
***設定 [#yf09769b]
-/etc/apache2/
--apache2.conf
---だいたいの設定が書いてある
--httpd.conf
--ports.conf
---ポート指定
--conf.d/
---directory_settings
<directory />
Options All # ←CGIとか使えるように
Options -Indexes # ←ディレクトリ一覧表示だけはしないように
AllowOverride All # ←.htaccessで設定上書きできるように
Order allow,deny
allow from all # ←全ホストからアクセス許可
</directory>
---security
ServerTokens ProductOnly # Serverヘッダのバージョン番号表記等をなしに
ServerSignature Off # サーバーが生成するページでバージョン番号等をなしに
--mods-available/
---モジュールの設定をおく
---$ sudo a2enmod modulename
--site-available/
---仮想サイトの設定をおく
---$ sudo cp default my-site
---$ sudo a2dissite default
---$ sudo a2ensite my-site
--URL変換モジュールを有効に
---$ sudo a2en rewrite
---site-available/siteの中の AllowOverride を All に変換する
**MySQL [#b4a9a0eb]
***いじり方 [#b5ff4291]
-sudo mysql --user=root --password=rootpassword
-sudo mysql -u root -p
--これだと、パスワードを聞いてくるから答えるとコンソールに入れる
-mysqladmin -u root password '********'
--パスワード変更可
-再起動
--$ sudo /etc/init.d/mysql restart
-mysql > status
-パスワード再設定
--$ sudo /usr/sbin/mysqld --skip-grant-tables
---パス必要なしで起動、これやると、コンソール返ってこなくなる。
---次は違うコンソールで。
--$ sudo mysql -u root -p
--$ mysql> UPDATE user SET Password=PASSWORD('newpassowrd') WHERE User='root';
--$ mysql> FLUSH PRIVILEGES;
--$ sudo /etc/init.d/mysqld restart
***DB [#k9310074]
-作り方
--$ mysql> create database DBname;
-ユーザ、パス定義
--$ mysql> grant all on DBname.* to 'username'@'localhost' identified by 'password';
-消し方
--$ mysql> drop database DBname;
***設定ファイル [#y9b61f65]
-/etc/mysql/my.cnf
[client]
default-character-set=utf8
[mysqld]
default-character-set=utf8
skip-character-set-client-handshake
**ブログサイト [#g78cb5cd]
-サイト作るのは面倒だし、コンテンツも思い浮かばないからとりあえず、ブログサイト自作。
-http://japan.nucleuscms.org/
終了行:
[[星野]]
*UbuntuでLAMP鯖構築 [#t68c0933]
#contents
*鯖機 [#m6418feb]
**HP ProLiant ML115 [#e920f8f4]
-http://www26.atwiki.jp/ml115_g5/pages/11.html
-NTT-Storeで16800円のところ、週末まで3000円引きであせってポチった。
-モニタが自動認識しない。なぜ?
--結局800×640までしか表示できない。あきらめた。
*構築 [#y05a13a9]
**Ubuntu [#na59b72c]
-Ubuntu 8.04 日本語ローカライズドDesktop版
--ラウンジにあった雑誌の付録。
--鯖ようなのに、なんでDesktop入れたのかは秘密。
--aptが使えるディストリビューションがよかったからこれ。
**SSH [#od0a03de]
-普通にopensshをいれてみる。
--sudo apt-get install openssh-server
**Apache2 [#a3e8b918]
-Webサーバ
--sudo apt-get install apache2
**MySQL [#ycad7d42]
-DBサーバ
--sudo apt-get install mysql-server
**PHP [#c952458d]
-サーバサイドで動作するスクリプト言語。
--sudo apt-get install php5
-MySQLとの連携
--sudo apt-get install php5-mysql
-Apache2用のモジュール
--sudo apt-get install libapache2-mod-php5
-モジュール設定後再起動
--$ sudo a2enmod php5
--$ sudo /etc/init.d/apache2 restart
**FTP [#x9c126c2]
-Proftpd
--$ sudo apt-get install proftpd
-設定
--/etc/proftpd/proftpd.conf
ユーザログイン高速化
IdentLookups off
UseReverseDNS off
管理者以外は上位ディレクトリのアクセス権限を与えない
DefaultRoot ~ !admin
**簡単セットアップ [#j9a88cc9]
-$ sudo tasksel
--LAMPを選ぶと、勝手にスタックインストールしてくれるらしい。
**Mail [#g82b5967]
-Postfix
--phpからメールを送れないので、入れてみた。
--$ sudo apt-get install postfix
---対話式の設定ウィンドみたいなのが出てくる
---サテライトを選択し、外部のSMTPを使う設定に。
---DDNSでのサイト運営なので、送れないエラーがあったから:Outbound Port 25 Blocking (OP25B)
-設定
--/etc/postfix/main.cf
*運用 [#lf5282cc]
**Ubuntu [#mdf932d2]
***アップデート [#p528a154]
-更新データ取得
--sudo apt-get update
-更新
--sudo apt-get upgrade
-保留も更新
--sudo apt-get dist-upgrade
***サービス確認 [#h183dafb]
-ポート確認
--netstat -untap
---開いているポートとか状態とかみれる。
***セキュリティ [#g7857e55]
-host
--/etc/host.allow
--/etc/host.deny
---それぞれ、許可ホストと拒否ホストを設定できる
-iptable
--まだ。
***バグ [#ba4e1f50]
-/etc/hosts
--バグがあるらしい
--127.0.1.1というのができてしまうので、修正する必要がある
---127.0.0.1 localhost hostname
--という風に変更する。
***ユーザ [#dca59c21]
-追加
--sudo useraddd -m -g100 -s/bin/bash username
---/etc/default/useraddの値が有効にならないのはなぜ?
---gid=100 : users
---シェルはログインが必要なければ/bin/falseにするべき。
--sudo adduser useraname
---こっちはスクリプトで対話式に作ってくれる
-パスワード作成
--sudo passwd username
--作成されるまではログインできない。パスワード聞かれても設定してないもんね。
-確認
--id username
--more /etc/passwd
***LAN [#vad8d661]
-イーサネットの設定
--/etc/network/interfaces
--設定を有効にする
---$ sudo /etc/init.d/networking restart
-DNSレゾルバ
--/etc/resolv.conf
---search:ホスト名の後に付加されるドメイン名
---namesaver : ネームサーバのアドレス
**SSH [#j3b0a345]
***起動とか [#g4b22138]
-/etc/init.d/ssh [start/restart/stop]
***設定ファイル [#d12fcb59]
-/etc/ssh/sshd_config
-マニュアル
--man 5 sshd_config
-$ sudo /etc/init.d/ssh reload
**Apache2 [#b3ac90d9]
***設定 [#yf09769b]
-/etc/apache2/
--apache2.conf
---だいたいの設定が書いてある
--httpd.conf
--ports.conf
---ポート指定
--conf.d/
---directory_settings
<directory />
Options All # ←CGIとか使えるように
Options -Indexes # ←ディレクトリ一覧表示だけはしないように
AllowOverride All # ←.htaccessで設定上書きできるように
Order allow,deny
allow from all # ←全ホストからアクセス許可
</directory>
---security
ServerTokens ProductOnly # Serverヘッダのバージョン番号表記等をなしに
ServerSignature Off # サーバーが生成するページでバージョン番号等をなしに
--mods-available/
---モジュールの設定をおく
---$ sudo a2enmod modulename
--site-available/
---仮想サイトの設定をおく
---$ sudo cp default my-site
---$ sudo a2dissite default
---$ sudo a2ensite my-site
--URL変換モジュールを有効に
---$ sudo a2en rewrite
---site-available/siteの中の AllowOverride を All に変換する
**MySQL [#b4a9a0eb]
***いじり方 [#b5ff4291]
-sudo mysql --user=root --password=rootpassword
-sudo mysql -u root -p
--これだと、パスワードを聞いてくるから答えるとコンソールに入れる
-mysqladmin -u root password '********'
--パスワード変更可
-再起動
--$ sudo /etc/init.d/mysql restart
-mysql > status
-パスワード再設定
--$ sudo /usr/sbin/mysqld --skip-grant-tables
---パス必要なしで起動、これやると、コンソール返ってこなくなる。
---次は違うコンソールで。
--$ sudo mysql -u root -p
--$ mysql> UPDATE user SET Password=PASSWORD('newpassowrd') WHERE User='root';
--$ mysql> FLUSH PRIVILEGES;
--$ sudo /etc/init.d/mysqld restart
***DB [#k9310074]
-作り方
--$ mysql> create database DBname;
-ユーザ、パス定義
--$ mysql> grant all on DBname.* to 'username'@'localhost' identified by 'password';
-消し方
--$ mysql> drop database DBname;
***設定ファイル [#y9b61f65]
-/etc/mysql/my.cnf
[client]
default-character-set=utf8
[mysqld]
default-character-set=utf8
skip-character-set-client-handshake
**ブログサイト [#g78cb5cd]
-サイト作るのは面倒だし、コンテンツも思い浮かばないからとりあえず、ブログサイト自作。
-http://japan.nucleuscms.org/
ページ名: