なんらかの理由で端末でサーバーにアクセスできないとしましょう。おそらく、通りを歩いていて、携帯電話しか上になく、オタクなどではないため、このタイプのアプリケーションをインストールしていません。 。
では、私たちは何をしますか? まあ、何も、私たちは家に帰るか仕事をし、サーバーにアクセスしてインストールするまで何もできません シェリーナボックス。 しかし、それは何ですか、あなたは食べますか?
シェリーナボックス
シェリーナボックス 実装 サーバー できるウェブ 輸出 ラインツール コマンド へ ターミナルエミュレータ Webベース. このエミュレーター サポートしている任意のブラウザからアクセスできます JavaScriptを およびCSS y 必要ありません なんの プラグイン 機能に追加。
元のプロジェクトは中止されましたが、 Githubのフォーク これにより、リポジトリにインストールされていない場合でもインストールできます。 Ubuntu 14.04の場合はそうなので、ターミナルを開いて次のように入力するだけです。
$ sudo apt install shellinabox openssl ca-certificates
最後のXNUMXつのパッケージの場合は、まだインストールされていない場合に使用します。 これが完了すると、ブラウザを入力してWeb上の端末にアクセスできるようになります。
http://la_ip_o_nombre_del_servidor:4200
ポート80からShellinaboxを使用する
ご覧のとおり、デフォルトではShellinaboxはポートを使用します 4200 また、サービスプロバイダーによってブロックされている場合は、アクセスできない可能性があります。 安全ではないが機能するバリアントを使用できます。 シェリーナボックス 港で 80、後で使用する方法を示しますが 443 利用できる場合。
ブラウザに入力してShellinaboxにアクセスします。
http://la_ip_o_nombre_del_servidor/terminal
これを行うには、最初にNGinxをインストールします。
$ sudo apt install nginx
次に、ファイルを作成します / etc / nginx / sites-enabled / shellinabox そしてそれを中に入れます:
サーバー{proxy_set_headerホスト$ http_host; proxy_set_header X-Forwarded-Host $ http_host; proxy_set_header X-Real-IP $ remote_addr; proxy_set_header X-Forwarded-For $ proxy_add_x_forwarded_for; 場所/端末/ {proxy_pass http:// localhost:4200 /; }}
ファイルを編集します / etc / default / shellinabox そして最後に置きます:
SHELLINABOX_ARGS="--localhost-only --disable-ssl"
再起動します Nginx y シェリーナボックス:
$ sudo /etc/init.d/shellinabox restart $ sudo /etc/init.d/nginx restart
そして準備ができました!
ポート443からShellinaboxを使用する
SSL証明書を作成する必要があるため、このプロセスは少し面倒です。 このために、次のことを行います。
まず、OpenSSLをインストールします。
$ sudo apt-get install openssl
秘密鍵を作成します。
openssl genrsa -out server.key 2024
証明書のベースを作成し、そこに一連のデータを配置します。
openssl req -new -key server.key -out server.csr
入力するデータは次のとおりです。
- 国名(2文字コード): XNUMX文字のISO形式の国コード(例:ES、US、CU、MX ..)。
- 州または県の名前(フルネーム): 州または県(例:フロリダ)。
- 地域名: 町または都市(例:マイアミ)。
- 組織名: 組織の名前 (例: DesdeLinux).
- 組織単位名: 組織部門(例:ブログ)。
- 一般名: ドメイン名または FQDN。ブログには違いがあることを知っておくことが重要です。desdelinux.netと desdelinux。ネット。どちらか一方の証明書を登録する必要があります。
- 電子メールアドレス: 連絡先メールアドレス。
- チャレンジパスワード: 白で。
- オプションの会社名: 白で。
次に、入力したデータを取得するSSL証明書を生成します。
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
証明書を/ etc内のSSLフォルダーにコピーします。
$ sudo cp server.crt /etc/ssl/certs/ssl.crt $ sudo cp server.key /etc/ssl/certs/ssl.key
ファイルを再度編集します / etc / default / shellinabox そして、最後に置いたものを変更します。
SHELLINABOX_ARGS="--no-beep"
次に、ファイルを編集します / etc / nginx / sites-enabled / shellinabox そしてそれを中に入れます:
サーバー{リッスン80; 戻り値301https:// $ host $ request_uri; }サーバー{リッスン443; server_name myvps.com; ssl_certificate /etc/ssl/certs/ssl.crt; ssl_certificate_key /etc/ssl/certs/ssl.key; ssl on; ssl_session_cache組み込み:1000共有:SSL:10m; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4; ssl_prefer_server_ciphers on; access_log /var/log/nginx/shellinabox.access.log; 場所/端末{proxy_set_headerHost $ host; proxy_set_header X-Real-IP $ remote_addr; proxy_set_header X-Forwarded-For $ proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $スキーム; #「リバースプロキシの設定が壊れているようです」エラーを修正します。Proxy_passhttp:// localhost:4200 /; proxy_read_timeout 90; proxy_redirect http:// localhost:4200 https://myvps.com/terminal/;} }
サービスを再開します。
$ sudo /etc/init.d/shellinabox restart $ sudo /etc/init.d/nginx restart
アクセスします
http://la_ip_o_nombre_del_servidor/terminal
リダイレクトする必要があります:
https://la_ip_o_nombre_del_servidor/terminal
そして、それがすべてです。
それは私にCSIシリーズで出てくるものを思い出させました
最も興味深い投稿。 私はこのユーティリティについて聞いたことがありませんでしたが、真実はそれが最も好奇心が強くて便利だということです...この概念がNgixに適用されたのと同じように、Apacheにも適用できると思いますよね?
特にブラウザから端末を使用する場合、Butterflyがどのように機能するかを思い出させます。 もちろん、ここに示されているほど複雑ではありません🙂
«何らかの理由で、端末を使用してサーバーにアクセスできないとします。おそらく、通りを歩いていて、携帯電話しか上になく、オタクなどではないため、アプリケーションをインストールしていません。このタイプの」
オタクでない場合、どのようにサーバーにアクセスしたいと思いますか? ハハハ
ブラウザを使用するよりもsshアプリを使用する方がはるかに高速で、サーバーにソフトウェアをインストールする必要がないように思えますが、それでも興味深いオプションです。
純粋なWindowsがある場所にいる場合の利点。
「純粋なウィンドウがある場所にいるときの利点。」
entoses………………パテまたはキティ。
優秀な男性この貢献に感謝します