ProFTPD インストール
chkrootkit インストールには、rpmforgeリポジトリが必要です。rpmforgeリポジトリの確認・インストール
[root@linux ~]# yum -y --enablerepo=rpmforge install proftpd ←■ proftpdインストール
[root@linux ~]#
ProFTPD 設定
/etc/proftpd.conf の編集
[root@linux ~] cp -a /etc/proftpd.conf /etc/proftpd.conf.org ←■ 設定ファイルをバックアップ
[root@linux ~]
[root@linux ~] vi /etc/proftpd.conf ←■ proftpd 設定ファイル編集
※ スタンドアロンモードで起動する場合
ServerType standalone
#ServerType inetd
※ xinetd経由で起動する場合は変更する場合
#ServerType standalone
ServerType inetd
※ ルートディレクトリの設定例
DefaultRoot ~ !adm ←■ 初期値
DefaultRoot ~ ←■ 通常はこれで良い
DefaultRoot ~/public_html ←■ ~/public_html にする場合
DefaultRoot ~/public_html !wheel ←■ ~/public_html にして、wheelグループ所属ユーザを除外する場合
# Normally, we want users to do a few things.
<Global>
AllowOverwrite yes
<Limit ALL SITE_CHMOD>
AllowAll
</Limit>
PassivePorts 50000 50005 ←■ PASVモード用ポートとして1024以上の任意のポートを指定
</Global>
※ SSL/TLS に対応させる場合
# TLS
# Explained at http://www.castaglia.org/proftpd/modules/mod_tls.html
#TLSEngine on
#TLSRequired on
#TLSRSACertificateFile /etc/pki/tls/certs/proftpd.pem
#TLSRSACertificateKeyFile /etc/pki/tls/certs/proftpd.pem
#TLSCipherSuite ALL:!ADH:!DES
#TLSOptions NoCertRequest
#TLSVerifyClient off
##TLSRenegotiate ctrl 3600 data 512000 required off timeout 300
#TLSLog /var/log/proftpd/tls.log
TLSEngine on
TLSRequired off
TLSRSACertificateFile /etc/pki/tls/certs/proftpd.pem
TLSRSACertificateKeyFile /etc/pki/tls/certs/proftpd.pem
TLSCipherSuite ALL:!ADH:!DES
TLSOptions NoCertRequest
TLSVerifyClient off
#TLSRenegotiate ctrl 3600 data 512000 required off timeout 300
TLSLog /var/log/proftpd/tls.log
ExtendedLog /var/log/proftpd/access.log WRITE,READ default ←■ 最終行へ追加(アクセスログを記録する)
ExtendedLog /var/log/proftpd/auth.log AUTH auth ←■ 最終行へ追加(認証ログを記録する)
TimesGMT off ←■ 最終行へ追加(ファイルのタイムスタンプを日本時間にする)
:wq ←■ 保存して閉じる
[root@linux ~]#
/var/log/proftpd が無い場合は作成する
[root@linux ~]# mkdir /var/log/proftpd
[root@linux ~]#
xinetd 経由の起動方法 proftpd起動スクリプト(xinetd用)編集
[root@linux ~]# cp -a /etc/xinetd.d/xproftpd /etc/xinetd.d/xproftpd.org ←■ xinetd設定ファイルをバックアップ
[root@linux ~]#
[root@linux ~]# vi /etc/xinetd.d/xproftpd
# default: off
# $Id: proftpd-xinetd,v 1.2 2002/06/10 15:35:47 dude Exp $
# description: The ProFTPD FTP server serves FTP connections. It uses \
# normal, unencrypted usernames and passwords for authentication.
service ftp
{
disable = yes
socket_type = stream
wait = no
user = root
server = /usr/sbin/in.proftpd
#log_on_success += DURATION USERID
↓■ 変更(約30秒かかるログインの時間短縮対策)
log_on_success += HOST PID
#log_on_failure += USERID
↓■ 変更(約30秒かかるログインの時間短縮対策)
log_on_failure += HOST
nice = 10
#disable = yes
↓■ proftpdのxinetd経由起動の有効化
disable = no
env = TZ=JST-9 ←■ ファイルのタイムスタンプを日本時間にする
}
:wq ←■ 保存して閉じる
[root@linux ~]#
ProFTPD 起動設定
xinetd インストール確認
[root@linux ~]# yum list | grep xinetd
xinetd.i386 2:2.3.14-10.el5 base ←■ インストールされていない
xinetd.i386 2:2.3.14-10.el5 installed ←■ インストールされている
[root@linux ~]
xinetd 設定
[root@linux ~]# /etc/rc.d/init.d/xinetd restart ←■ xinetd再起動
xinetd を停止中: [ OK ]
xinetd を起動中: [ OK ]
[root@linux ~]#
[root@linux ~]# chkconfig xproftpd on ←■ xproftpd自動起動設定
[root@linux ~]#
[root@linux ~]# chkconfig --list xproftpd ←■ xproftpd自動起動設定確認
xproftpd on ←■ 自動起動されている
[root@linux ~]#
ProFTPD アクセス制限
FTPサーバーへアクセスできるホストを制限する。
[root@linux ~# echo "in.proftpd: 127.0.0.1" >> /etc/hosts.allow ←■ サーバー自身からのFTPアクセスを許可
[root@linux ~]# echo "in.proftpd: 192.168.1." >> /etc/hosts.allow ←■ 内部(例:192.168.1.XXXからのFTPアクセスを許可)
[root@linux ~]# echo "in.proftpd: .ppp.asahi-net.or.jp" >> /etc/hosts.allow ←■ 外部(例:xxx.ppp.asahi-net.or.jpからのFTPアクセスを許可)
[root@linux ~]# echo "in.proftpd: ALL" >> /etc/hosts.deny ←■ FTPへの全てのアクセスを禁止
サーバー証明書作成(SSL/TLS に対応させた場合)
[root@linux ~]# cd /etc/pki/tls/certs/ ←■ ディレクトリ移動
[root@linux certs]#
[root@linux certs]# make proftpd.pem ←■ サーバー証明書作成
umask 77 ; \
PEM1=`/bin/mktemp /tmp/openssl.XXXXXX` ; \
PEM2=`/bin/mktemp /tmp/openssl.XXXXXX` ; \
/usr/bin/openssl req -utf8 -newkey rsa:1024 -keyout $PEM1 -nodes -x509 -days 365 -out $PEM2 -set_serial 0 ; \
cat $PEM1 > proftpd.pem ; \
echo "" >> proftpd.pem ; \
cat $PEM2 >> proftpd.pem ; \
rm -f $PEM1 $PEM2
Generating a 1024 bit RSA private key
...................++++++
.......++++++
writing new private key to '/tmp/openssl.F18503'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [GB]:JP ←■ 国名を入力
State or Province Name (full name) [Berkshire]:Osaka ←■ 都道府県名を入力
Locality Name (eg, city) [Newbury]:Osaka ←■ 市区町村名を入力
Organization Name (eg, company) [My Company Ltd]:Example ←■ サイト名(何でも良い)を入力
Organizational Unit Name (eg, section) []: ←■ 空 Enter
Common Name (eg, your name or your server's hostname) []:example.jp ←■ ホスト名を入力
Email Address []:hostmaster@example.jp ←■ 管理者メールアドレスを入力
[root@linux ~]#
以上で、設定完了です。
0 件のコメント:
コメントを投稿