コマンドラインからproftpdを起動できない理由を教えてください

このQ&Aのポイント
  • Linuxでftpサーバーを立ち上げようとしていますが、コマンドラインからproftpdを起動しようとすると「Fatal: Socket operation on non-socket」というエラーメッセージが表示されます。
  • 問題の解決方法として、「proftpd.conf」設定ファイルを編集し、「ServerType」ディレクティブを追加または編集する必要があります。
  • 現在の設定では、「ServerType inetd」となっているため、正しく動作しません。
回答を見る
  • ベストアンサー

コマンドライン からproftpd を起動しようとすると、proftpd が起動しません。

こんばんわ, 現在Linuxでftpサーバー(インターネット)を立ち上げようと挑戦しています。 とりあえず,インストールは終わり,基本的な設定は終わったのですが,タイトルどおりコマンドライン からproftpd を起動しようとすると、"Fatal: Socket operation on non-socket"というメッセージが出て、proftpd が起動しません。http://www.infoscience.co.jp/technical/proftpd/configuration.html によると,それは,「proftpd.conf 設定ファイルを編集して、ServerType directive を読み込むように、追加、編集する必要があります」とありますが, 私のetc/proftpd/proftpd.confの中身は 「ServerType    inetd」 にしています。何がおかしいのでしょうか。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • xjd
  • ベストアンサー率63% (1021/1612)
回答No.1

ServerType standalone にして、 # service proftpd stop <ENTER> # service proftpd start <ENTER> ではどうですか?

その他の回答 (1)

  • xjd
  • ベストアンサー率63% (1021/1612)
回答No.2

ちなみに、#1はproftpdを常駐させる場合です。 inetd経由でproftpdを起動させたい場合は、 /etc/proftpd.confは ServerType inetd /etc/inetd.confで ftp ....... in.proftpd の行を有効にする。 /etc/hosts.allowで in.proftpd : 192.168.0.0/255.255.255.0 みたいに接続許可を与える。 inetdデーモンの再起動 また、inetdではなくxinetdの場合は /etc/xinetd.d/proftpdで disable=no とします。

