2011年08月10日
EC-CUBE2.11 EC-CUBEとは関係の無いページから商品購入ボタン
EC-CUBEで使われているSmartyでページをカスタマイズするのもいいけれど、BiNDなんかを使って作ったサイトにカートボタンを設置したい。。。
2.4系の場合には、スムーズにいけたんだけど2.11系からはトランザクショントークンの妥当性を検証するようになったので、トランザクショントークンを生成しなければならなくなった。
って訳で、トランザクショントークンの妥当性チェックをなくしちゃいます。
/data/class/helper/SC_Helper_Session.php
▼
function isValidToken()
の202,205行目あたりを
$ret = false;
▼
$ret = true;
に変更してしまいましょう(´∀`*)
あとは、カートボタンを設置したいページに以下を記述。
$token = sha1(uniqid(rand(), true));
$_SESSION[TRANSACTION_ID_NAME] = $token;
print <<< EOF
<form name="form1" id="form1" method="post" action="/shop2/products/detail.php?product_id=◎">
<input type="hidden" name="transactionid" value="{$token}" />
<input type="hidden" name="mode" value="cart" />
<input type="hidden" name="product_id" value="◎" />
<input type="hidden" name="product_class_id" value="●" id="product_class_id" />
<input type="hidden" name="quantity" value="1" />
<input type="image" src="/画像データパス/btn_cartin.jpg" alt="カゴに入れる" />
</form>
EOF;
?>
◎が商品ID
●が規格利用の場合の規格ID
▼
<input type="hidden" name="classcategory_id1" value="■" id="classcategory_id1" />
<input type="hidden" name="classcategory_id2" value="■" id="classcategory_id2" />
上記を指定することで、細かい規格(?)指定も可能。
基本的には、Smartyで出力されたソースをコピペして「product_id」と「transactionid」を入れてあげれば
(;・∀・)ダ、ダイジョウブ…なはず。
本当は、ちゃんとクラスファイルを読み込んで処理しなきゃいけないのだけれど、簡易処理。
* 悪意のある不正な画面遷移を防止するため, 予測困難な文字列を生成して返す.
* 同時に, この文字列をセッションに保存する.
いや、まあ…どんな影響があるかはわからないので、カスタマイズは自己責任で。
ちゃんとお金を払って、「ちゃんとクラスファイルを読み込んで処理」をしてもらったほうがいいですぽ。
2.4系の場合には、スムーズにいけたんだけど2.11系からはトランザクショントークンの妥当性を検証するようになったので、トランザクショントークンを生成しなければならなくなった。
って訳で、トランザクショントークンの妥当性チェックをなくしちゃいます。
/data/class/helper/SC_Helper_Session.php
▼
function isValidToken()
の202,205行目あたりを
$ret = false;
▼
$ret = true;
に変更してしまいましょう(´∀`*)
あとは、カートボタンを設置したいページに以下を記述。
$token = sha1(uniqid(rand(), true));
$_SESSION[TRANSACTION_ID_NAME] = $token;
print <<< EOF
<form name="form1" id="form1" method="post" action="/shop2/products/detail.php?product_id=◎">
<input type="hidden" name="transactionid" value="{$token}" />
<input type="hidden" name="mode" value="cart" />
<input type="hidden" name="product_id" value="◎" />
<input type="hidden" name="product_class_id" value="●" id="product_class_id" />
<input type="hidden" name="quantity" value="1" />
<input type="image" src="/画像データパス/btn_cartin.jpg" alt="カゴに入れる" />
</form>
EOF;
?>
◎が商品ID
●が規格利用の場合の規格ID
▼
<input type="hidden" name="classcategory_id1" value="■" id="classcategory_id1" />
<input type="hidden" name="classcategory_id2" value="■" id="classcategory_id2" />
上記を指定することで、細かい規格(?)指定も可能。
基本的には、Smartyで出力されたソースをコピペして「product_id」と「transactionid」を入れてあげれば
(;・∀・)ダ、ダイジョウブ…なはず。
本当は、ちゃんとクラスファイルを読み込んで処理しなきゃいけないのだけれど、簡易処理。
* 悪意のある不正な画面遷移を防止するため, 予測困難な文字列を生成して返す.
* 同時に, この文字列をセッションに保存する.
いや、まあ…どんな影響があるかはわからないので、カスタマイズは自己責任で。
ちゃんとお金を払って、「ちゃんとクラスファイルを読み込んで処理」をしてもらったほうがいいですぽ。
2011年06月11日
さくらVPSでWebmin ~mb関数が使えない~
phpでmbstring関数が使えない・・・!?((・д・;≡;・ω・))
というかまぁ、webminでphpをインストールすると英語版のphpがインストールされてしまうため、「マルチバイトなんて対応してねぇよ!(屮゜Д゜)屮」・・・って感じらしい。
なので「php-mbstring」モジュールをインストールしなくてはいけない。
Webminでのインストール手順
①「php-mbstring」モジュールのインストール。
・Webmin左側メニューの「システム」→「ソフトウェア パッケージ」→「◎Package from YUM」のチェックボックスをオンにし、「php-mbstring」と入力。インストールボタンをクリックすることでインストールができる。
②念のため、Apacheを再起動。
・Webmin左メニューの「サーバー」→「Apache Webサーバー」→「変更を適用」の文字をクリック。
③mbstringを使えるようにするため、php.iniを編集。
・Webmin左メニューの「その他」→「PHP Configration」→「Edit Manually」で、下記のように変更。
たいていはコメントアウト(;)されただけの状態なので、そこはセミコロン(;)をはずすだけ。
+--------------------------------------------------------------------+
mbstring.language = Japanese
mbstring.internal_encoding = UTF-8
mbstring.http_input = pass
mbstring.http_output = pass
mbstring.encoding_translation = Off
mbstring.detect_order = UTF-8,SJIS,EUC-JP,JIS,ASCII
mbstring.substitute_character = none
+--------------------------------------------------------------------+
④あらためて、Apache再起動(②の手順)をする。
これできっと今日から君も、マルチバイト生活☆・・・って違うか。
というかまぁ、webminでphpをインストールすると英語版のphpがインストールされてしまうため、「マルチバイトなんて対応してねぇよ!(屮゜Д゜)屮」・・・って感じらしい。
なので「php-mbstring」モジュールをインストールしなくてはいけない。
Webminでのインストール手順
①「php-mbstring」モジュールのインストール。
・Webmin左側メニューの「システム」→「ソフトウェア パッケージ」→「◎Package from YUM」のチェックボックスをオンにし、「php-mbstring」と入力。インストールボタンをクリックすることでインストールができる。
②念のため、Apacheを再起動。
・Webmin左メニューの「サーバー」→「Apache Webサーバー」→「変更を適用」の文字をクリック。
③mbstringを使えるようにするため、php.iniを編集。
・Webmin左メニューの「その他」→「PHP Configration」→「Edit Manually」で、下記のように変更。
たいていはコメントアウト(;)されただけの状態なので、そこはセミコロン(;)をはずすだけ。
+--------------------------------------------------------------------+
mbstring.language = Japanese
mbstring.internal_encoding = UTF-8
mbstring.http_input = pass
mbstring.http_output = pass
mbstring.encoding_translation = Off
mbstring.detect_order = UTF-8,SJIS,EUC-JP,JIS,ASCII
mbstring.substitute_character = none
+--------------------------------------------------------------------+
④あらためて、Apache再起動(②の手順)をする。
これできっと今日から君も、マルチバイト生活☆・・・って違うか。
2011年06月07日
kcfinderで画像のアップロードができないorz
ckeditorにkcfinderを組み込んでみた。
xamppの開発環境では画像のアップロードに成功するのに、さくらVPS(centos)で構築したサーバー環境では画像がアップロードできない。。
状況:
なにもアップロードされていない状態→通常の手順通りアップロードを進めてもサーバー上に保存されない。
エラーメッセージもなし。
FFFTPを使ってuploadフォルダに画像を置き、「サーバーブラウザ」画面を表示。
→「原因不明のエラーです。(Unknown error.)」と表示され、操作不可。
画像(jpg、png、gifなど)以外のファイル(pdf)をアップロード
→問題なし。
・・・`、、
・・・`、。
・・・そぉいえばkcfinderってアップロードしたときにGDモジュールでサムネイルを生成しているみたいだけど、GDモジュールって入れたkk・・・・・・・
解決策:
GDモジュールをインストール。
webminを使っているなら、メニューの「ソフトウェアパッケージ」→「◎Package from YUM」にチェックして「php-gd」(ピーエイチピー ハイフン ジーディー)と入力→「インストール」ボタンでインストールができる。 続きを読む
xamppの開発環境では画像のアップロードに成功するのに、さくらVPS(centos)で構築したサーバー環境では画像がアップロードできない。。
状況:
なにもアップロードされていない状態→通常の手順通りアップロードを進めてもサーバー上に保存されない。
エラーメッセージもなし。
FFFTPを使ってuploadフォルダに画像を置き、「サーバーブラウザ」画面を表示。
→「原因不明のエラーです。(Unknown error.)」と表示され、操作不可。
画像(jpg、png、gifなど)以外のファイル(pdf)をアップロード
→問題なし。
・・・`、、
・・・`、。
・・・そぉいえばkcfinderってアップロードしたときにGDモジュールでサムネイルを生成しているみたいだけど、GDモジュールって入れたkk・・・・・・・
解決策:
GDモジュールをインストール。
webminを使っているなら、メニューの「ソフトウェアパッケージ」→「◎Package from YUM」にチェックして「php-gd」(ピーエイチピー ハイフン ジーディー)と入力→「インストール」ボタンでインストールができる。 続きを読む
2011年04月27日
さくらVPSでWebmin ~phpでmysqlを使う~
8 ぷらすあるふぁ.phpでmysql接続関数を使いたい。
phpで「mysql_connect」関数を使うための設定。
「php_mysql.dll」をインストールしなくてはphpでmysqlへ接続するための関数が使えません。
「Fatal error: Call to undefined function mysql_connect()」なんていうエラーメッセージが出る場合なんてのは、そのせいですね~
Webminの画面からインストールする手順
①[システム]→[ソフトウェアパッケージ]→[Package from YUM]左側のラジオボタンをチェックし、テキストボックスに[php-mysql]と入力。
(スペルミスが不安な方は、[Browse YUM ..]から検索してみてもおk)
②[インストール]ボタンからインストール開始。
※関連モジュールとして、php-pdoも一緒にインストールしてくれるようです。
「php_mysql.dll」がインストールできたかどうかの確認。
phpinfoを参照し、「mysql」の項目があがっていれば大丈夫。きっと。
phpinfoの確認手順
手順その1~phpinfoをブラウザで確認~
下の項目を書いたファイルをFFFTPなどでアップする。(例:index.php)
+--------------------------------------------------------------------+
<?php phpinfo(); ?>
+--------------------------------------------------------------------+
手順その2~Webminで確認~
①webmin画面左メニュー[システム]→[ソフトウェア パッケージ]
②[パッケージの検索]で「php-mysql」と検索。HITすればおk。・・・のはず。
※ちなみに、各Webminモジュール・ソフトウェアのアンインストールも、
このソフトウェアパッケージの画面からできる。
phpで「mysql_connect」関数を使うための設定。
「php_mysql.dll」をインストールしなくてはphpでmysqlへ接続するための関数が使えません。
「Fatal error: Call to undefined function mysql_connect()」なんていうエラーメッセージが出る場合なんてのは、そのせいですね~
Webminの画面からインストールする手順
①[システム]→[ソフトウェアパッケージ]→[Package from YUM]左側のラジオボタンをチェックし、テキストボックスに[php-mysql]と入力。
(スペルミスが不安な方は、[Browse YUM ..]から検索してみてもおk)
②[インストール]ボタンからインストール開始。
※関連モジュールとして、php-pdoも一緒にインストールしてくれるようです。
「php_mysql.dll」がインストールできたかどうかの確認。
phpinfoを参照し、「mysql」の項目があがっていれば大丈夫。きっと。
phpinfoの確認手順
手順その1~phpinfoをブラウザで確認~
下の項目を書いたファイルをFFFTPなどでアップする。(例:index.php)
+--------------------------------------------------------------------+
<?php phpinfo(); ?>
+--------------------------------------------------------------------+
手順その2~Webminで確認~
①webmin画面左メニュー[システム]→[ソフトウェア パッケージ]
②[パッケージの検索]で「php-mysql」と検索。HITすればおk。・・・のはず。
※ちなみに、各Webminモジュール・ソフトウェアのアンインストールも、
このソフトウェアパッケージの画面からできる。
2011年04月25日
さくらVPSでWebmin ~サーバー接続が遅い~
FTPサーバーやWebサーバーを立ててみたものの、接続に時間がかかる・・・
っていうことがきっとあるはず。
iptables(ファイアーウォール)の設定が厳しすぎるっていうことがあるかもしれません。
iptablesの設定をちゃんとしているなら、パケットフィルタリングのデフォルトのアクションを「破棄(DROP)」にして、必要なパケット・ポートのみ開いているはず。セキュリティの基本ですね。
でも、パケットを通すたびに認証をしてしまっていては時間はかかりますょね。
なので回避策としてこれ
セッション確立後のパケット疎通を許可する。
①Webminでログインします。
①[ネットワーク]→[Linuxファイヤウォール]→[ルールを追加する]ボタンで、設定画面を開きます。
②各項目を設定する
・[実行するアクション]で[許可]のラジオボタンにチェック◎。
・[接続状態]のプルダウンを[等しい]にし、「確立した接続(ESTABLISHED)」「既存の接続に関係している(RELATED)」を選択状態にする。
※Ctrlキーを押しながらクリックすれば複数選択できます。
③[作成]ボタンでルールリスト画面に戻る。
④[設定を適用する]ボタンを押し、完了。
INPUTやOUTPUT、それぞれおんなじようなことをするとおkだと思います。
接続を試して、前より接続時間が変わっているか確認してみましょう。
っていうことがきっとあるはず。
iptables(ファイアーウォール)の設定が厳しすぎるっていうことがあるかもしれません。
iptablesの設定をちゃんとしているなら、パケットフィルタリングのデフォルトのアクションを「破棄(DROP)」にして、必要なパケット・ポートのみ開いているはず。セキュリティの基本ですね。
でも、パケットを通すたびに認証をしてしまっていては時間はかかりますょね。
なので回避策としてこれ
セッション確立後のパケット疎通を許可する。
①Webminでログインします。
①[ネットワーク]→[Linuxファイヤウォール]→[ルールを追加する]ボタンで、設定画面を開きます。
②各項目を設定する
・[実行するアクション]で[許可]のラジオボタンにチェック◎。
・[接続状態]のプルダウンを[等しい]にし、「確立した接続(ESTABLISHED)」「既存の接続に関係している(RELATED)」を選択状態にする。
※Ctrlキーを押しながらクリックすれば複数選択できます。
③[作成]ボタンでルールリスト画面に戻る。
④[設定を適用する]ボタンを押し、完了。
INPUTやOUTPUT、それぞれおんなじようなことをするとおkだと思います。
接続を試して、前より接続時間が変わっているか確認してみましょう。
2011年04月22日
さくらVPSでWebmin ~mysqlの設定~
8.MySQLの設定
インストールが完了しても設定ができてなければうまく使えないですょね、はい(´・ω・`)
centosサーバーを再起動したときもmysqlを自動的に起動する設定。
①webmin画面左メニューの[システム]→[起動およびシャットダウン]。
②[mysqld]にチェックを入れ、[選択したものをブート時に開始する]ボタンをクリック。
(※画面を右はじまで寄せないとボタンが見えません・・・)
Mysqlの管理パスワードを設定。
初期状態ではroot パスワードは空白のため、だれでも root ユーザとして
パスワードなしで接続でき、すべての権限を得られちゃうんだって。
①webmin画面左メニューの[サーバー]→[MySQL データベース サーバ]。
②[管理パスワードの変更]で「新しいパスワード」と「パスワードの確認」に同じものを2回入力し、完了。
root(管理者)ユーザーに対してのパスワードが設定され、匿名ユーザーの権限がなくなります。
ユーザーごとにmysqlへのアクセス制限をかける。
「参照はできるけどDBへの追加・削除はできないユーザー」とかまぁ、いろいろやりたいときにどうぞ。
①webmin画面左メニューの[サーバー]→[MySQL データベース サーバ]。
②[グローバル オプション]メニューの[ユーザの許可]。
※)管理パスワードを設定している状態ならば、
rootユーザーのローカルからの接続->なんでもできる、
匿名ユーザーのローカルからの接続->なーんもできない、
って状態になっているかと思います。
③root以外のユーザーに新しく操作権限を設定する場合、[新規ユーザを作成]の文字をクリックし、設定をする。
***解説*****
ユーザ名:ラジオボタンにチェックを入れ、テキストボックスにユーザー名を入力。
パスワード:[設定先..]にチェックを入れ、その右側のテキストボックスにそのままパスワードを入力。
ホスト:どこからでも接続したいなら[任意]、接続元を制限したいなら右側を選択。
IPアドレスなりホスト名なり、好きに入力するがぃぃよ・・・!
許可:許可したい項目を選択。
まぁ、わかるとは思いますが、CtrlキーとかShiftキーとかで複数選択できます。
Required certificate type:接続証明書の種類。SSLとかX509とかあるっぽい。
通信を暗号化するばあいの設定だが、かわりに処理が遅くなる原因にもなる。
なのでデフォルトでは「None」。
△△注意事項△△
[データベースの許可]の画面を見るとわかりますが、mysqlはデフォルトの設定で、「test」もしくは「test_」の名前で始まるデータベースは匿名ユーザーを許可するようになっています。
招かれざるお客さんからそのデータベースに接続されても困るので、デフォルトで作成されている「test」という名のデータベースを削除するか、[データベースの許可]の設定を変更した方がいいかもですね。
インストールが完了しても設定ができてなければうまく使えないですょね、はい(´・ω・`)
centosサーバーを再起動したときもmysqlを自動的に起動する設定。
①webmin画面左メニューの[システム]→[起動およびシャットダウン]。
②[mysqld]にチェックを入れ、[選択したものをブート時に開始する]ボタンをクリック。
(※画面を右はじまで寄せないとボタンが見えません・・・)
Mysqlの管理パスワードを設定。
初期状態ではroot パスワードは空白のため、だれでも root ユーザとして
パスワードなしで接続でき、すべての権限を得られちゃうんだって。
①webmin画面左メニューの[サーバー]→[MySQL データベース サーバ]。
②[管理パスワードの変更]で「新しいパスワード」と「パスワードの確認」に同じものを2回入力し、完了。
root(管理者)ユーザーに対してのパスワードが設定され、匿名ユーザーの権限がなくなります。
ユーザーごとにmysqlへのアクセス制限をかける。
「参照はできるけどDBへの追加・削除はできないユーザー」とかまぁ、いろいろやりたいときにどうぞ。
①webmin画面左メニューの[サーバー]→[MySQL データベース サーバ]。
②[グローバル オプション]メニューの[ユーザの許可]。
※)管理パスワードを設定している状態ならば、
rootユーザーのローカルからの接続->なんでもできる、
匿名ユーザーのローカルからの接続->なーんもできない、
って状態になっているかと思います。
③root以外のユーザーに新しく操作権限を設定する場合、[新規ユーザを作成]の文字をクリックし、設定をする。
***解説*****
ユーザ名:ラジオボタンにチェックを入れ、テキストボックスにユーザー名を入力。
パスワード:[設定先..]にチェックを入れ、その右側のテキストボックスにそのままパスワードを入力。
ホスト:どこからでも接続したいなら[任意]、接続元を制限したいなら右側を選択。
IPアドレスなりホスト名なり、好きに入力するがぃぃよ・・・!
許可:許可したい項目を選択。
まぁ、わかるとは思いますが、CtrlキーとかShiftキーとかで複数選択できます。
Required certificate type:接続証明書の種類。SSLとかX509とかあるっぽい。
通信を暗号化するばあいの設定だが、かわりに処理が遅くなる原因にもなる。
なのでデフォルトでは「None」。
△△注意事項△△
[データベースの許可]の画面を見るとわかりますが、mysqlはデフォルトの設定で、「test」もしくは「test_」の名前で始まるデータベースは匿名ユーザーを許可するようになっています。
招かれざるお客さんからそのデータベースに接続されても困るので、デフォルトで作成されている「test」という名のデータベースを削除するか、[データベースの許可]の設定を変更した方がいいかもですね。
2011年04月18日
さくらVPSでWebmin ~mysqlのアンインストール~
7 ぷらすあるふぁ.Mysqlの削除
からmysqlインストールをしたとき、なぜかx86_64とi386向けの2種類が同時にインストールされてしまい、
依存関係がどうのこうので削除できなくなる。
なので、どうしても削除したい場合はコマンドからむりやり削除。
①さくらVPSコントロールパネル(https://secure.sakura.ad.jp/vpscontrol/)にログイン。
②[▷ リモートコンソール]から下記コマンドを打つべし!
+--------------------------------------------------------------------+
[root@ドメイン名 lib]# yum remove mysql ←mysql削除コマンド
Loaded plugins: fastestmirror
Setting up Remove Process
Resolving Dependencies
--> Running transaction check
---> Package mysql.i386 0:5.0.77-4.el5_5.4 set to be erased
---> Package mysql.x86_64 0:5.0.77-4.el5_5.4 set to be erased
--> Finished Dependency Resolution
Dependencies Resolved
=======================================================
Package Arch Version Repository Size
=======================================================
Removing:
mysql i386 5.0.77-4.el5_5.4 installed 7.9 M
mysql x86_64 5.0.77-4.el5_5.4 installed 8.1 M
Transaction Summary
=======================================================
Remove 2 Package(s)
Reinstall 0 Package(s)
Downgrade 0 Package(s)
Is this ok [y/N]: y ←「y」を入力し、エンター。
Exiting on user Command
Complete!
+--------------------------------------------------------------------+
これで削除完了。
からmysqlインストールをしたとき、なぜかx86_64とi386向けの2種類が同時にインストールされてしまい、
依存関係がどうのこうので削除できなくなる。
なので、どうしても削除したい場合はコマンドからむりやり削除。
手順はこちら
①さくらVPSコントロールパネル(https://secure.sakura.ad.jp/vpscontrol/)にログイン。
②[▷ リモートコンソール]から下記コマンドを打つべし!
+--------------------------------------------------------------------+
[root@ドメイン名 lib]# yum remove mysql ←mysql削除コマンド
Loaded plugins: fastestmirror
Setting up Remove Process
Resolving Dependencies
--> Running transaction check
---> Package mysql.i386 0:5.0.77-4.el5_5.4 set to be erased
---> Package mysql.x86_64 0:5.0.77-4.el5_5.4 set to be erased
--> Finished Dependency Resolution
Dependencies Resolved
=======================================================
Package Arch Version Repository Size
=======================================================
Removing:
mysql i386 5.0.77-4.el5_5.4 installed 7.9 M
mysql x86_64 5.0.77-4.el5_5.4 installed 8.1 M
Transaction Summary
=======================================================
Remove 2 Package(s)
Reinstall 0 Package(s)
Downgrade 0 Package(s)
Is this ok [y/N]: y ←「y」を入力し、エンター。
Exiting on user Command
Complete!
+--------------------------------------------------------------------+
これで削除完了。
2011年04月16日
さくらVPSでWebmin ~mysqlのインストール~
7.MySQLをインストール
WebminでMysqlのインストールをする手順。
①webmin画面左メニューの[Un-used Modules]→[MySQL データベース サーバ]。
②mysqlのモジュールがインストールされていないという内容のエラーメッセージが出てくるので、
英文中の「Click here」をクリックし、mysqlモジュールのインストール開始。
③「.. install complete.」のメッセージが表示されインストールが完了したら、
「mysqlデータベースサーバーへ戻る」でmysqlのメイン画面へ。
④「mysqlサーバーを起動」ボタンを押し、起動する。
WebminでMysqlのインストールをする手順。
①webmin画面左メニューの[Un-used Modules]→[MySQL データベース サーバ]。
②mysqlのモジュールがインストールされていないという内容のエラーメッセージが出てくるので、
英文中の「Click here」をクリックし、mysqlモジュールのインストール開始。
③「.. install complete.」のメッセージが表示されインストールが完了したら、
「mysqlデータベースサーバーへ戻る」でmysqlのメイン画面へ。
④「mysqlサーバーを起動」ボタンを押し、起動する。
2011年04月15日
さくらVPSでWebmin ~Vsftpdの設定をいろいろ変更したい~
6.Vsftpdのカスタマイズ
デフォルトのままで使ってもぃぃとは思うんですが、
まぁ、セキュリティ的に?使い勝手をよくするため?とかで
カスタマイズする方法φ(..)メモメモ
Webmin画面左メニュー[サーバ]→[Vsftpd]をクリックし、Vsftpd画面から設定変更します。
とはいえ、すべての設定項目がカバーされているわけではないので、
設定ファイルをじかに書きなおすこともあります。
いろいろなカスタマイズの手順
anonymous(匿名)ログインを無効にする。
anonymousでログインできるということは、IPアドレスさえ知っていれば
IDやパスワードなしで誰でもFTP接続できてしまうということです。
・[Anonymous FTP]→[Anonymous enable:]のラジオボタンを[No]に。
ローカルユーザーのログインを有効にする。
centosで作られたユーザーアカウント・パスワードでFTP接続できるようにする。
・[Local User]→[Enable local users:]のラジオボタンを[Yes]に。
FTPでファイルの書き込みを許可する。
FFFTPなどのクライアントソフトでアクセスしたときに、書き込みできるようにする。
・[Local User]→[Local users can write:]のラジオボタンを[Yes]に。
アスキーモードでダウンロード、アップロードできるようにする。
[Manual entries]で、Vsftpdのconf(設定)ファイルを編集します。
デフォルトでは#でコメントアウトされているので、#の文字を消します。
変更後↓
+--------------------------------------------------------------------+
# ASCII mangling is a horrible feature of the protocol.
ascii_upload_enable=YES
ascii_download_enable=YES
+--------------------------------------------------------------------+
バナーの設定をする。
FFFTPなどのクライアントソフトで接続できた場合に、なにげに表示されている
メッセージです。
・[Generally]→[Welcome banner text:]にメッセージを入力します。
デフォルトではオフになっているのですが、
confファイルでは[Welcome to blah FTP service.]がコメントアウトされています。
セキュリティ的に?「Unknown.」など、接続したかどうかよくわからない
メッセージを設定するところもあるようです。
root(管理者)権限を使えるユーザーを制限する。
この設定をすると、指定ユーザー以外はホームディレクトリより上の階層へ
移動できなくなります。
共用サーバーのように、「Web公開領域へのアップロード・ダウンロードはできても
システムファイルを触ってほしくない」という場合にいいかもしれません。
その場合は、ApacheでWeb公開領域をそのユーザーのホームディレクトリにする、
などの設定が必要になります。
・[Local User]→[Chroot Local users:]をYesに。
パッシブモードで接続できるようにする。
パッシブモードを有効にし、ついでに最小・最大ポート番号を制限します。
・[Manual entries]で、Vsftpdのconf(設定)ファイルを開き、下記の項目を追加します。
+--------------------------------------------------------------------+
#passive
pasv_enable=YES
pasv_min_port=10000 ←ポート最大値(あくまで設定例です。
pasv_max_port=10100 ←ポート最小値(あくまで設定例です。
+--------------------------------------------------------------------+
文字の後に空白(スペース)が入ると設定がうまく動かない場合があるみたいなので注意。
Vsftpdのカスタマイズはこんな感じでしょうか。
設定が完了したら[save changes]で設定を保存し、
[Restart Vsftpd Server]でVsftpdを再起動することを忘れずに!
デフォルトのままで使ってもぃぃとは思うんですが、
まぁ、セキュリティ的に?使い勝手をよくするため?とかで
カスタマイズする方法φ(..)メモメモ
Webmin画面左メニュー[サーバ]→[Vsftpd]をクリックし、Vsftpd画面から設定変更します。
とはいえ、すべての設定項目がカバーされているわけではないので、
設定ファイルをじかに書きなおすこともあります。
いろいろなカスタマイズの手順
anonymous(匿名)ログインを無効にする。
anonymousでログインできるということは、IPアドレスさえ知っていれば
IDやパスワードなしで誰でもFTP接続できてしまうということです。
・[Anonymous FTP]→[Anonymous enable:]のラジオボタンを[No]に。
ローカルユーザーのログインを有効にする。
centosで作られたユーザーアカウント・パスワードでFTP接続できるようにする。
・[Local User]→[Enable local users:]のラジオボタンを[Yes]に。
FTPでファイルの書き込みを許可する。
FFFTPなどのクライアントソフトでアクセスしたときに、書き込みできるようにする。
・[Local User]→[Local users can write:]のラジオボタンを[Yes]に。
アスキーモードでダウンロード、アップロードできるようにする。
[Manual entries]で、Vsftpdのconf(設定)ファイルを編集します。
デフォルトでは#でコメントアウトされているので、#の文字を消します。
変更後↓
+--------------------------------------------------------------------+
# ASCII mangling is a horrible feature of the protocol.
ascii_upload_enable=YES
ascii_download_enable=YES
+--------------------------------------------------------------------+
バナーの設定をする。
FFFTPなどのクライアントソフトで接続できた場合に、なにげに表示されている
メッセージです。
・[Generally]→[Welcome banner text:]にメッセージを入力します。
デフォルトではオフになっているのですが、
confファイルでは[Welcome to blah FTP service.]がコメントアウトされています。
セキュリティ的に?「Unknown.」など、接続したかどうかよくわからない
メッセージを設定するところもあるようです。
root(管理者)権限を使えるユーザーを制限する。
この設定をすると、指定ユーザー以外はホームディレクトリより上の階層へ
移動できなくなります。
共用サーバーのように、「Web公開領域へのアップロード・ダウンロードはできても
システムファイルを触ってほしくない」という場合にいいかもしれません。
その場合は、ApacheでWeb公開領域をそのユーザーのホームディレクトリにする、
などの設定が必要になります。
・[Local User]→[Chroot Local users:]をYesに。
パッシブモードで接続できるようにする。
パッシブモードを有効にし、ついでに最小・最大ポート番号を制限します。
・[Manual entries]で、Vsftpdのconf(設定)ファイルを開き、下記の項目を追加します。
+--------------------------------------------------------------------+
#passive
pasv_enable=YES
pasv_min_port=10000 ←ポート最大値(あくまで設定例です。
pasv_max_port=10100 ←ポート最小値(あくまで設定例です。
+--------------------------------------------------------------------+
文字の後に空白(スペース)が入ると設定がうまく動かない場合があるみたいなので注意。
Vsftpdのカスタマイズはこんな感じでしょうか。
設定が完了したら[save changes]で設定を保存し、
[Restart Vsftpd Server]でVsftpdを再起動することを忘れずに!
2011年04月12日
さくらVPSでWebmin ~Vsftpdのインストール~
5.Vsftpdのインストール
FTPサーバーとして接続するために、VSFTPDをインストール。
流れとしては、
Webminモジュールを追加→Vsftpdモジュールを追加→とりあえず初期設定。
具体的なカスタマイズについては次回★ミ
まずは、Vsftpdをで管理するためのモジュールをインストールする手順
①[Webmin]→[Webmin 設定]→[Webmin モジュール]。
②[サードパーティ製モジュール]の◎ラジオボタンにチェック。
[...]をクリックし、「vsftpd」を選択。
③自動的にURLがテキストボックスに入力されるので、
そのまま[インストール]ボタンからインストールを開始。
※)まだVsftpd自体のモジュールがインストールされていないので、Vsftpdのメニュー画面を開いても[Could not find the vsftpd.conf file. Please check your Module Configuration.]のエラーが出る。
Vsftpdのモジュールをインストールする手順
①[システム]→[ソフトウェア パッケージ]→[Package from YUM]の左側の◎ラジオボタンをチェック。
②右側のテキストボックスに「vsftpd」と入力するか、[Browse YUM ..]でvsftpdを検索し、選択。
③「インストール」ボタンからインストールを実行。
とりあえず初期設定
①[Vsftpd]の画面を開き、[Start Vsftpd Server]をクリックしてVsftpdを起動しておく。
②設定ファイルの位置がずれているためにまだ英文のエラーが出たままなので、
英文中の[Module Configuration.]をクリック。
以下の2か所を修正する。
[The path and filename to vsftpd.conf]
* 変更前:[/etc/vsftpd.conf]→変更後:[/etc/vsftpd/vsftpd.conf]。
[Path where the virtual user will be stored]
* 変更前:[/etc/vsftpd/vsftpd_user_conf]→変更後:[/etc/vsftpd/user_list]。
これで、とりあえずcentosで作成したローカルユーザーでのログインができるようになる。ハズ。。
△△注意事項△△
FFFTPなどで接続する場合、root(管理者)ユーザーではなく「0.サーバー基本設定」などの方法で作成した一般ユーザーを使うことをお勧めします。
ファイルのアクセス権限にもよりますが、書き込みするフォルダは、FTPアクセスするユーザーの所有に変更しておかないと書き込めなかったりします。
セキュリティ的な観点からいくと、「FTPサーバーを開けっ放しにしたまま」ってのはあまりよろしくないので・・・あらかたのファイルを置き終わってサーバー構築が完了したら、「Stop Vsftpd Server」で停止することをオススメします。
FTPサーバーとして接続するために、VSFTPDをインストール。
流れとしては、
Webminモジュールを追加→Vsftpdモジュールを追加→とりあえず初期設定。
具体的なカスタマイズについては次回★ミ
まずは、Vsftpdをで管理するためのモジュールをインストールする手順
①[Webmin]→[Webmin 設定]→[Webmin モジュール]。
②[サードパーティ製モジュール]の◎ラジオボタンにチェック。
[...]をクリックし、「vsftpd」を選択。
③自動的にURLがテキストボックスに入力されるので、
そのまま[インストール]ボタンからインストールを開始。
※)まだVsftpd自体のモジュールがインストールされていないので、Vsftpdのメニュー画面を開いても[Could not find the vsftpd.conf file. Please check your Module Configuration.]のエラーが出る。
Vsftpdのモジュールをインストールする手順
①[システム]→[ソフトウェア パッケージ]→[Package from YUM]の左側の◎ラジオボタンをチェック。
②右側のテキストボックスに「vsftpd」と入力するか、[Browse YUM ..]でvsftpdを検索し、選択。
③「インストール」ボタンからインストールを実行。
とりあえず初期設定
①[Vsftpd]の画面を開き、[Start Vsftpd Server]をクリックしてVsftpdを起動しておく。
②設定ファイルの位置がずれているためにまだ英文のエラーが出たままなので、
英文中の[Module Configuration.]をクリック。
以下の2か所を修正する。
[The path and filename to vsftpd.conf]
* 変更前:[/etc/vsftpd.conf]→変更後:[/etc/vsftpd/vsftpd.conf]。
[Path where the virtual user will be stored]
* 変更前:[/etc/vsftpd/vsftpd_user_conf]→変更後:[/etc/vsftpd/user_list]。
これで、とりあえずcentosで作成したローカルユーザーでのログインができるようになる。ハズ。。
△△注意事項△△
FFFTPなどで接続する場合、root(管理者)ユーザーではなく「0.サーバー基本設定」などの方法で作成した一般ユーザーを使うことをお勧めします。
ファイルのアクセス権限にもよりますが、書き込みするフォルダは、FTPアクセスするユーザーの所有に変更しておかないと書き込めなかったりします。
セキュリティ的な観点からいくと、「FTPサーバーを開けっ放しにしたまま」ってのはあまりよろしくないので・・・あらかたのファイルを置き終わってサーバー構築が完了したら、「Stop Vsftpd Server」で停止することをオススメします。
2011年04月11日
さくらVPSでWebmin~centosユーザー、グループの管理~
わざわざコマンドを打たなくても、からcentosユーザーやグループの追加・削除・編集ができます。
まぁ便利ー!ΣG(>▽<)
手順はこちら
ユーザの追加
①webminにログインしたら、左メニュー[システム]→[ユーザーおよびグループ]。
②[ローカルユーザー]のタブのままで、「新しいユーザを作成」の文字をクリック。
***解説*****
ユーザ名: ユーザー名を入力。
ユーザID: 自動にするなりなんなり。FFFTPやCyberduckなどで接続すると、所有者としてこのユーザIDが表示されます。
パスワード: 「通常のパスワード」にそのままパスワードを入力しても、ユーザ作成完了後は自動的に暗号化されます。
セカンダリグループ: 所属グループをいくつか設定したいときは、「In Groups」に追加していくっぽい。
グループの管理
①webmin左メニュー[システム]→[ユーザーおよびグループ]。
②[ローカルグループ]のタブからグループを追加するなり、削除するなり、編集するなり・・・(ry
とりあえず、今のところ必要なのはこのくらいでしょーかね。
まぁ便利ー!ΣG(>▽<)
手順はこちら
ユーザの追加
①webminにログインしたら、左メニュー[システム]→[ユーザーおよびグループ]。
②[ローカルユーザー]のタブのままで、「新しいユーザを作成」の文字をクリック。
***解説*****
ユーザ名: ユーザー名を入力。
ユーザID: 自動にするなりなんなり。FFFTPやCyberduckなどで接続すると、所有者としてこのユーザIDが表示されます。
パスワード: 「通常のパスワード」にそのままパスワードを入力しても、ユーザ作成完了後は自動的に暗号化されます。
セカンダリグループ: 所属グループをいくつか設定したいときは、「In Groups」に追加していくっぽい。
グループの管理
①webmin左メニュー[システム]→[ユーザーおよびグループ]。
②[ローカルグループ]のタブからグループを追加するなり、削除するなり、編集するなり・・・(ry
とりあえず、今のところ必要なのはこのくらいでしょーかね。
2011年04月10日
さくらサーバーVPS~Webminモジュールのインストールができない
操作環境:IE8
問題:Webmin モジュールの画面で、[www.webmin.com]の[...]からモジュールを探そうとすると、「セキュリティ警告」の画面がでてくる。
「Webmin サーバの外側にあると思われる URL からリンクされたことを検出しました。」・・・って。
ぅんまぁ、Webminはクライアントサイドでブラウザからアクセスするものなんだけど。(´・ω・`)
OSはXP SP2だろうがWin7だろうが、同じ状況になる。
解決策or回避策:とりあえず、IE以外のブラウザでは問題ないらしい。
動作確認済みブラウザ:chrome、firefox(3.6、4.0)
問題:Webmin モジュールの画面で、[www.webmin.com]の[...]からモジュールを探そうとすると、「セキュリティ警告」の画面がでてくる。
「Webmin サーバの外側にあると思われる URL からリンクされたことを検出しました。」・・・って。
ぅんまぁ、Webminはクライアントサイドでブラウザからアクセスするものなんだけど。(´・ω・`)
OSはXP SP2だろうがWin7だろうが、同じ状況になる。
解決策or回避策:とりあえず、IE以外のブラウザでは問題ないらしい。
動作確認済みブラウザ:chrome、firefox(3.6、4.0)
2011年04月08日
さくらVPSでWebminの設定~WebminのSSL接続~
Webminはサーバーとクライアントを繋ぐ架け橋のようなものだが、
その通信が暗号化されてないのはセキュリティ的にやっぱりちょっと
まずいかも(´・ω・`)っ
「Net::SSLeay」のインストール。
まずはSSL接続をするためのモジュール「Net::SSLeay」のインストールから。
①Webmin画面左メニュー[Webmin]→[Webmin 設定]。
②[SSL 暗号化]→文中の[download and install]をクリックし、
「Net::SSLeay」のインストールを開始。
「Net::SSLeay」のインストールが完了したか確認。
①「.. install complete.」の文字がでたら、[モジュール リスト に戻る]押下。
②「Perl モジュール」の画面になるので、[インストールされたモジュール」のタブをクリック。
「Net::SSLeay」の項目があがっていればおkです。
改めてSSL設定
①Webmin画面左メニュー[Webmin]→[Webmin 設定]→[SSL 暗号化]。
②「可能であればSSLを使用可能にしますか?」を「はい」のラジオボタンを◎オンにし、
「保存」をクリック。
すぐに設定が効いてSSL接続以外をはじくようになるので、「Error - Bad Request」の
エラーメッセージが表示されます。
③"https://ドメイン名:10000"でアクセスしなおします。
セキュリティの警告画面が出ますが、「このまま続行」のボタンを押下でログインしましょう。
もしセキュリティ警告の画面を出したくないのであれば、ベリサインのような
認証サービスから認証を受ける必要があります。
・・・が、一介のSOHO(スモールオフィス・ホームオフィス)な人間にとって、
「手が出せると思ってんのかもるぁー!!ヽ(# ゚Д ゚)ノ┌┛)` 3 ゚)・;'」
って金額だったりするのでご注意を。
まぁ、webmin自体は技術者が内部的にアクセスするだけなので、
通信の暗号化はすれど、わざわざ第三者に証明を依頼する必要もないと思うのは私だけでしょうか(´≡ω≡`)
その通信が暗号化されてないのはセキュリティ的にやっぱりちょっと
まずいかも(´・ω・`)っ
「Net::SSLeay」のインストール。
まずはSSL接続をするためのモジュール「Net::SSLeay」のインストールから。
①Webmin画面左メニュー[Webmin]→[Webmin 設定]。
②[SSL 暗号化]→文中の[download and install]をクリックし、
「Net::SSLeay」のインストールを開始。
「Net::SSLeay」のインストールが完了したか確認。
①「.. install complete.」の文字がでたら、[モジュール リスト に戻る]押下。
②「Perl モジュール」の画面になるので、[インストールされたモジュール」のタブをクリック。
「Net::SSLeay」の項目があがっていればおkです。
改めてSSL設定
①Webmin画面左メニュー[Webmin]→[Webmin 設定]→[SSL 暗号化]。
②「可能であればSSLを使用可能にしますか?」を「はい」のラジオボタンを◎オンにし、
「保存」をクリック。
すぐに設定が効いてSSL接続以外をはじくようになるので、「Error - Bad Request」の
エラーメッセージが表示されます。
③"https://ドメイン名:10000"でアクセスしなおします。
セキュリティの警告画面が出ますが、「このまま続行」のボタンを押下でログインしましょう。
もしセキュリティ警告の画面を出したくないのであれば、ベリサインのような
認証サービスから認証を受ける必要があります。
・・・が、一介のSOHO(スモールオフィス・ホームオフィス)な人間にとって、
「手が出せると思ってんのかもるぁー!!ヽ(# ゚Д ゚)ノ┌┛)` 3 ゚)・;'」
って金額だったりするのでご注意を。
まぁ、webmin自体は技術者が内部的にアクセスするだけなので、
通信の暗号化はすれど、わざわざ第三者に証明を依頼する必要もないと思うのは私だけでしょうか(´≡ω≡`)
2011年04月06日
さくらVPS基本設定 ~ファイルの所有者の変更~
0.サーバー基本設定(3/3)
FFFTPなどでデータをアップロードする場合、ファイルの所有者でアクセスしないと
データの書き込み権限がないためにエラーになってしまいます。
なので、rootユーザ以外でFTP接続する場合には、あらかじめファイル所有者を
そのユーザーに変更しておきます。
手順はこちら
※管理者(root)として実行しなくてはいけないので、いったんログアウトするか、
"su -"コマンドでrootパスワードを入力し、管理者ログイン。
Apacheでデフォルトの外部公開設定になっている階層(/var/www/html)の真上へ移動。
+--------------------------------------------------------------------+
~]# cd /var/www
+--------------------------------------------------------------------+
オーナーチェーンジ!!☆★+ : ヽ(*´∀`) : +
+--------------------------------------------------------------------+
www]# chown -R ユーザー名. html
+--------------------------------------------------------------------+
***解説*****
chown → オーナー(所有者)を変えるためのコマンド。
-R → 指定したフォルダ以下の階層全部に適用するってゆーオプション。
ユーザー名. → root以外の、web管理をするためのcentosユーザーを指定。
ユーザー名の後ろに「.(ドット)」をつけることで、所有グループも
いちどに変更しちゃえ☆
html → この部分は変更するフォルダやファイルの名前を指定しましょう。
コマンド実行後、所有者・所有グループ一覧を見てみると、htmlフォルダがバッチリ
変更されてるかと思います。
一覧表示のコマンドは"ls -l"(エル エス スペース ハイフン エル)ですょー。
+--------------------------------------------------------------------+
[ユーザー名@ドメイン名 www]# ls -l
total 16
drwxr-xr-x 2 root root 4096 Aug 31 2010 cgi-bin
drwxr-xr-x 3 root root 4096 Feb 23 00:11 error
drwxr-xr-x 2 ユーザー名 グループ名 4096 Mar 3 19:21 html
drwxr-xr-x 3 root root 4096 Feb 23 00:41 icons
+--------------------------------------------------------------------+
△△注意事項△△
ファイル所有者や所有グループの変更はroot(管理者権限のあるユーザー)じゃないとエラーになります。
「このコマンドでぅちの会社の上司も変更できたら」・・・とか思ってはいけません。
FFFTPなどでデータをアップロードする場合、ファイルの所有者でアクセスしないと
データの書き込み権限がないためにエラーになってしまいます。
なので、rootユーザ以外でFTP接続する場合には、あらかじめファイル所有者を
そのユーザーに変更しておきます。
手順はこちら
※管理者(root)として実行しなくてはいけないので、いったんログアウトするか、
"su -"コマンドでrootパスワードを入力し、管理者ログイン。
Apacheでデフォルトの外部公開設定になっている階層(/var/www/html)の真上へ移動。
+--------------------------------------------------------------------+
~]# cd /var/www
+--------------------------------------------------------------------+
オーナーチェーンジ!!☆★+ : ヽ(*´∀`) : +
+--------------------------------------------------------------------+
www]# chown -R ユーザー名. html
+--------------------------------------------------------------------+
***解説*****
chown → オーナー(所有者)を変えるためのコマンド。
-R → 指定したフォルダ以下の階層全部に適用するってゆーオプション。
ユーザー名. → root以外の、web管理をするためのcentosユーザーを指定。
ユーザー名の後ろに「.(ドット)」をつけることで、所有グループも
いちどに変更しちゃえ☆
html → この部分は変更するフォルダやファイルの名前を指定しましょう。
コマンド実行後、所有者・所有グループ一覧を見てみると、htmlフォルダがバッチリ
変更されてるかと思います。
一覧表示のコマンドは"ls -l"(エル エス スペース ハイフン エル)ですょー。
+--------------------------------------------------------------------+
[ユーザー名@ドメイン名 www]# ls -l
total 16
drwxr-xr-x 2 root root 4096 Aug 31 2010 cgi-bin
drwxr-xr-x 3 root root 4096 Feb 23 00:11 error
drwxr-xr-x 2 ユーザー名 グループ名 4096 Mar 3 19:21 html
drwxr-xr-x 3 root root 4096 Feb 23 00:41 icons
+--------------------------------------------------------------------+
△△注意事項△△
ファイル所有者や所有グループの変更はroot(管理者権限のあるユーザー)じゃないとエラーになります。
「このコマンドでぅちの会社の上司も変更できたら」・・・とか思ってはいけません。
2011年04月05日
さくらVPS基本設定 ~centos グループの設定~
0.サーバー基本設定(2/3)
linux系のソフトは大体の場合、centosのユーザーやグループ情報を使ってアクセス
制限をかけたり、まぁいろいろちょこまか設定ができるようになっています。
「一般ユーザーに特定の管理者権限を与えたい」だとかでグループを設定する場合の
コマンドです。
※)リモートコンソールでなく、Webmin(GUI)で設定するばあいはこちら
どのグループに所属しているかを確認するコマンド(ユーザーfuckinの所属グループ)
+--------------------------------------------------------------------+
]# groups fuckin
fuckin : fuckin ←ユーザー名:所属グループ
+--------------------------------------------------------------------+
デフォルトでユーザー名と同じグループ名が割り当てられるようになっています。
centosグループの作成。(例:adminグループを作成する)
+--------------------------------------------------------------------+
]# groupadd admin
+--------------------------------------------------------------------+
既存のユーザーをグループに追加。(例:ユーザーfuckinをadminグループに追加)
+--------------------------------------------------------------------+
]# gpasswd -a fuckin admin
+--------------------------------------------------------------------+
グループからユーザーを外す。(例:ユーザーfuckinをadminグループから削除)
+--------------------------------------------------------------------+
]# gpasswd -d fuckin admin
+--------------------------------------------------------------------+
△△注意事項△△
root(管理者権限のあるユーザー)で操作しないとエラーになります。
linux系のソフトは大体の場合、centosのユーザーやグループ情報を使ってアクセス
制限をかけたり、まぁいろいろちょこまか設定ができるようになっています。
「一般ユーザーに特定の管理者権限を与えたい」だとかでグループを設定する場合の
コマンドです。
※)リモートコンソールでなく、Webmin(GUI)で設定するばあいはこちら
どのグループに所属しているかを確認するコマンド(ユーザーfuckinの所属グループ)
+--------------------------------------------------------------------+
]# groups fuckin
fuckin : fuckin ←ユーザー名:所属グループ
+--------------------------------------------------------------------+
デフォルトでユーザー名と同じグループ名が割り当てられるようになっています。
centosグループの作成。(例:adminグループを作成する)
+--------------------------------------------------------------------+
]# groupadd admin
+--------------------------------------------------------------------+
既存のユーザーをグループに追加。(例:ユーザーfuckinをadminグループに追加)
+--------------------------------------------------------------------+
]# gpasswd -a fuckin admin
+--------------------------------------------------------------------+
グループからユーザーを外す。(例:ユーザーfuckinをadminグループから削除)
+--------------------------------------------------------------------+
]# gpasswd -d fuckin admin
+--------------------------------------------------------------------+
△△注意事項△△
root(管理者権限のあるユーザー)で操作しないとエラーになります。
2011年04月04日
さくらVPS基本設定 ~ユーザーの作成とパスワードの設定~
0.centosサーバー基本設定(1/3)
サーバー設定をしていく上でroot(管理者)ユーザーだけで稼働させるのは
色々無理があるので、ユーザーを追加する。
※)FTPやMysqlなどでは、root以外のユーザーで実操作することが推奨されています。
※)リモートコンソールでなく、Webmin(GUI)で設定するばあいはこちら
①サクラのVPSコントロールパネル"https://secure.sakura.ad.jp/vpscontrol/"を
開き、VPSコントロールパネルにログイン→[VPSホーム]→[起動]ボタンでサーバー(CentOS)を起動。
②[リモートコンソール]→rootアカウントでログイン
下記の「接続しました」的なメッセージが出てきたら、Enterキーを押すことで
ログインid入力のメッセージが出てきます。そのままログインしましょう。
+--------------------------------------------------------------------+
Connected to domain デフォルトのドメイン名
Escape character is ^]
ドメイン名 login: root
+--------------------------------------------------------------------+
centosユーザーを追加するコマンド:
+--------------------------------------------------------------------+
[root@ドメイン名 ~]# adduser 作成するユーザー名
+--------------------------------------------------------------------+
centosユーザーのパスワードを設定するコマンド:
+--------------------------------------------------------------------+
[root@ドメイン名 ~]# passwd 作成するユーザー名
+--------------------------------------------------------------------+
スペルミスなくパスワードを2回入力できれば完了です。
念のため、ログインできるか確認してみましょう。
ログアウトコマンド↓
+--------------------------------------------------------------------+
[root@ドメイン名 ~]# exit
+--------------------------------------------------------------------+
管理者権限があるユーザの場合、ログインすると括弧[]の右側が#になります。
新しく作成したユーザは一般ユーザーなので、$になってればおkです。
+--------------------------------------------------------------------+
[作成したユーザー名@ドメイン名 ~]$
+--------------------------------------------------------------------+
△△注意事項△△
centosユーザーの作成、パスワードの変更はroot(管理者権限のあるユーザー)
じゃないとエラーになります。
サーバー設定をしていく上でroot(管理者)ユーザーだけで稼働させるのは
色々無理があるので、ユーザーを追加する。
※)FTPやMysqlなどでは、root以外のユーザーで実操作することが推奨されています。
※)リモートコンソールでなく、Webmin(GUI)で設定するばあいはこちら
①サクラのVPSコントロールパネル"https://secure.sakura.ad.jp/vpscontrol/"を
開き、VPSコントロールパネルにログイン→[VPSホーム]→[起動]ボタンでサーバー(CentOS)を起動。
②[リモートコンソール]→rootアカウントでログイン
下記の「接続しました」的なメッセージが出てきたら、Enterキーを押すことで
ログインid入力のメッセージが出てきます。そのままログインしましょう。
+--------------------------------------------------------------------+
Connected to domain デフォルトのドメイン名
Escape character is ^]
ドメイン名 login: root
+--------------------------------------------------------------------+
centosユーザーを追加するコマンド:
+--------------------------------------------------------------------+
[root@ドメイン名 ~]# adduser 作成するユーザー名
+--------------------------------------------------------------------+
centosユーザーのパスワードを設定するコマンド:
+--------------------------------------------------------------------+
[root@ドメイン名 ~]# passwd 作成するユーザー名
+--------------------------------------------------------------------+
スペルミスなくパスワードを2回入力できれば完了です。
念のため、ログインできるか確認してみましょう。
ログアウトコマンド↓
+--------------------------------------------------------------------+
[root@ドメイン名 ~]# exit
+--------------------------------------------------------------------+
管理者権限があるユーザの場合、ログインすると括弧[]の右側が#になります。
新しく作成したユーザは一般ユーザーなので、$になってればおkです。
+--------------------------------------------------------------------+
[作成したユーザー名@ドメイン名 ~]$
+--------------------------------------------------------------------+
△△注意事項△△
centosユーザーの作成、パスワードの変更はroot(管理者権限のあるユーザー)
じゃないとエラーになります。
2011年04月03日
さくらVPSでWebmin ~.htmlの拡張子でphpを実行したい~
4.「.html」の拡張子のままphpを実行するためのWebminの設定
私がphpを習いたてのころ、「セキュリティ的に.htmlの拡張子にしたほうがぃぃよ(´・ω・`)」
と教わりました。
phpを使っていることを外部に悟られないようにするためですね。
また、既にホームページを運営している方はgoogleのロボットのキャッシュ(履歴)に
"index.html"などで登録されてしまっているために、
「いまさら"index.html"から"index.php"に拡張子を変更すると不都合がある」
ということもあるようです。
まぁ、適用させたい階層に下記のどっちかの内容を書いた.htaccessファイルを置いてもぃぃんですが・・・
+--------------------------------------------------------------------+
AddType application/x-httpd-php .php .html
AddHandler application/x-httpd-php .php .html
+--------------------------------------------------------------------+
フォルダを作るたびに各階層に置くのって果てしなくめんどくさいですょね(-д-)y-゜゜゜
Apacheの設定で、/etc/httpd/conf/httpd.confをちょろっといじるといっぺんに変更できます。
とはいえ、viでコマンドを駆使しながらやるのもなんかイヤなので(ォィ)、
のGUI(グラフィック ユーザー インターフェイス)から簡単に設定しちゃいます。
わかりやすぃ方がぃぃもんね、ぅん。
なにはともあれ、「php」を「.html」で動作させるためのやり方はこちら
画面左側メニューの[サーバ]→[Apache Webサーバ]
→地球儀マークのついた[デフォルトのサーバー]→[MIMEタイプ]→[追加MIMEタイプ]に
以下の項目を追加。
+--------------------------------------+
| タイプ | 拡張子 |
|-------------------------------------- |
| application/x-httpd-php | .html .htm |
+--------------------------------------+
仮想サーバのオプション画面に戻ったら、右上の「変更を適用」の文字をクリック。
これで設定は完了です。
.htaccess要らずで楽ですね。
私がphpを習いたてのころ、「セキュリティ的に.htmlの拡張子にしたほうがぃぃよ(´・ω・`)」
と教わりました。
phpを使っていることを外部に悟られないようにするためですね。
また、既にホームページを運営している方はgoogleのロボットのキャッシュ(履歴)に
"index.html"などで登録されてしまっているために、
「いまさら"index.html"から"index.php"に拡張子を変更すると不都合がある」
ということもあるようです。
まぁ、適用させたい階層に下記のどっちかの内容を書いた.htaccessファイルを置いてもぃぃんですが・・・
+--------------------------------------------------------------------+
AddType application/x-httpd-php .php .html
AddHandler application/x-httpd-php .php .html
+--------------------------------------------------------------------+
フォルダを作るたびに各階層に置くのって果てしなくめんどくさいですょね(-д-)y-゜゜゜
Apacheの設定で、/etc/httpd/conf/httpd.confをちょろっといじるといっぺんに変更できます。
とはいえ、viでコマンドを駆使しながらやるのもなんかイヤなので(ォィ)、
のGUI(グラフィック ユーザー インターフェイス)から簡単に設定しちゃいます。
わかりやすぃ方がぃぃもんね、ぅん。
なにはともあれ、「php」を「.html」で動作させるためのやり方はこちら
画面左側メニューの[サーバ]→[Apache Webサーバ]
→地球儀マークのついた[デフォルトのサーバー]→[MIMEタイプ]→[追加MIMEタイプ]に
以下の項目を追加。
+--------------------------------------+
| タイプ | 拡張子 |
|-------------------------------------- |
| application/x-httpd-php | .html .htm |
+--------------------------------------+
仮想サーバのオプション画面に戻ったら、右上の「変更を適用」の文字をクリック。
これで設定は完了です。
.htaccess要らずで楽ですね。
2011年03月30日
さくらVPSでWebmin ~PHPのモジュールをインストール~
3.PHPモジュールをインストール
webサーバーでを扱えるようにするために、の管理画面からのphpモジュールをインストールします。
手順はこちら
[システム]
→[ソフトウエアパッケージ]
→[Package from YUM]の左側の◎ラジオボタンをクリック。
右側のテキストボックスに「php」と入力するか、[Browse YUM ..]でphpを検索し、選択。
(※)[Browse YUM ..]でphpを検索する場合・・・
・テキストボックスに「php」を入力し、[Find packages matching:]ボタンを押す。
・結構待って(2~3分くらい?)一覧が現れたら、「php」をクリック。
[インストール]ボタンを押して、インストール開始。
「.. install complete.」の文字が出たらphpモジュールのインストールが完了です。
webサーバーでを扱えるようにするために、の管理画面からのphpモジュールをインストールします。
手順はこちら
[システム]
→[ソフトウエアパッケージ]
→[Package from YUM]の左側の◎ラジオボタンをクリック。
右側のテキストボックスに「php」と入力するか、[Browse YUM ..]でphpを検索し、選択。
(※)[Browse YUM ..]でphpを検索する場合・・・
・テキストボックスに「php」を入力し、[Find packages matching:]ボタンを押す。
・結構待って(2~3分くらい?)一覧が現れたら、「php」をクリック。
[インストール]ボタンを押して、インストール開始。
「.. install complete.」の文字が出たらphpモジュールのインストールが完了です。
2011年03月26日
サーバー移転の手順~ぇっ、メールサーバー使ってるの?~
先日、ホームページを持っているクライアントさんから、Web制作を頼まれました。
「前に依頼したホームページ制作会社とかくかくしかじかでアレなので、
そこが管理しているサーバーすらも乗り換えたいんだよ(´・ω・`)」
は、はぁ・・・。サーバー移転ですか。
ぅんまぁ、ひとまずデータの移し替えくらいなら。。
「よくわかんないから、専門的なことはよろしくね。(´・ω・`)」
・・・わたしもサーバー移転なんてしたことないんですが。
えっと。ふむふむ、会社用にドメインをお持ちなんですね。φ(..)メモメモ
ぇ、ぇっと・・・そのドメインでメールもご利用ですか。。
ぇっ、メールサーバーも移転になっちゃいますが!??
めんどくさい。とてもめんどくさいが、とりあえずメールサーバーとドメインの仕組み
たとえば私(me)があなた(you@mail.jp)へメールを送る場合。
①わたし(me)「you@mail.jpさんはどこですか(´・ω・`)」
②JPNICさん「@mailさんの番地なら知ってますので、そこで聞いてください」と、
設定済みのDNS(ドメイン ネーム サービス)サーバーを案内されます。
③わたし(me)「you@mail.jpさんはどこですか(´・ω・`)」
DNSサーバー「ぁ~you@mailさんなら、ここの住人だょ。ポストに入れておきますネ。」
まぁ、一般的にはメールサーバーを提供しているプロバイダがDNSサーバー持ってるので、一緒くたに書いちゃいました。
④あなた(you)が「メール新着きてるかなぁ(g>ω<)g〃」と確認すると、わたし(me)のメールが届いている、というわけです。
じゃあドメインの切り替えってどーやるの?
とりあえず、サーバーを契約したプロバイダに任せてしまうのが楽な方法です。
「ドメイン移管」という項目があるはずなので、新サーバーの管理画面をくまなく探してみましょう。
新サーバーへドメイン転入が完了したら「ゾーン設定」ができるはずなので、
新サーバーのDNS内で、IPアドレスとドメイン名を関連づけてあげましょう。
ていうかまぁ、最終的にこうなればぃぃんですょね。
でも、DNSサーバーって実は星の数ほどあってですね。(言いスギ)
それぞれのDNSサーバーにキャッシュされた情報を元に、
一種の伝言ゲーム形式でサーバー間を走り抜けているわけです。
あなたの家のインターネットプロバイダが最新のDNS情報をもっていたとしても、
わたしのインターネットプロバイダのDNS情報が最新でなければ、
わたしは旧メールサーバーのほうを訪ねちゃうわけですょ。
なので、一旦こうします
Webサイトとメールをセットで利用できるようなサービスの場合、
「DNSサーバー設定」という項目があるはずです。
そこで、参照DNSサーバーを新しいサーバーに向けてしまうわけです。
サーバー会社にもよりますが、旧サーバーでDNS切り替えの認証がされるまでに、恐らく3~4日かかります。
その後、WhoisのDNS情報を新サーバーのDNSに切り替える作業にうつったとして、
全国のDNSサーバーが切り替わるのにまた数日かかるでしょう。
となると、「今月末までにサーバー移転してよ(-。-)y-゜゜゜」とか
期限が決まっているばあい、余裕をもって作業にとりくまないといけませんね。
この方法をとる利点:
メール設定(POP3やSMTP設定、ポート番号など)に変更がなければ、
スムーズにメールサーバー移行ができるかもしれない。
旧サーバーのDNS設定をせずに、直接Whois情報を書き換えた場合:
全国のDNSが書き変わるまでに時間がかかる→古い情報のところは旧サーバーにメールを貯める→受け取れずにあわや大損害・・・
まぁ、どのみち受け取れないときは受け取れないものです。
サーバー会社は新サーバー、旧サーバーともにメールが受け取れるようにメール設定することを勧めてますしね。
旧サーバーを解約する前に、取りそびれがないか
メール利用者パネルなどで確認しておきましょう。
「前に依頼したホームページ制作会社とかくかくしかじかでアレなので、
そこが管理しているサーバーすらも乗り換えたいんだよ(´・ω・`)」
は、はぁ・・・。サーバー移転ですか。
ぅんまぁ、ひとまずデータの移し替えくらいなら。。
「よくわかんないから、専門的なことはよろしくね。(´・ω・`)」
・・・わたしもサーバー移転なんてしたことないんですが。
えっと。ふむふむ、会社用にドメインをお持ちなんですね。φ(..)メモメモ
ぇ、ぇっと・・・そのドメインでメールもご利用ですか。。
ぇっ、メールサーバーも移転になっちゃいますが!??
めんどくさい。とてもめんどくさいが、とりあえずメールサーバーとドメインの仕組み
たとえば私(me)があなた(you@mail.jp)へメールを送る場合。
①わたし(me)「you@mail.jpさんはどこですか(´・ω・`)」
②JPNICさん「@mailさんの番地なら知ってますので、そこで聞いてください」と、
設定済みのDNS(ドメイン ネーム サービス)サーバーを案内されます。
③わたし(me)「you@mail.jpさんはどこですか(´・ω・`)」
DNSサーバー「ぁ~you@mailさんなら、ここの住人だょ。ポストに入れておきますネ。」
まぁ、一般的にはメールサーバーを提供しているプロバイダがDNSサーバー持ってるので、一緒くたに書いちゃいました。
④あなた(you)が「メール新着きてるかなぁ(g>ω<)g〃」と確認すると、わたし(me)のメールが届いている、というわけです。
じゃあドメインの切り替えってどーやるの?
とりあえず、サーバーを契約したプロバイダに任せてしまうのが楽な方法です。
「ドメイン移管」という項目があるはずなので、新サーバーの管理画面をくまなく探してみましょう。
新サーバーへドメイン転入が完了したら「ゾーン設定」ができるはずなので、
新サーバーのDNS内で、IPアドレスとドメイン名を関連づけてあげましょう。
ていうかまぁ、最終的にこうなればぃぃんですょね。
でも、DNSサーバーって実は星の数ほどあってですね。(言いスギ)
それぞれのDNSサーバーにキャッシュされた情報を元に、
一種の伝言ゲーム形式でサーバー間を走り抜けているわけです。
あなたの家のインターネットプロバイダが最新のDNS情報をもっていたとしても、
わたしのインターネットプロバイダのDNS情報が最新でなければ、
わたしは旧メールサーバーのほうを訪ねちゃうわけですょ。
なので、一旦こうします
Webサイトとメールをセットで利用できるようなサービスの場合、
「DNSサーバー設定」という項目があるはずです。
そこで、参照DNSサーバーを新しいサーバーに向けてしまうわけです。
サーバー会社にもよりますが、旧サーバーでDNS切り替えの認証がされるまでに、恐らく3~4日かかります。
その後、WhoisのDNS情報を新サーバーのDNSに切り替える作業にうつったとして、
全国のDNSサーバーが切り替わるのにまた数日かかるでしょう。
となると、「今月末までにサーバー移転してよ(-。-)y-゜゜゜」とか
期限が決まっているばあい、余裕をもって作業にとりくまないといけませんね。
この方法をとる利点:
メール設定(POP3やSMTP設定、ポート番号など)に変更がなければ、
スムーズにメールサーバー移行ができるかもしれない。
旧サーバーのDNS設定をせずに、直接Whois情報を書き換えた場合:
全国のDNSが書き変わるまでに時間がかかる→古い情報のところは旧サーバーにメールを貯める→受け取れずにあわや大損害・・・
まぁ、どのみち受け取れないときは受け取れないものです。
サーバー会社は新サーバー、旧サーバーともにメールが受け取れるようにメール設定することを勧めてますしね。
旧サーバーを解約する前に、取りそびれがないか
メール利用者パネルなどで確認しておきましょう。
2011年03月24日
さくらVPSでWebmin ~Apacheの設定をする手順~
2.Apacheをインストール。
さくらVPSサーバーにインストール済みのWebminをつかって、
をインストール・設定します。
(ブログ公開時のApacheバージョンは2.2.3でした。)
(Webminのインストール方法は前回の記事をご覧ください。)
手順はこちら
[Webmin]→[Webmin 設定]→[Webmin モジュール]→[モジュールのインストール]で
www.webmin.comの左側の◎ラジオボタンをチェック。
そして右端にある[...]ボタンを押すと新しいウインドウが立ち上がるので、モジュール一覧から「apache」を選択。
[ファイルからモジュールをインストール]ボタンをクリック。
[Un-used Modules]→[Apache]→英文中の「Click here」をクリックすると、
Apacheのインストールが開始される。
インストールが完了したら
[システム]→[起動およびシャットダウン]メニューから[httpd]をチェック。
[選択したものを開始・ブート時に開始]ボタンをクリックし、完了。
(※個人的にブラウザはchromeを愛用しているのですが、cssが悪いのか、
画面を右はじまで寄せないとボタンが見えません・・・)
インストールが完了したら、「http://あなたの取得ドメイン名」で表示を確認してみましょう。
きっとindex.htmlすら置いていないので、デフォルトの公開階層(/var/www/html)のフォルダの内容が一覧表示されちゃいますね
や、まぁ何も置いてないんでなにも入ってないと思いますが。。
さくらVPSサーバーにインストール済みのWebminをつかって、
をインストール・設定します。
(ブログ公開時のApacheバージョンは2.2.3でした。)
(Webminのインストール方法は前回の記事をご覧ください。)
手順はこちら
[Webmin]→[Webmin 設定]→[Webmin モジュール]→[モジュールのインストール]で
www.webmin.comの左側の◎ラジオボタンをチェック。
そして右端にある[...]ボタンを押すと新しいウインドウが立ち上がるので、モジュール一覧から「apache」を選択。
[ファイルからモジュールをインストール]ボタンをクリック。
[Un-used Modules]→[Apache]→英文中の「Click here」をクリックすると、
Apacheのインストールが開始される。
インストールが完了したら
[システム]→[起動およびシャットダウン]メニューから[httpd]をチェック。
[選択したものを開始・ブート時に開始]ボタンをクリックし、完了。
(※個人的にブラウザはchromeを愛用しているのですが、cssが悪いのか、
画面を右はじまで寄せないとボタンが見えません・・・)
インストールが完了したら、「http://あなたの取得ドメイン名」で表示を確認してみましょう。
きっとindex.htmlすら置いていないので、デフォルトの公開階層(/var/www/html)のフォルダの内容が一覧表示されちゃいますね
や、まぁ何も置いてないんでなにも入ってないと思いますが。。