ひとこと

― 今日のひとこと ―
印刷情報取得モジュールをアップロードしました。
https://bitbucket.org/marolabo/public
(2018.02.20)

2013年1月14日月曜日

Amazon Web Serviceで仮想サーバ構築 No.5 -vsFTPdインストール-

前回、仮想サーバがAPサーバとして動かせる状態になった。
しかし動くだけではだめ。開発したプログラムを配置できるようにしなければならない。

というわけで今回は、FTP通信でデータを仮想サーバと送受信できるようにする方法をメモする。
まぁインスタンスにvsFTPdをインストールして設定するだけなんだけど。

vsFTPd(very secure FTP daemon)というのは、その名の通りFTPサーバである。
設定内容は以下の通り。




1.No.2にメモした方法で、インスタンスに接続する。

2.インスタンスにvsftpdをインストールする。
sudo apt-get update
sudo apt-get install vsftpd
vsftpdが自動で起動してしまう↓ので、停止させる。

sudo /etc/init.d/vsftpd stop

3.vsftpd.confの内容を変更する。
sudo nano /etc/vsftpd.conf
anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
ls_recurse_enable=YES
use_localtime=YES
userlist_enable=YES
userlist_deny=NO
userlist_file=/etc/vsftpd.user_list
local_root=

4.vsftpd.chroot_listに、chrootを許可するユーザのユーザ名を記述する。(この記事の最後を要確認)
sudo nano /etc/vsftpd.chroot_list

5.vsftpd.user_listに、アクセスを許可するユーザのユーザ名を記述する。
sudo nano /etc/vsftpd.user_list

6.vsftpdを起動する。
sudo service vsftpd start


これで、開発のための仮想サーバ側の基本的な準備はおしまい。たぶん。
では、ここからは仮想サーバと実際にデータをやり取りする方法。


7.FFFTPをPCにダウンロード&インストールする。

8.FFFTP.exeを実行してFFFTPを起動する。


9.メニューの「接続(F)」>「接続(C)」をクリック


10.「ホスト一覧」ウィンドウの「新規ホスト」をクリック


11.「基本」タブを編集する。
接続先ホストの名前(任意)とIPアドレス、
chroot_listとuser_listに記述したユーザ名とそのユーザのパスワードを書き込む。

12.「拡張」タブを↓のように編集する。


13.「文字コード」タブを編集する。ホスト・ファイル名共にUTF-8を指定。

14.「高度」タブを↓のように編集し、「OK」をクリックして設定完了。


15.「ホスト一覧」ウィンドウに、設定した接続先が表示される。


16.「接続」をクリックし、↓の画面のようになれば成功。




これで、自宅PCで書いたコードを仮想サーバに送って実行させる事ができるようになった。
うん。万々歳!!


・・・ただ、ひとつ訂正しなければならない点があったんだ。
ここまで普通に流してきた風に書いたけど、これを読んでる未来の自分はもう気づいてるはずだ。

「前回Tomcat用に作ったユーザにはパスワードなんか設定してなかった。いつの間に設定したんだ?」
そう訝しんでる事だろう未来の自分。むしろ訝しめ。

実は、前回のやり方で作成したユーザmaroはそのままではvsFTPdで使えないんだ。
だから同名ユーザを作り直して、そのついでにパスワードを設定していたんだ。すまない。

そこらへんの手順は次の通りだ。

1./opt/tomcat7以下の所有者をubuntuに変更
sudo chown -R ubuntu /opt/tomcat7

2.maroを削除
sudo userdel -r maro

3.maroを作成しパスワードを設定
sudo adduser maro

4.maroをsudoersに追加
sudo visudo
# User privilege specification
root    ALL=(ALL) ALL
maro    ALL=(ALL) ALL

5./opt/tomcat7以下の所有者をmaroに変更
sudo chown -R maro /opt/tomcat7

もしこの時点で/home直下にmaroディレクトリが無ければ、以下の手順も追加する。
6./home直下にmaroディレクトリを作成
sudo mkdir /home/maro

7./home/maro以下の所有者をmaroに設定
sudo chown -R maro /home/maro


以上の5つないし7つの手順を、vsFTPdを起動する前にやっておけばいい。
そんなん面倒くせぇよと思うならもうubuntuアカウントのpasswd設定してvsFTPdに使う事をお勧めします

0 件のコメント:

コメントを投稿