Webブラウザで動作するPHP対応ターミナルエミュレータのまとめ

レンタルサーバーの機能の一つにSSH(シェルログイン)対応があります。Webサイトの運営に必須の機能ではありませんが、使えるのと使えないのとでは大きな差があります。例えば、curlコマンドやwgetコマンドで、サーバーにファイルを直接ダウンロードでき、アーカイブファイルならそのままサーバー上で展開できます。わざわざローカル(自分のパソコン)でダウンロードと展開、さらにFTPでアップロードするという手間が省けます。他にもファイル操作が簡単になるなど、Webサイトの効率的な管理が可能となります。

ここで紹介するツールは、Webブラウザ上でターミナルをエミュレートするものです。すべてPHPスクリプトなので、ほとんどのレンタルサーバーで動作します。SSH非対応のレンタルサーバーで役立つでしょう。

簡単に利用方法を紹介します。

注意
利用する場合、.htaccess等でアクセス制限を行ってください。セキュリティ対策を怠ると、簡単にコンテンツ(ファイル)を不正操作されます。
利用方法が分からない場合は、同梱されているreadmeなどを参考にしてください。

Fro Term

Fro_Term download | SourceForge.net

  • ファイルをダウンロードして展開します。
  • Webブラウザでアクセスできるディレクトリにアップロードします。
  • 「config.inc.php.dist」を「config.inc.php」に変更します。

Fro Termには認証機能があるので、「config.inc.php」にユーザー名とパスワードを追加します。

// config.inc.php 7行目
// who has access?
$access = array("user1" => "pass1"); //ここを修正(追加)する
  • Webブラウザで「index.php」へアクセスします。
  • 認証ダイアログが表示されるので、先ほどのユーザー名とパスワードを入力します。
PHP7
ereg()preg_match()に置き換える必要があります。

PHPTerm (PHP Shell Terminal)

  • ファイルを展開してサーバーにアップロードします。
  • phpterm.phpに認証情報があるので修正(追加)します。
// phpterm.php 38行目
$passwd = array('' => ''); // ここにユーザー名とパスワードを入力
  • Webブラウザで「phpterm.php」にアクセスします。
  • 認証ダイアログにユーザー名とパスワードを入力します。
PHP7
ereg()preg_match()に置き換える必要があります。

Shell Commander

Shell Commander download | SourceForge.net

  • ファイルを展開してサーバーにアップロードします。
  • 「shcmd.php」にユーザー名とパスワードを追加します。
// shcmd.php 52行目移行
//............................................................. USER ACCOUNTS
// The passwords should be stored with their md5 sums.
// For example, the following two lines do one and the same thing. If you
// uncomment one of them it creates an user account with username 'user' and
// password 'pass'.
//
// $user[] = "user";    $pass[] = md5("pass");
// $user[] = "user";    $pass[] = "1a1dc91c907325c69271ddf0c944bc72";
//
// You can add more than one user accounts.

$user[] = "hostingstock";
$pass[] = md5("password");
  • Webブラウザで「shcmd.php」にアクセスします。
  • 画面下部の「Login:」にユーザー名を入力します。
  • 画面下部の「Password:」にパスワードを入力します。
PHP7
動作します。

PHP Shell

PHP Shell

  • ファイルを展開してサーバーにアップロードします。
  • 「config.php」を編集します。
config.php 19行目移行

[users]

; The default configuration has no users defined, you have to add your
; own (choose good passwords!).  Add uses as simple
;
;   username = "password"
;
; lines.  Please quote your password using double-quotes as shown.
; The semi-colon ':' is a reserved character, so do  *not*  use that in
; your passwords.
;
; For improved security it is  *strongly suggested*  that you the
; pwhash.php script to generate a hashed password and store that
; instead of the normal clear text password.  Keeping your passwords
; in hashed form ensures that they cannot be found, even if this file
; is disclosed.  The passwords are still visible in clear text during
; the login, though.  Please follow the instructions given in
; pwhash.php.

hostingstock = "password" ;ここにユーザー名とパスワードを追加する
  • Webブラウザで「phpshell.php」にアクセスします。
  • ログイン画面が表示されるので、ユーザー名とパスワードを入力します。
PHP7
動作します。

ajaxPHPterm

ajaxPHPterm download | SourceForge.net

ユーザー名とパスワードによる認証がなく、かなりシンプルです。 サーバーにアップアロードするだけで利用できるため、一時的な利用に適します。 利用後は削除するか、.htaccessでのアクセス制限が必須です。

PHP7
ereg()preg_match()に置き換える必要があります。

その他

ここで紹介したツール以外にもPHP Terminal Emulatorがあります。

これがオススメというものはありません。レンタルサーバーによっては上手く動作しないものもあるため、契約しているサービスで動作するものを利用するとよいでしょう。

関連記事

BLOG

UPDATE