Для обоих доменов необходим SSL-сертификат. Для перенаправления с одного на другое вам сначала нужен сертификат для olddomain.com
и www.olddomain.com
, чтобы браузеры принимали инструкции по перенаправлению. Затем вам потребуется сертификат на вашем www.newdomain.com
для размещения нового домена.
Таким образом, вы должны настроить виртуальный хост для старого домена, который перенаправляет только на новый.
См. Apache Перенаправление .
ServerName olddomain.com
Redirect permanent / https://www.newdomain.com/
SSLEngine on
SSLCertificateFile /path/to/olddomain.com/cert.pem
SSLCertificateKeyFile /path/to/olddomain.com/privkey.pem
SSLCertificateChainFile /path/to/olddomain.com/chain.pem
ServerName www.newdomain.com
DocumentRoot /var/www/html
SSLEngine on
SSLCertificateFile /path/to/www.newdomain.com/cert.pem
SSLCertificateKeyFile /path/to/www.newdomain.com/privkey.pem
SSLCertificateChainFile /path/to/www.newdomain.com/chain.pem
Добро пожаловать в StackExchange для Unix и Linux!
Я предполагаю, что вы имеете в виду «один общедоступный IP-адрес и один общедоступный входящий / порт назначения ».
В этом случае вы, возможно, зашли слишком далеко в своих поисках, так как ответ, вероятно, был у вас под рукой все время:глава АВТОРИЗОВАННЫЙ _ФОРМАТ ФАЙЛА КЛЮЧЕЙ в sshd (8 )man-страница , как я полагаю, даст вам именно тот инструмент, который вы ищете.
В файле ~/.ssh/authorized_keys
для user@publicip
вы можете указать команды, которые будут запускаться вместо обычного сеанса всякий раз, когда используется конкретный ключ. Так что вы можете просто сделать это:
command="ssh user@192.168.1.10",restrict,pty ssh-rsa <public key of user1>
command="ssh user@192.168.1.20",restrict,pty ssh-ed25519 <public key of user2>
С этим authorized_keys
файлом, если закрытый ключ user1 используется для аутентификации в user@publicip
, sshd
немедленно запуститssh user@192.168.1.10
вместо обычной оболочки пользователя . Когда SSH-соединение с 192.168.1.10 завершится, весь сеанс завершится. И если вместо этого используется закрытый ключ пользователя user2, он будет подключаться к user@192.168.1.20
соответственно.
Но если мое предположение было неверным, и вы действительно хотите ограничить исходящую сторону прокси-сервера одним исходным портом , есть небольшая проблема написать собственную реализацию протокола TCP и изменить версия SSH для работы поверх первой...