初歩的な質問ですが教えてください。
RedhatLinux9.0を初めて導入し、これからftpサーバーを構築しようと思います。
そこで、Linuxのインストール時にrpmで追加したvsftpdがあるのですが、これを使わないで、ProFTPDをソースで新規にインストールしようと思います。
インストールした際には、Xinetdで自動起動させたいと思っていますが、もともとrpmで追加されているvsftpdを先にアンインストールしてから、ProFTPDをコンパイル、インストールするのでしょうか?
> 初歩的な質問ですが教えてください。
>
> RedhatLinux9.0を初めて導入し、これからftpサーバーを構築しようと思います。
> そこで、Linuxのインストール時にrpmで追加したvsftpdがあるのですが、これを使わないで、ProFTPDをソースで新規にインストールしようと思います。
> インストールした際には、Xinetdで自動起動させたいと思っていますが、もともとrpmで追加されている>vsftpdを先にアンインストールしてから、ProFTPDをコンパイル、インストールするのでしょうか?
>
一応、考え方としては間違ってないと思います、おおまかな手順としては
最初にvsftpdのデーモンを停止!
その後に、方法は問いませんが、vsftpdのファイルを削除!
そしてサービスも序に削除!
そして、/etc/xinetd.d/以下にproftpdを作成して以下を記述
# default: on
# description: The proftpd FTP server serves FTP connections. It uses \
# normal, unencrypted usernames and passwords for authentication.
service ftp
{
disable = no
flags = REUSE NAMEINARGS
socket_type = stream
protocol = tcp
wait = no
user = root
server = /usr/sbin/tcpd
server_args = /usr/sbin/.proftpd
log_on_success = HOST PID
log_on_failure = HOST
}
そして、上記内容を記入した後、今度は、シンボリックリンクを張る為
のコマンドを実行して下さい、下記
$ ln -s /usr/sbin/proftpd /usr/sbin/.proftpd (Enter 再起動)
これで反映されると思いきや、これではまだ起動はしますが、何故か接続出来
ません、その後で.confファイルを少し編集致(下記)します、その直後接続が
出来る様になります、方法は次へ記載しています。
# This is a basic ProFTPD configuration file (rename it to
# 'proftpd.conf' for actual use. 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.
ServerName "OITAinternet-USAinternetProject"
#ご自身の好み
ServerType inetd
DefaultServer on
DeleteAbortedStores on
#アップロード失敗ファイルの自動削除(非常に便利)
UseReverseDNS off
IdentLookups off
TimesGMT off
#時刻合わせ(無条件に必須項目)
TimeoutIdle 600
#無通信時間等の設定!
TimeoutLogin 300
#何故か、設定して置いた方
#が調子が良い見たいです。
TimeoutNoTransfer 600
TimeoutStalled 3600
# Port 21 is the standard FTP port.
Port 21
PassivePorts 1024 65535
#こんなに無くても良い
# Umask 022 is a good standard umask to prevent new dirs and files
# from being group and world writable.
Umask 022
# 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 10
# Set the user and group under which the server will run.
User nobody
Group nobody
# To cause every FTP user to be "jailed" (chrooted) into their home
# directory, uncomment this line.
DefaultRoot ~
#FTP転送ソフトで上位パーミッションを変更する時はコメントの事
# Normally, we want files to be overwriteable.
<Directory /*>
AllowOverwrite on
HideNoAccess on
<Limit All>
IgnoreHidden on
</Limit>
</Directory>
# A basic anonymous configuration, no upload directories.
<Anonymous /home/Www/Pub>
#(Anonymousは全面コメントアウトでも良い)
User ftp
Group ftp
# We want clients to be able to login with "anonymous" as well as "ftp"
UserAlias anonymous ftp
# Limit the maximum number of anonymous logins
MaxClients 10
# do not require shells listed in /etc/shells (user ftp do not have shell...)
RequireValidShell no
# We want 'welcome.msg' displayed at login, and '.message' displayed
# in each newly chdired directory.
DisplayLogin welcome.msg
DisplayFirstChdir .message
# Limit WRITE everywhere in the anonymous chroot
<Limit WRITE>
DenyAll
</Limit>
</Anonymous>
以上、ProftpD_1.2.9rc1で確認済み。
事細かく教えて頂いてありがとうございます。
> 最初にvsftpdのデーモンを停止!
> その後に、方法は問いませんが、vsftpdのファイルを削除!
> そしてサービスも序に削除!
この通り行いソースをダウンロードしてきたのですが、いざ展開しコンパイルしようとしたところ、[root@******** proftpd-1.2.9rc1]# ./configure
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking target system type... i686-pc-linux-gnu
checking for gcc... no
checking for cc... no
checking for cc... no
checking for cl... no
configure: error: no acceptable C compiler found in $PATH
See `config.log' for more details.
となりその後「make」しても「****ターゲットが見付かりません。」のエラーが出ます。
調べたところ、http://mm.apache.or.jp/pipermail/newbie/2002-September/003066.html に解決策らしきものがあったのですが、今一よく解りません。
どうすれば良いですか?
こんばんは。
> > 最初にvsftpdのデーモンを停止!
> > その後に、方法は問いませんが、vsftpdのファイルを削除!
> > そしてサービスも序に削除!
> この通り行いソースをダウンロードしてきたのですが、いざ展開しコンパイルしようとしたところ、
rpm -e vsftpd-***
> [root@******** proftpd-1.2.9rc1]# ./configure
> checking build system type... i686-pc-linux-gnu
> checking host system type... i686-pc-linux-gnu
> checking target system type... i686-pc-linux-gnu
> checking for gcc... no
> checking for cc... no
> checking for cc... no
> checking for cl... no
> configure: error: no acceptable C compiler found in $PATH
> See `config.log' for more details.
>
> となりその後「make」しても「****ターゲットが見付かりません。」のエラーが出ます。
> 調べたところ、http://mm.apache.or.jp/pipermail/newbie/2002-September/003066.html に解決策らしきものがあったのですが、今一よく解りません。
RedHatのCDで開発ツールをインスコしてください。
設定は、そこらじゅうにあるので、自分が何をしたいのか決めて、それぞれのディレクティブの意味を理解して自分の意志で設定してください。おやじもHPどおりではありません。全ては明かせませんので。
途中経過ですが・・・
> RedHatのCDで開発ツールをインスコしてください。
そうなんですよね。以前に「redhatnetwork」でアップデートを行った際に、
依存関係を破壊してしまったらしく、開発ツールをインスコしようとすると、
エラーが出て「Openssl-devel-0.9.7a-2」と「Krb5-devel-1.2.7.8」(だったかなぁ)が
見当たらず追加できなかったんです。
今回、CDからこの2つのrpmにダウンデートを行い、それと、何故か行方不明
になっていたrpm(Openssl-0.9.7a-2)も依存関係があったらしく再インストールしました。
その後、make installまで実施し何とかインストールを完了しました。
proftpd.confの設定もおやじさんのを取り合えず真似てみました。
しかし、同一LAN上のWinxp(Pro)から、proftpd.confに設定しているグループ(おやじさんの
設定だと!Wheel)でログインできません。
どこか設定がオカシイのかなぁ。
※TCP21番ポートは空けています。PASVモードを利用する設定ですが、
このポートフォワーディング(例えば4000-4029)はサーバ及びルータ共に必要でしょうか?
こんばんは。
> proftpd.confの設定もおやじさんのを取り合えず真似てみました。
> しかし、同一LAN上のWinxp(Pro)から、proftpd.confに設定しているグループ(おやじさんの
> 設定だと!Wheel)でログインできません。
>
> どこか設定がオカシイのかなぁ。
そのユーザは、usersグループをメインにして、かつwheelグループに入っていますか?
> ※TCP21番ポートは空けています。PASVモードを利用する設定ですが、
> このポートフォワーディング(例えば4000-4029)はサーバ及びルータ共に必要でしょうか?
FTPって難しいですかね。まだ、説明が不足しているのでしょうね。FTPサーバの公開についても是非読んでください。
PASVの場合、データコネクションはWAN側から接続されてきますので、WWWサーバアクセスと同じです。従って、フィルタも開け、ポートマッピングもしてあげなければサーバにはパケットは到達できません。また、ポート範囲を限定しなければ1024〜65535までのそのとき使用されていないポートでProftpdは待ち受け、そのポート番号をクライアントに通知しますので、全てのポートをサーバに向けなければなりませんし、フィルタも開けることになります。従って、PassivePortsで使用範囲を限定しているのです。
更に、MasqueradeAddressを設定してあげないと、Proftpdは自分のプライベートアドレスを通知してしまいますので、クライアント側で外にでられず、全くつながりません。
なお、ルータによっては(DR202やOPT90等)、PASVモードのサーバ側モードをサポートしていますので、その場合は、サーバ・ルータともこれらの設定は不要です。
PS: ProFTPdの付加的なパラメータについて、追記しました。大分インターネットさんもかかれていますが、TimesGMTは国内サイトなら設定しておいたほうがいいですね。