FTPクライアントから公開ディレクトリが見えない 原因究明〜対処

クライアント様のサーバーからサイトデータをダウンロードする為、FTPクライアンで接続するも公開ディレクトリが見当たらず、悪戦苦闘した為、備忘録として記事にしました。
サーバーはBizメール&ウェブ ビジネス
サーバーはNTTコミュニケーションズが運営する「Bizメール&ウェブ ビジネス」、前任の管理者は既にいないのでサーバー情報からFTP情報をなんとか探し出しアクセスするも公開ディレクトリが見当たらない。

通常のディレクトリ構造だと「www」内に「htdocs」や「public_html」などの公開ディレクトリが設置されているが見当たらず。
手動で「htdocs」を作成してみた
確認のため手動で「htdocs」を作成してみたが、パーミッションのエラーで作成不可。その他の名称の場合はディレクトリを作成できるので存在している可能性が高い。
サーバーコントロールパネルを調査
サーバーにログインして情報がないか確認してみた。
仮者の権限で操作できる「ファイルマネージャー」があったのでそこから確認。

FTPでアクセスした「www」ディレクトがあったのでアクセス。

やはり「htdocs」が存在していた。
ファイルマネージャーでは確認できるがFTP接続で確認できない原因として考えられるのが、
- Apache(アパッチ)や.htaccessでの設定で意図的にしている
- 以前ローカル環境で、対応していない記述を.htaccessに設定した時、.htaccessを設置しているディレクトリが見えない現象が起きたので、記述間違い。
この程度しか思い浮かばず、とりあえず.htaccessの内容を確認してみたがときにそれらしきものが見当たらなかった。
ファイルリストを確認していると「.ftpaccess」なるファイルが存在している。
個人的には初めて見るファイル名なので中身を確認。
「ファイルマネージャー」でのファイルの確認方法は、確認したファイルの「詳細」ボタンをクリックする。

.ftpaccessとは?
フォルダ単位で、FTPに関する設定を行うことが出来る設定ファイル。
「.ftpaccess」というファイル名に指定の記述をすることにより、FTP接続元の制限などを行うことができ、設置フォルダ以下の領域にその影響が及ぶ。
1 2 3 4 5 | <Limit ALL> Order Allow, Deny Deny from all Allow from [IPアドレス] </Limit> |
[IPアドレス]部分に許可したいIPアドレスを記述、複数記述も可能。
1 2 3 4 5 6 7 | <Limit ALL> Order Allow, Deny Deny from all Allow from [IPアドレス1] Allow from [IPアドレス2] Allow from [IPアドレス3] </Limit> |
記述内容の説明
- Order Allow,Deny
許可、拒否の優先順位を指定 - Deny from all
「all」を指定し全てのFTP接続を拒否 - Allow from [IPアドレス]
指定IPアドレスからの接続を許可
.ftpaccessを編集
.ftpaccessの中は下記の記述(※IPアドレスは変更しています)
1 2 3 4 5 6 | <Limit ALL> Order Allow,Deny Allow from 111.222.333.444 Allow from 555.666.777.888 Deny from all </Limit> |
.ftpaccessでFTPアクセスのIP制限をかけていた。
とりあえず全てコメントアウトして「保存」をクリック。
1 2 3 4 5 6 | #<Limit ALL> #Order Allow,Deny #Allow from 111.222.333.444 #Allow from 555.666.777.888 #Deny from all #</Limit> |

再度FTPクライアントからアクセス
.ftpaccess内の記述を全てコメントアウトし、再度FTPクライアントからアクセスすると「htdocs」が確認できました。

まとめ
サーバーコントロールパネルを利用してhttp通信やftp通信を制限する設定はよく見かけるので解決が早いが今回は、サーバー内にファイルで設置されていたので、解決まで時間がかかってしまいました。
S.E->お勧め記事;
- レンタルサーバー ロリポップを契約〜WordPress設定「ハイスピードプラン」を試してみた。
- ブラウザで利用中のSSL-ルート証明書-の確認方法
- WordPress でブログを始める〜レンタルサーバー、ドメイン取得〜簡単に設定する方法
- レンタルサーバー-XSERVERを契約〜WordPress設定を試してみた
- SPAMHAUSのブロックリストにサーバーのIPアドレスが登録される場合の対処法
- スパムメール解析-【緊急】楽天カードから緊急のご連絡
- SSL Let’s Encryptの証明書を利用している場合Android7.1以前の環境でサイトが閲覧不可に
- レンタルサーバー-さくらレンタルサーバーを契約〜WordPress設定を試してみた
- 属性型JPドメイン・汎用型JPドメインとは?違いは?
S.E->PR;
チームのタスク管理ツール【backlog】
FREENANCE(フリーナンス)
S.E->Weekly Ranking;
S.E->プロフィール;

