Похож на Вас, имеют корректные основы.
Наиболее распространенной причиной, которую я видел это для сбоя, являются полномочия на удаленном authorized_keys
файл и каталоги выше его. Прежде, чем позволить основанному на ключе автору, sshd
выполняет проверку полномочий; если этому не нравятся результаты, это запрещает аутентификацию. Я обычно устанавливал ~/.ssh
к 0700 и ~/.ssh/authorized_keys
к 0600. Я полагаю, что фактический $HOME не может иметь группы, или мир пишут также, хотя чтение прекрасно.
Если это все еще не фиксирует его, следующий шаг должен сделать некоторую отладку на стороне сервера:
server$ /usr/sbin/sshd -d -p 2222
Затем соединитесь с сервером "отладки" от своего клиента:
client$ ssh -v user@host -p 2222
Вы получите обильную отладку informtation на stderr
на сервере. Я должен все же встретиться с подлинной проблемой, по сравнению с которой я не мог отследить там.
Если это имеет Порт прослушивания TCP/IP, можно создать Туннель SSH к нему. Можно хотеть проверить, чтобы видеть, используется ли порт уже в клиентской системе сначала. Можно сделать это с netstat командой On Windows, которую можно выполнить
# netstat -ano
на Linux
# netstat -anut |grep LISTEN
Туннелирование SSH может быть немного трудным получить Вашу голову вокруг. Со всеми схемами и примерами онлайн даже я запутываюсь, и я использую туннели ежедневно. Я нахожу, что он лучше всего думает о нем как это: Ваш клиент SSH открывает соединение с сервером и перенаправляет порты от той сети до Вашего *клиентская система, создающая порт прослушивания для каждого перенаправления на Вашем *клиентская система.
- *-клиентская система является системой, Вы используете клиент SSH, который может также упоминаться как Ваша локальная система
Кажется, что Вы хотели бы пример порта HTTPS 443 туннеля!
Из Windows Client System
Этот пример будет использовать клиент "Шпаклевки" для Windows, который может быть найден на сайте для скачивания Шпаклевки здесь, Мы предположим, что Вы выполняете HTTPS на порте 443 в той же системе, Вы выполняете свой сервер SSH. Мы будем использовать IP-адрес Localhost 127.0.0.1 (127.0.0.1, будет всегда возвращать систему, Вы зарегистрированы),
От Вашей Шпаклевки Окно перемещаются по меню параметров "категории" левого столбца. Разверните меню "Connection"> "SSH"> "Tunnels". В "Source port" текстовое поле входит 443, в "Destination" текстовое поле входит 127.0.0.1:443, затем нажимают кнопку Add. "Переданные Порты" текстовая область теперь покажут "L443 127.0.0.1:443"
сопроводительный текст http://www.hilands.com/img/extern/tunnel_https_localhost.jpg
От терминала Linux
Это должно работать, я не протестировал его хотя....
# ssh -L 443:127.0.0.1:443 <sshuser>@<sshserver ip>
Но мой сервер SSH находится на другом Сервере, чем мой Сервер HTTPS!
Это - легкая замена 127.0.0.1 в вышеупомянутых примерах к IP-адресу Ваше использование сервера SSH для соединения с сервером HTTPS!
Глюк
После конфигурирования ssh туннелируют, можно теперь открыть браузер на клиентской машине. Вместо того, чтобы идти в нормальный порт IP-адреса 443 Вы будете использовать 127.0.0.1 в Вашем локальном браузере.
https://127.0.0.1
Выполнение этого может нарушить Ваш сертификат SSL. В Firefox Вы получите следующее сообщение об ошибке:
сопроводительный текст http://www.hilands.com/img/extern/ssl_error.jpg Продолжается посредством подсказок и позволяет Ваш сертификат.
Вы попробовали его? В противном случае, почему нет? Почему задают вопрос здесь, если что-то работает, когда Вы даже не попробовали его? Пока Вы только говорите об использовании порта 443 для заканчивания некоторых брандмауэров и не действительно туннелирования по HTTPS затем, это должно хорошо работать (это не действительно ясно из вопроса, Вы упоминаете обоих).
Я не знаю thttpd вообще. Я едва знаю lighttpd также.
Но если они могут служить HTTPS, Вы могли бы использовать инструмент как Проводник SSL. Это может сделать намного больше, чем предоставляют Вам доступ SSH к Вашей сети.
Иначе эти инструменты могут помочь Вам:
Некоторые даже работают с классическим HTTP (никакая потребность в SSL/TLS).