「エアコンの安全な修理・適切なフロン回収」はこちら「業務用エアコンエラーコード」はこちら

Debian10でサーバー構築 FTPサーバー、webサーバーApache

スポンサーリンク
スポンサーリンク
スポンサーリンク

1. FTPサーバー導入

1.1 vsftpdをインストール

インストール
# apt install vsftpd

FTP Port21許可
# ufw allow ftp

vsftpd設定ファイル編集

# vi /etc/vsftpd.conf
# 匿名ユーザのログインを許可しない

anonymous_enable=NO
# ローカル ユーザ アカウントによる ログインを許可する
local_enable=YES
# ファイルに変更を加える FTP コマンドの使用を許可する
write_enable=YES
# 新規ファイルに適用するパーミッション値を設定する
# 各桁はowner, group, otherを示しており、ビットはrwxを示す
local_umask=022
# ユーザのログイン ディレクトリを、そのユーザのルート ディレクトリに変更する
chroot_local_user=YES
# ユーザはログイン ディレクトリの外側にアクセスできなくなる
chroot_list_enable=YES
# vsftpd.chroot_listにリストアップされたユーザは上記規制の対象外にする
chroot_list_file=/etc/vsftpd.chroot_list
# ASCIIによるアップロードを許可する
ascii_upload_enable=YES
# ASCIIによるダウンロードを許可する
ascii_download_enable=YES
# 131行目:コメント解除( ディレクトリごと一括での転送有効 )
ls_recurse_enable=YES

次に、vsftpd.chroot_listをetcの下に新規で作成します。
このファイルにDebianのユーザ名(例: debian-user)を追加します。

# vi /etc/vsftpd.chroot_list
debian-user

最後に、vsftpdを有効にして再起動

# systemctl restart vsftpd

1.2 FTP接続の確認

WindowsのFTPクライアントのFFFTPを使って確認する。
FFFTPを開き、メニューバーから接続を選択します。

ホスト一覧というウィンドウが開きます。新規ホストを選択してください。

ホストの設定というウィンドウが開きます。以下を入力し、OKを押してください

1. ホストの設定名(任意の名前)
2. ホスト名(DebianのIPアドレス)192.168.11.82
3. ユーザ名(Debianのユーザ名)hoge
4. パスワード ********

 

 

 

 

ホスト一覧ウィンドウに戻りますので。接続を押してください。

暗号化の状態の保存というウィンドウが開きます。はいを選択してください。

左側にWindowsのディレクトリ、右側に Debianのディレクトリが表示されれば、接続成功です。
もし、つながらない場合はPassiveモードを入り切りする

スポンサーリンク

2. WEBサーバーApache2導入

2.1 Apache2インストールと設定

Apache2インストールの前に80番ポートを開ける

# ufw allow http

Apache2 をインストール

# apt -y install apache2

Apache2 の基本設定

# vi /etc/apache2/conf-enabled/security.conf
# 25行目:変更
ServerTokens  Prod

# vi /etc/apache2/mods-enabled/dir.conf

# 2行目:ディレクトリ名のみでアクセスできるファイル名を確認
DirectoryIndex  index.html index.htm index.php

# vi /etc/apache2/apache2.conf

# 70行目:サーバー名追記
ServerName <ドメイン名>
# 172行目:変更
AllowOverride ALL

# vi /etc/apache2/sites-available/000-default.conf
# 11行目:管理者アドレス変更
ServerAdmin  hoge@hoge.com
# systemctl restart apache2

2.2 Apache2; Perlスクリプトを利用する

CGI を有効にして Perl スクリプトが利用できるように設定します。Perl をインストールし有効にします。

# apt -y install perl

CGI モジュールを有効にします。
# a2enmod cgid
Enabling module cgid.
To activate the new configuration, you need to run:
systemctl restart apache2

Apacheの再起動
# systemctl restart apache2

CGI モジュールを有効にすると、デフォルトで [/usr/lib/cgi-bin] 配下が CGI 実行許可されます。

[/usr/lib/cgi-bin/index.cgi] スクリプトを作成して配置することで、[http://(Apache2 サーバー)/cgi-bin/index.cgi] へアクセス可能となります。 なお、当設定は [/usr/lib/cgi-bin] 配下のファイルを全て CGI と扱うため、CGI 以外のファイルは表示できません。
ためしに、次のテストスクリプトを作成し動作確認してみます。

テストスクリプトを作成
# cat > /usr/lib/cgi-bin/sample_script <<‘EOF’
#!/usr/bin/perl
print “Content-type: text/html\n\n”;
print “CGI TEST\n”;
EOF

スクリプトファイルに権限を与える
# chmod 705 /usr/lib/cgi-bin/sample_script
動作確認
# curl http://localhost/cgi-bin/sample_script
Hello CGI
まれに、“curl: コマンドが見つかりません”と表示されたら
# apt install curlでcurlインストール後再度確認する

2.3 Apache2; PHPスクリプトを利用する

PHP をインストールします。

# apt -y install php php-cgi libapache2-mod-php php-common php-pear php-mbstring

Apache2 の設定

# a2enconf php7.3-cgi
Enabling conf php7.3-cgi.
To activate the new configuration, you need to run:
systemctl reload apache2
# systemctl restart apache2

PHPの設定ファイルの編集

# vi /etc/php/7.3/apache2/php.ini
# 841行目: upload_max_filesize = 2M → upload_max_filesize = 200M
# 956行目:コメント解除しタイムゾーン設定
date.timezone = “Asia/Tokyo”
# systemctl restart apache2

PHPテストページを作成して動作確認
テストページの作成

# vi /var/www/html/index.php
<html>
<body>
<div style=”width: 100%; font-size: 40px; font-weight: bold; text-align: center;”>
<?php
print “PHP Test Page”;
?>
</div>
</body>
</html>

以下のようなページが表示されればOKです。

2.4 バーチャルホストの設定

デフォルトの設定ファイルをコピーし、バーチャルホストの設定をします

# cd /etc/apache2/sites-available/
# cp 000-default.conf vhost-hoge.com.conf

設定ファイルを編集

# vi vhost-hoge.com.conf
<VirtualHost *:80>
~省略~
ServerName hoge.com
ServerAdmin hoge@hoge.com
DocumentRoot /var/www/html/hoge.com
~省略~
ErrorLog ${APACHE_LOG_DIR}/hoge.com.error.log
CustomLog ${APACHE_LOG_DIR}/hoge.com.access.log combined
~省略
</VirtualHost>

設定ファイルにシンボリックリンクを貼り、デフォルトの設定ファイルを無効化する

# cd /etc/apache2/sites-available/
# a2ensite vhost-hoge.com.conf
# a2dissite 000-default.conf  デフォルト無効化
# systemctl restart apache2

hostsファイルの編集

# vi /etc/hosts
127.0.0.1 hoge.com

ディレクトリー作成

# mkdir /var/www/html/hoge.com

テストページを作成し、動作確認

# vi /var/www/html/hoge.com/index.html
<html>
<body>
<div style=”width: 100%; font-size: 40px; font-weight: bold; text-align: center;”>
Virtual Host Test Page
</div>
</body>
</html>
error:Content is protected !!
タイトルとURLをコピーしました