2016-08-25 3 views
0

Я пытаюсь настроить туннель SSH для доступа к моему серверу (в настоящее время Ubuntu 16.04 VM на Azure), чтобы настроить безопасный доступ к моим работающим на нем приложениям Django.SSH туннелирование на удаленный сервер с помощью django

Я смогла имитировать производственную среду с помощью Apache WSGI, и она работает очень хорошо, но поскольку я пытаюсь разработать приложение, я не хочу, чтобы он был доступен для более широкой публики прямо сейчас, но чтобы сделать его видимым только для кучки людей.

К точке: когда я настроить SSH туннель с помощью шпаклевки на Windows 10 (8000 для локального хоста: 8000) и я бегу http://localhost:8000/ я получаю ошибку folowing:

"Not Found HTTP Error 404. The requested resource is not found.".

Как я могу сделать это работает? Я запускаю сервер, используя manage.py runningerver 0: 8000. Я где-то нашел, что ошибка может быть связана с тем, что приложение не имеет доступа к файлам ssh, но я не знаю, является ли это здесь (или как его изменить).

С уважением,

Dominik

+0

Возможно, django ожидает заголовок 'Host:', отличный от 'Host: localhost'? – evilSnobu

ответ

0

После нескольких часов безуспешных попыток я смог решить эту проблему.

Прежде всего, я убедился, что шпатлевка подключается к серверу и создает необходимый туннель. Для этого я щелкнул правой кнопкой мыши по окну шпатлевки (строке заголовка) и щелкнул журнал событий. Я проверил журнал и обнаружил следующее сообщение об ошибке:

Local port 8000 forwarding to localhost:8000 failed: Network error: Permission denied

я был в состоянии решить, выбрав другой локальный порт (9000 вместо 8000 в моем случае).

Во-вторых, я редактировал файл sshd_config: sudo vi etc/ssh/sshd_config

и добавил эти три строки:

AllowAgentForwarding yes 
AllowTcpForwarding yes 
GatewayPorts yes 

Я сохранил файл и перезапустить службу SSH:

sudo service ssh stop 
sudo service ssh start 

сейчас когда я посещаю localhost: 9000 все работает отлично.

 Смежные вопросы

  • Нет связанных вопросов^_^