関連するQ&A

  • ProFTPDをinetdで起動じにエラー

    VineLinux2.6を使っています。 ProFTPDをスタンドアロンからinetdで起動に変更したら、パソコン起動時に[FAILED]と表示されます。それでもFFFTPなどからアクセスはできるんですが。。。。ただ起動時にエラーでます。メッセージ内容は ホスト名 -fatal:socket operation on non-socket ホスト名 -(Running from command line? Use `Servertype standalone` in config file. とでます。 inetdで使うにはどうすればよいでしょうか?

  • xinetdとproftpdについて

    宜しくお願いします。 xinetdを使いproftpdでFTPの設定を行っております。 FTPポートにIPアドレスを追加したいので、proftpd.confに追加するIPをonly_formで追加したので、xinetdとproftpdを再起動しようとしたのですが、xinetdは問題なく再起動できたのですが、proftpdが再起動できません。こんなエラーが返されます。 logs - fatal: Socket operation on non-socket logs - (Running from command line? Use `ServerType standalone' in config file!) /etc/xinetd.confの内容は defaults { instances = 60 log_type = SYSLOG authpriv log_on_success = HOST PID log_on_failure = HOST cps = 25 30 } includedir /etc/xinetd.d となっております。(コメント行は省いています。) /etc/xinetd.d/proftpdの内容は ervice ftp { socket_type = stream wait = no user = root server = /usr/local/sbin/in.proftpd log_on_success += DURATION USERID log_on_failure += USERID nice = 10 disable = no only_form = ***.***.***.*** } となっております。 proftpdが再起動できないので、設定が反映されず、上記のonly_formのIPアドレスでアクセスできません。

  • proftpdが起動できません

    proftpdのrpmパッケージをインストールいたしまして、 confを初期のまま実行したところ起動しませんでした。(失敗と表示されます) ファイアウォール、SELINUXを無効にしましたが同様でした。 インストールしましたバージョンは以下のものです。  proftpd-1.3.1-3.fc8.x86_64.rpm Fedora8 64bit版をインストールしています。 CPUはAthlon64 X2(Socket AM2)です。 新規インストール時、OSディスクからFTP(vstpd)はインストールしていません。 「rpm -qa | grep -i ftp」とコマンドしたところ、 以下のパッケージが確認されましたが、関係ありますでしょうか?  gnome-vsf2-obexftp-0.4-2.fc8  proftpd-1.3.1-3.fc8  lftp-3.5.14-3.fc8  lftp-3.5.14-3.fc8  ftp-0.17-43.fc8 confの設定どころか、その手前で行き詰まっております。 解決方法が分かりました教えていただきたいです。 宜しくお願いいたします。

  • RedHat9.0 + ProFTPD1.28が、ローカルホスト上でうまく動作しません

    おはようございます。 RedHat9.0 + ProFTPD1.28が、ローカルホスト上でうまく動作しません。 これまでどのような設定を行ったかと言うと、、、 (設定は全てWebmin1.090で行っています) 1.Webmin - 「サーバー」-「ProFTPD Server」-「Edit Config Files」で、/etc/proftpd.confを、下記の通りに編集 ServerName "vacuus FTP Server" ServerType inetd DefaultServer on ServerIdent on "FTP server ready." UseReverseDNS off IdentLookups off DefaultRoot ~ !admin Port 21 Umask 022 TimeGMT FALSE MaxInstances 30 ExtendedLog /var/log/roftpd.log User nobody Group nobody <Directory /*> AllowOverwrite on </Directory> 2.エディタで/etc/xinetd.d/ftpファイルを新規に作成、ファイルの内容は下記の通り。 114-7 service ftp { disable = no socket_type = stream protocol = tcp wait = no user = root server = /user/sbin/in.proftpd } 3.xinetd.dの変更を反映させるために、Webmin - 「サーバー」-「ネットワーク」-「拡張インターネットサービス」で、「変更を適用」をクリック 4.システムを再起動、その後rootで、ログイン 1~4の作業を実施した後、 [root@vacuus root]# ftp localhost とすると、 ftp: connect: Connection refused となってしまいます。 設定に何が不足しているのか、もしおわかりになる方がいたら、教えてください。

  • proftpd inetd に変更する方法?

    現在、Centos8 準拠の国産の Miracle Linux 8.6 を使って standalone 方式で FTP サーバーを立ち上げましたが、DDNS を使って外部からアクセスできるようにするには、inetd 方式にする必要があることがわかりました。(standaloneだとIPが変わっても追従できない。) そこで、現在 LAN 内部では正常に動作している standalone 方式の proftpd を inetd 方式に変更したいのですが、やり方がわからず困っています。 ご教示頂きたく、よろしくお願いいたします。 <私の方でやった事> (1)xinetdをインストール # dnf -y install xinetd (2)xinetdを起動 # systemctl start xinetd.service (3)xinetdの状態確認 # systemctl status xinetd.service systemctl status xinetd.service ● xinetd.service - Xinetd A Powerful Replacement For Inetd Loaded: loaded (/usr/lib/systemd/system/xinetd.service; enabled; vendor preset: enabled) Active: active (running) since Sat 2023-03-25 00:08:38 JST; 4min 33s ago Docs: man:xinetd man:xinetd.conf man:xinetd.log     (以下省略) Active: active (running) となっているので正常動作中と判断しました。 (4)proftpd.conf を修正する。 # vi /usr/local/etc/proftpd.conf ServerType standalone  から ServerType inetd (5)proftpd と xinetd を再起動。 # systemctl restart proftpd # systemctl restart xinetd.service proftpd 関連の「必要な処理」が何もされていないためか、この状態では proftpd は動作していません。 下記のように Active: failed となります。 # systemctl status proftpd ● proftpd.service - proftpd Loaded: loaded (/etc/systemd/system/proftpd.service; enabled; vendor preset: disabled) Active: failed (Result: exit-code) since Sat 2023-03-25 00:28:31 JST; 33min ago Main PID: 1695 (code=exited, status=1/FAILURE) standalone 方式の時、 /etc/systemd/system/proftpd.service という名で、以下の内容が記載されているファイルを作成しましたが [Unit] Description=proftpd After=network.target [Service] Type=simple RemainAfterExit=yes ExecStart=/usr/local/sbin/proftpd [Install] WantedBy=multi-user.target これが inetd 方式になるとどうなるのか、も良くわかりません。 また上記の「必要な処理」をネットで探したのですが、私には旧方式のもの(systemctl ではなく init.d/xinetd restart のような)しか見つかりませんでした。 以上のような状況です。 解決方法を、ご教示頂きたく、よろしくお願いいたします。

  • Proftpdで9時間ずれる

    Proftpdで9時間ずれるのを修正する方法を教えてください。 proftpd.confでTimesGMTの値をonやoffにしてみたのですがその方法では解決しなかったので別の方法を教えてください。 rootでProftpdを使った場合には時間は正常でした。 Proftpdはinetdの形式で起動しています。

  • ProFTPd + iconvパッチ CharsetLocal が unknown

    ProFTPd に iconv パッチをあて proftpd.confに CharsetLocal UTF-8 CharsetRemote CP932 この2つの設定をしたところ、 noppi@sv:/usr/local/src$ /usr/local/sbin/proftpd -t Checking syntax of configuration file - Fatal: unknown configuration directive 'CharsetLocal' on line 43 of '/usr/local/etc/proftpd.conf' となってしまいます。 -l で確認するとCompiled-in modules:にはmod_codeconv.cが含まれているので、パッチあてとビルドはできていると思います。 また、Charset系のオプションをはずすと、inet.dから正しく起こされます。 原因や対策などご存知の方、よろしくお願いいたします。 OS:Debian Etch Linux 2.6.22 コマンド: cd /usr/local/src wget ftp://ftp.proftpd.org/distrib/source/proftpd-1.3.0.tar.gz wget http://www.hakusan.tsg.ne.jp/tjkawa/software/misc/proftpd-iconv/pack/proftpd-1.3.0-iconv.patch.gz wget http://www.hayasoft.com/JP/software/linux/proftpd-1.3.0-nlst-ffftp.patch tar -zxvf proftpd-1.3.0.tar.gz gzip -d proftpd-1.3.0-iconv.patch.gz patch -p0 < proftpd-1.3.0-iconv.patch patch -p0 < proftpd-1.3.0-nlst-ffftp.patch cd proftpd-1.3.0 ./configure --prefix=/usr --with-modules=mod_codeconv:mod_df make make install

  • TurboLinux6.5でftpできない。

    すみません。初心者でまったくわかってないんですけど TurboLinux6.5でftpできません。 win95端末とLinuxでHUB経由でつないでるだけなんですが、 win95側からftp 192.168.1.10(LinuxIPアドレス) で行なうと Connection closed by remort host とでて Linux端末の/var/log/messageには Failed binding to 0.0.0.0, port 21: Address already in use Check the ServerType directive to ensure you are configured correctly. てでます。 えーと設定は /etc/inetd.conf のftpは有効にしました。 /etc/hosts.allow はALL:192.168.1.0/255.255.255.0 にしました。設定変更後再起動もおこないました。 ちなみにtelnet はできます。 どうすればよいのでしょうか? よろしくおねがいします

  • inetd.conf がないのです。

    wu-ftp を使おうとして、/etc/inetd.confを設定しようとしたら、/etc/inetd.confがありません。 /etc/inetd.conf は何から生成されるのでしょうか。 tcp wrapper でしょうか。 osは redhat linux です。

  • proftpdの設定(SSLを含む)

    現在、CentOS5.0の環境で、proftpdの稼動をさせようとしています。 proftpdの長所ともいえるSSLを使用した環境で、FTPの通信をさせる予定です。RPM形式でproftpdをダウンロードし、SSLをするための設定を proftpd.confに記載したいのですが、記載方法がわかりません。 また、SSLを使用する際に、事前にしなければならない事を教えて下さい。また、SSLの環境で、ftp通信をさせていれば、具体的な設定方法を教えて下さい。どこから、どのように手をつけてよいのかわかりません。よろしくお願い致します。