(事前におpoび申し上げます、私は新しくubuntuに変換されたプロウィンドウです...私の質問が明らかな場合は教えてください)。
インターネットに継続的に接続されたubuntuサーバーを構築したい。私はIPアドレスのみを所有しています。サーバーの主な目的は、ソースコードコントローラーとして機能することです(おそらくgitまたはsvn ...まだ選択していません)が、他のいくつかの用途(家族や顧客とのファイル共有、個人バックアップ、Webアプリケーションのホスト)また、httpやhttpsのみを許可する顧客のプロキシの背後であっても、いつでもコンピューターにアクセスして管理できるようにしたいと考えています。
それを達成するための標準的な手順は何ですか?
前もって感謝します ;)
適切に設定されていれば、OpenSSHは標準ポートでも安全です。標準ポートから移動すると、不正なログイン試行によってログファイルがいっぱいになるのを防ぐことができます。最後の詳細。
サーバーに接続するコンピューターを制御できない場合、サーバーにアクセスするのは非常に危険です(これがブラウザープラグインを使用する必要がある理由だと思います)
OpenVPNは、_-TCPポートをHTTP/HTTPSサーバーと共有するように、 手動ページ からセットアップできます。
--port-shareホストポート
TCPサーバーモードで実行する場合、OpenVPNポートをHTTPSサーバーなどの別のアプリケーションと共有します。 OpenVPNが非OpenVPNプロトコルを使用しているポートへの接続を検知すると、Host:portのサーバーへの接続をプロキシします。現在はHTTP/HTTPSでのみ動作するように設計されていますが、sshなどの他のプロトコルに拡張することは理論的には可能です。
オーバーヘッド(TCP 3ウェイハンドシェイク)のため、TCP接続でOpenVPNを使用することは推奨されません。選択肢がない場合は、試してみてください。
OpenVPNを使用すると、ポートに課せられた制限を回避し、接続を保護できます。 OpenVPNのセットアップに関するガイドについては、 OpenVPNをセットアップして、セキュリティで保護されていないホットスポットからインターネットを安全に使用できるようにする方法 を参照してください。
アプリケーションが(OpenVPNのように)サポートしていない限り、ポートを共有することはできません。そのため、残念です。
接続試行を制限しないパスワードベースの認証は、トラブルを求めています。そのため、キーベースの認証を使用し、パスワードベースの認証を完全に無効にすることをお勧めします。
Sudo apt-get install openssh-server
を実行して/etc/ssh/sshd_config
を編集して、パスワードベースの認証を無効にします。編集を開始するには、Sudo nano /etc/ssh/sshd_config
を実行します。行#PasswordAuthentication yes
を見つけて、PasswordAuthentication no
に変更します。デフォルトでは、SSHはポート22でリッスンします。変更する場合は、セキュリティ上の理由から1024未満のポートを使用してください。 (Port 22
で行を変更します)セキュリティを強化するために、ログインを許可するユーザーのリストを構成できます。次の行を追加します。
AllowUsers someuser
someuser
を、ログインが許可されているアカウントのユーザー名に置き換えます。複数のユーザー名はスペースで区切る必要があります。
ssh-keygen -t rsa
を使用します。必要な値を入力し、安全なパスフレーズを選択します。~/.ssh/id_rsa.pub
ファイルの内容をサーバーの/home/someuser/.ssh/authorized_keys
ファイルにコピーします。 someuser
は、ログインを許可する必要があるユーザーです。 (コピーする必要があるのは1行です。never-----BEGIN RSA PRIVATE KEY
で始まるファイルの内容をコピーしますSSHサーバーの構成を再読み込みします。
Sudo reload ssh