web-dev-qa-db-ja.com

リモートサーバーにSSHで接続します。しかし、私の組織はポート22をブロックしました

RedHat OpenShiftサーバーを使用してWebAppをデプロイしています。

アプリケーションのコンテンツにアクセスするには、サーバーにSSHで接続する必要があります。例:

ssh [email protected]

ただし、発信された22ポートがブロックされているため、sshは失敗します。また、ポートフォワーディング用のパブリックIP割り当てシステムはありません。

sshを機能させる方法はありますか?

3
raptor

あなたはmustネットワークの責任者に連絡し、あなたのアクセス要求が正当であることを彼らに納得させます。アクセス制限の健全性に関係なく、それらを回避することで、少なくとも上司と一緒にお湯に落ち、「ハッキング」と見なされて起訴される可能性さえあります。

13
vonbrand

免責事項:この回答のすべてのソリューションは、組織のセキュリティポリシーに違反したために解雇される可能性があります。異常なトラフィックのピークとパターンを常にチェックしているネットワーク管理者がいる場合、捕まる可能性があります。アクセスを取得するために技術的な弱点を作る道をたどらない場合、私は vonbrand's answer に従って、法的な方法でアクセスを要求することをお勧めします。

コメントで示されているものとして示されているように、使い捨てアカウントを使用しているのと同じように、コメントで「私はrootアクセスがない」や「このポートは会社でブロックされています」などの肯定を使用してセキュリティポリシーを回避するつもりです。私は自由から、「解決策」を作成するプロセスを容易にする技術的な詳細を私の回答から削除しました。ただし、このアイデアは原因であり、それが ハッカーの考え方 の原則であり、ITを扱う誰もが持つべきスキルです。

オプション1:別のポートでリッスンするようにsshを配置します。

オプション2:別のポートから着信するトラフィックをtcp/22(ssh)にリダイレクトします

オプション3:shellinabox を使用してリモートWeb端末を作成します。HTTPの使用は避けてください。 shellinabox のマンページで説明されているように、証明書が 自己署名 であっても使用します。

オプション4(非ルートソリューション):sshを使用するために、クラウドプロバイダー(5-10US $の費用がかかる)のシンプルなサーバーに支払うジャンプボックス。

10
user34720

これには sslh を使用します。異なるプロトコルが異なる方法で接続を開始するという事実を利用します。 SSHを検出すると、接続をsshdに転送し、HTTPSを検出すると、接続をhttpdに転送します。

これにより、たとえばnginx/Apacheとsshが同じポート(通常は443)でリッスンします。

5
ptman

OpenShiftでコンテナーにアクセスする標準的な方法は、oc cliツールです。

ocコマンドラインツールを使用してシェルにアクセスできます。最終的に、sshクライアントを使用する必要がある場合は、次のコマンドでポートを転送できます。

oc port-forward <podname> 22:22

あなたはただ使うことができます

oc rsh <podname> 

リモートシェルでアクセスする

詳細情報 https://docs.openshift.com/enterprise/3.0/cli_reference/get_started_cli.html

0
Giuseppe B