Хост хоста туннель SSH

Я хочу создать весь туннель SSH между двумя серверами Ubuntu 12.04, (я узнал о SSHuttle, но из-за ошибки в обработке дескрипторов файлов он откажет при высокой загрузке), очень как IPSEC, но потому что мне нужен он только для двух хостов, сложность создания абсолютной конфигурации IPsec надеется быть излишеством.

То, чего я хочу достигнуть, - то, что все данные, идущие между server1 и server2, будут зашифрованы, не будучи должен создать тысячу динамических портов SSH.

2
задан 21 May 2014 в 14:55

1 ответ

Этот ответ принадлежит brandonchecketts.

Предположите, что у Вас есть два хоста, названные как Хоста и Хост-B. Теперь мы собираемся создать Туннель SSH между этими двумя и удостовериться, что Туннель возрос и жив для все время.

Потребность конфигурации, которая будет сделана для Хосты:

Откройте свой терминал, превратитесь в корень и вставьте код один после один

useradd -d /home/tunnel tunnel
passwd tunnel 
su - tunnel    

следующий шаг о создании ключа SSH

В терминальной вставке как

ssh-keygen

и затем выберите выбор по умолчанию для всей подсказки и скопируйте ключ с

cat /.ssh/id_rsa.pub

Теперь на этот раз мы имеем к конфигурации для Хоста-B

Откройте свой терминал и выполните эти команды

useradd -d /home/tunnel tunnel
passwd tunnel 
su - tunnel

и в терминальном типе как

mkdir .ssh
vi .ssh/authorized_keys

Это откроет файл в терминале и вставит вышеупомянутый скопированный ключ от Хосты.

Теперь в терминальном типе как

vi / home/tunnel/check_ssh_tunnel.sh

и вставка как

createTunnel() {
    /usr/bin/ssh -f -N -L13306:hostb:3306 -L19922:hostb:22 tunnel@hostb
    if [[ $? -eq 0 ]]; then
        echo Tunnel to hostb created successfully
    else
        echo An error occurred creating a tunnel to hostb RC was $?
    fi
}
## Run the 'ls' command remotely.  If it returns non-zero, then create a new connection
/usr/bin/ssh -p 19922 tunnel@localhost ls
if [[ $? -ne 0 ]]; then
    echo Creating new tunnel connection
    createTunnel
fi

сохраните и закройте и сделайте это исполняемым файлом с

chmod 700 /home/tunnel/check_ssh_tunnel.sh

и затем запущенный скрипт, это запустит Туннель с удаленного ПК.

Считайте, что выше ссылки, это, должен.

2
ответ дан 7 October 2019 в 19:31

Другие вопросы по тегам:

Похожие вопросы: