○ proftpd.confの設定

・proftpd-1.3.5eで使っています
・完全コピーしないこと (エラーが出ることあり)

・RequireValidShell on (default) になっています
・ログインユーザは 有効なshell (/etc/shellsに記載) を持つこと
・SSL/TLS接続で安全なFTPサイトになるとは限らないので注意します
・TLSProtocolのサポートはopennsslのバージョンにより制限されます
・行頭の数字は説明のための番号です、実際には入れないでください
・"#" で始まる行はコメントとして解釈されます
紫色文字 追加変更した部分です

○proftpd.confの修正

: /etc/proftpd.conf

 
 
 
 
 

001 
002
003
004

 
005
006
007
008
009

010
011
012

013

014
015
016

 
017
018

 
019

 
 
020

 
021
022

 
 
 
 
 
 
023

 
024
025
026
027

 
028
029

 
 
030

031
032
033
034
035

 
036

 
037
038
039
040
041

 
042
043
044
045
046
047
048
049
050
051
052
053
054
055
056

 
057
058

059
060

 
061
062

 
063
064
065

 
 
066
067

 
068
069
070

071
072
073

074
075
076

 
077
078
079
080
# This is a basic ProFTPD configuration file
#
# It establishes a single server and a single anonymous login.
# It assumes that you have a user/group "nobody" and "ftp"
# for normal operation and anon.

ServerIdent on  "Welcome ko-jiya528 server"
ServerName    "ProFTPD Default Installation"
ServerType    standalone
DefaultServer on

# Shared Object (DSO) loading
<IfModule mod_dso.c>
    LoadModule mod_ident.c
    LoadModule mod_unique_id.c
    LoadModule mod_tls_shmcache.c
</IfModule>

IdentLookups    off
UniqueIDEngine  on
#ListOptions    "-a"

TCPAccessFiles  /etc/hosts.allow /etc/hosts.deny

AuthUserFile    /etc/ftpd.passwd
AuthGroupFile   /etc/ftpd.group
AuthOrder mod_auth_file.c mod_auth_unix.c

# Port 21 is the standard FTP port.
Port           21
PassivePorts   50000 50030

# Don't use IPv6 support by default.
UseIPv6        off

# Umask 022 is a good standard umask to prevent new dirs and files
# from being group and world writable.
Umask          022

# Use localtime
TimesGMT off
SetEnv TZ JST-9

# To prevent DoS attacks, set the maximum number of child processes
# to 30.  If you need to allow more than 30 concurrent connections
# at once, simply increase this value.  Note that this ONLY works
# in standalone mode, in inetd mode you should use an inetd server
# that allows you to limit maximum number of processes per service
# (such as xinetd)
MaxInstances  30

# Define the log formats
LogFormat    default    "%h %l %u %t \"%r\" %s %b"
LogFormat    auth       "%v [%P] %h %t \"%r\" %s"
Systemlog    /var/log/proftpd/proftpd.log
TransferLog  /var/log/proftpd/xferlog

# Set the user and group that the server normally runs at.
User        nobody
Group       nobody

# To cause every FTP user to be "jailed" (chrooted) into their home
# directory, uncomment this line.
DefaultRoot    ~   !wheel

<Limit LOGIN>
    Order deny,allow
    Deny from 192.168.0.21
    Allow from 192.168.0.0/24
</Limit>

# Normally, we want files to be overwriteable.
AllowOverwrite  on

# Bar use of SITE CHMOD by default
<Limit SITE_CHMOD>
    Order deny,allow
    Deny from 192.168.0.21
    Allow from 192.168.0.0/24
</Limit>

# mod_tls configuration.
<IfModule mod_tls.c>
    TLSEngine       on
    TLSLog          /var/log/proftpd/tls.log
    TLSProtocol     TLSv1 TLSv1.1 TLSv1.2
    TLSCipherSuite  HIGH:!ADH:!DES
    TLSRequired     off
    TLSRSACertificateFile    /etc/pki/tls/certs/ftp-server.crt
    TLSRSACertificateKeyFile /etc/pki/tls/private/ftp-server.key
    TLSOptions      NoCertRequest NoSessionReuseRequired
    TLSVerifyClient off
    TLSRenegotiate none
    <IfModule mod_tls_shmcache.c>
        TLSSessionCache shm:/file=/var/run/proftpd/sesscache
    </IfModule>
</IfModule>

# A basic anonymous configuration, no upload directories.
<Anonymous /home/ftp>
    TransferRate RETR 10

    User    ftp
    Group   ftp

# We want clients to be able to login with "anonymous" as well as "ftp"
    UserAlias  anonymous ftp
    RequireValidShell off

# Limit the maximum number of anonymous logins
    MaxClients        10
    MaxClientsPerHost 1
    MaxHostsPerUser   1

# We want 'welcome.msg' displayed at login, and '.message'
# displayed in each newly chdired directory.
    DisplayLogin     welcome.msg
    DisplayChdir     .message

# Limit WRITE everywhere in the anonymous chroot
    <Limit WRITE>
      DenyAll
    </Limit>

    <Limit LOGIN>
        AllowAll
    </Limit>

    <Limit SITE_CHMOD>
        DenyAll
    </Limit>

    # Logging for the anonymous transfers
    WtmpLog        off    
    ExtendedLog    /var/log/proftpd/access.log WRITE,READ default
    ExtendedLog    /var/log/proftpd/auth.log AUTH auth
</Anonymous>

○簡単な説明

001 サーバにアクセスしたときに表示される名前

ServerIdent on の後に表示したいコメントを追加します
003 /etc/rc.d/init.d/proftpdスクリプトで起動します
005-009  dsoでsharedモデュールを組み込む
010 identdの名前解決を無視
011 FTPセッションごとにuniqueなIDをふる(デフォルト ON)
012 FFFTPなどの -a オプションで.(ドット)ファイルを表示
013 /etc/hosts.allow,hosts.denyによるアドレス制御

1.3.3ではコンソールにログを出す(bug?)のでログの出力を変更します
014-016 ftp専用パスワードによる認証と、unixパスワードによる認証の設定
014 ftp専用ユーザファイル
015 ftp専用グループファイル
016 ログイン認証の優先順
018 passive接続で使うport範囲を設定します
019 IPv6を使わない
021-022 時間設定をlocal(日本時間)にします
024-025 ログフォーマットを定義します
026 システムログを専用のログファイルに出力します
027 転送ログを専用のログファイルに出力します
029 Groupをnobodyに変更します
030 chrootの設定 wheelグループ以外homeディレクトリを抜けられません
031-035 ログイン制限です Localネットワークのみ許可

denyを最初にチェックし、該当する場合はallowをチェックしません

denyに該当しない場合、allowがチェックされます
037-041 アクセス権の変更制限です Localネットワークのみ許可

denyを最初にチェックし、該当する場合はallowをチェックしません

denyに該当しない場合、allowがチェックされます
042-056 SSL/TLSで接続するための設定です
静的にmod_tlsを組み込んでいるのでLoadModuleの設定はしていません
043 SSL/TLS protocol engineの使用許可
044 mod_tlsのログを取ります、ログを書き出すファイルを指定します
045 SSL/TLS プロトコルのバージョンを指定します
046 SSL/TLS 接続の暗号強度を上げます
047 SSL/TLSを強制しない、通常のFTP接続も許可されます
048-049 証明書と秘密鍵を指定します(作成は省略)
050 NoCertRequest 証明書の警告をださない
NoSessionReuseRequired SSLセッションの再利用を許可しない
051 クライアント証明書を使用しない
052 1つのファイルをデータ転送中にりネゴシエーションを行なわない
053-055 TLSSessionCacheをファイルとして設定します
057-080 Anonymous接続の設定です
057 Anonymous接続のディレクトリを/home/ftpに設定
058 速度制限をしています ダウン 10Kbite/s
062 ユーザーのログインシェルをチェックしない
064 マルチクライアントの制限
065 マルチホストの制限
071-073 031-035のログイン制限の緩和 全てのアドレスからの接続を許可
074-076 037-041のアクセス権の変更制限の強化 全てのアドレスからの変更を禁止
077-079 Anonymous接続専用のログを取ります
077 Anonymousログインをwtmpファイルに記録しない

○ Copyright(c) 528p.com All Rights Reserved.