Mac OS X で多くの問題が発生しています。システムは SSH 経由でのみアクセス可能で、FTP や SMB ではアクセスできません。そのため、FTP に集中してみました。デバッグが簡単そうで、両方のサービスに同じ問題があるのかもしれません。
まず、次のコマンドで ftpd を有効にしました:
sudo -s launchctl load -w /System/Library/LaunchDaemons/ftp.plist
次に FTP を試みます。しかし何も起こりません。標準エラー「操作がタイムアウトしました」が表示されます。
その後、もう一度試して、MacBook Pro で tcpdump を作成しました。私の場合は問題ないようです。
tdmacpro:~ root# tcpdump port 21
tcpdump: data link type PKTAP
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on pktap, link-type PKTAP (Packet Tap), capture size 65535 bytes
17:32:53.539323 IP 192.168.0.58.49191 > 192.168.0.2.ftp: Flags [S], seq 2091779555, win 65535, options [mss 1460,nop,wscale 3,nop,nop,TS val 271391148 ecr 0,sackOK,eol], length 0
つまり、パケットは MacBook Pro に到達しているが、応答がないということです。
その後、スイッチに問題がないことを確認するために、MacBook Pro に新しい仮想マシンを作成しました。すると、FTP クライアントが仮想マシンにインストールされました。しかし、同じエラーが発生しました。
その後、ftp user@MBP_IP を試しましたが、やはり同じエラーが発生しました。
その後、fptdを無効にしました
sudo -s launchctl unload -w /System/Library/LaunchDaemons/ftp.plist
そしてftpdを手動で起動しました
/usr/libexec/ftpd -d -D -l -U
再び同じ問題。
次に、別のターミナルを使用して以下を作成しました。
ftp localhost
これは動作します。したがって、ftpd は適切に構成されていると思います。ただし、ftp.plist
新しいインストールでも制御しました。同じ内容です。
それで、問題を切り分ける方法や解決方法についてさらに何か提案がある人はいませんか?
答え1
これを介して接続しようとしています:
ftp localhost
あなたが現在誰もが使用しているsftp
SSH の変種がどれなのか知りたいと思う場合、非 SSH FTP はあまりにも脆弱です。代わりにこれを試してください:ftp
sftp localhost
あるいはこれ:
sftp user@localhost
答え2
そこで問題を解決しました。ユーザーの LaunchDaemons ディレクトリに別のファイルがありました。このファイルには間違った起動コマンド ライン スイッチがありました。このファイルを削除したら、アクセスが機能しました。