ずっと、CentOS7 鯖に FTP接続できなくて、何度か挑戦したのだけれど
そのつど、失敗していました。
しかたがないので、Webmin を使ってファイルのアップロードをしてたり
してましたが、やっぱり不便で、なんとかしなければ…と思いつつ月日が
流れたのでした。
しかし、今回はやりました。
2015/10/02 00:38 ついに解決!
「centos7 vsftpd 接続できない」 で検索し、半日以上かけて、
ありとあらゆる手を使ったけれど、
530 Permission denied[許可されていません].
というエラーで、どうにも接続できないままでした。
めぐりめぐって、
http://qiita.com/tadnakam/items/e53e95389c6dd968820f
の記述に従って、vsftpd.conf を
listen=NO
listen_ipv6=YES
に変更してみると(実は、今回も、この変更してみてたりしたけど
繋がらなかったので、戻してた。本来は、
listen=YES
listen_ipv6=NO
のはずですもんね。)
今まで気づかなかっただけなのか、エラーメッセージが
500 OOPS: cannot change directory:/home/ユーザー名
に変化してます。
ここで、再び、悪戦苦闘。SELinux は、無効にしてあるし、
いくら調べても、エラーが消えません。いろいろ、試すうちに、
mkdir /home/ユーザー名
で、home ディレクトリの下に、FTPユーザー名のディレクトリを
作ったら、ハイ!できました。
そういえば、どこかに、home ディレクトリに接続しようと
するので、vsftpd.conf に追加記述したという回避策を書いた
ページもありました。
》 # 最終行へ追記
》 # ルートディレクトリ指定 (指定しない場合はホームディレクトリがルートディレクトリとなる)
》 local_root=public_html
↑↑↑に従って追加もしてみたけれど、効果がありませんでした。
今、思えば中身を理解してなくて、記述を間違えたのでウマクいかなかったのでしょう。
vsftpd に接続すると、まず、/home/ユーザー名 に繋いで、そのあと、
FTPソフト側の設定に従って、ホスト開始フォルダ(/var/www/html など)が
表示されるという仕組みなのね。そこのところの理解ができていなくて
/var/www/html/home/ユーザー名 というようなディレクトリを無駄に作って
いたのでした。
さあ、念願のFTP接続が可能になったとなると、perl や、PHP 、mysql なども
使えるようにしなければ…
それにしても、記録を見てみると、CentOS7 を導入したのは、
去年の10月3日!実に1年がかりという大ハマリでした。
おめでとうございます。
うちのブログリンクにちゃんと最新記事が出るようになっていましたよ〜。
言うなれば間違った設定をしなければ繋がらないというヤツですからねぇ。
情報がなければ、自分だけで解決するのはムリです。しかも、正しい
設定をして繋がってる人も多いようなので、何らかの複合的要件が
作用しているのでしょう。
ブログリンクの件は、公開前の仮設定を公開後に元に戻さねばならないのを
私が忘れていたのが原因で、こういう物忘れミスや綴りの間違いによる
不具合は、いくら情報を集めてもピッタリと解決に結びつく情報に
行き着くことは、まずありません。他のことで該当ファイルを開いて、
たまたま、仮設定を元に戻していないのを見つけたから解決できましたが、
ほとんど僥倖によるものでした。