Запуск IPython notebook server с поддержкой IRkernel

Правила форума
Правильно сформулированный вопрос и его грамотное оформление способствует высокой вероятности получения достаточно содержательного и по существу ответа.
Аватара пользователя
SemenSinchenko
Сообщения: 314
Зарегистрирован: 17 фев 2017, 09:01
Решено: 2
Откуда: Москва
Благодарил (а): 40 раз
Поблагодарили: 40 раз

Запуск IPython notebook server с поддержкой IRkernel

Сообщение SemenSinchenko » 15 июн 2017, 12:53

Заранее извиняюсь за нубский вопрос - вроде все есть в гугле, но все равно ничего не понял как делать и даже с чего начать.

Задача: запустить дома IPython notebook server с поддержкой IRKernel так, чтобы я мог с работы заходить на него просто вбив нужный IP, но так, чтобы кто-угодно не мог зайти на него и запустить file.remove() или чего похуже.
Документации куча, но она вся на английском и сложная, я просто в сетях и этих всех фаерволах совсем-совсем не разбираюсь... Мне нужно что-то типа набора команд, которые надо вбить в консоль, чтобы заработало.

Что это такое:
IRKernel:
На русском, но ниочем
На английском, вроде понятно, но только на localhost
Собственно сам пакет
IPython notebook server:
На английском и я почти ничего не понял

Что есть сейчас:
R, Python3, iPython, jupyter-notebook, apt.
Система Debian testing (stretch) amd64

Что умею:
Вводить команды, устанавливать пакеты (в том числе pip и CRAN), читать не сложную документацию, работать в консоли и пользоваться гуглом, в общем все, что входит в курс "Введение в Linux" и даже немного больше

Что не умею:
Настраивать фаервол, пробрасывать порты, поднимать сервера, использовать git и много чего еще...

Буду просто ооооочень признателен за помощь, а то пока не втыкаю даже с чего начать, да и тема от меня очень уж далекая...

Аватара пользователя
Dja
Сообщения: 2004
Зарегистрирован: 27 авг 2016, 17:03
Решено: 11
Откуда: Воскресенск
Благодарил (а): 303 раза
Поблагодарили: 222 раза

Запуск IPython notebook server с поддержкой IRkernel

Сообщение Dja » 15 июн 2017, 13:21

openvpn ?
Новичок? - ознакомься с правилами
Изображение
В поисках истины :grabli:
Изображение

Аватара пользователя
SemenSinchenko
Сообщения: 314
Зарегистрирован: 17 фев 2017, 09:01
Решено: 2
Откуда: Москва
Благодарил (а): 40 раз
Поблагодарили: 40 раз

Запуск IPython notebook server с поддержкой IRkernel

Сообщение SemenSinchenko » 15 июн 2017, 13:25

Dja писал(а):Источник цитаты openvpn

Я честно говоря не умею его поднимать... И потом, а что это даст, я просто не догоняю?

Аватара пользователя
Dja
Сообщения: 2004
Зарегистрирован: 27 авг 2016, 17:03
Решено: 11
Откуда: Воскресенск
Благодарил (а): 303 раза
Поблагодарили: 222 раза

Запуск IPython notebook server с поддержкой IRkernel

Сообщение Dja » 15 июн 2017, 13:44

SemenSinchenko, включаете шлюз, тем самым коннектясь к серверу. И потом досаточно будет ssh 10.8.0.1 -p port ну или какой адрес:порт будет у сервера.
С поднятием поможем. Единственное...никак не добьюсь прохода трафика через него, но это думаю уже на стороне сервера надо смотреть. Но для вашей ситуации вполне подойдет канал при наличии интернета от провайдера.
Единственное... боюсь уже завтра. Сейчас уже домой надо будет идти.
Новичок? - ознакомься с правилами
Изображение
В поисках истины :grabli:
Изображение

Аватара пользователя
SemenSinchenko
Сообщения: 314
Зарегистрирован: 17 фев 2017, 09:01
Решено: 2
Откуда: Москва
Благодарил (а): 40 раз
Поблагодарили: 40 раз

Запуск IPython notebook server с поддержкой IRkernel

Сообщение SemenSinchenko » 15 июн 2017, 13:55

Dja писал(а):Источник цитаты ssh 10.8.0.1 -p port

Спасибо за быстрый отклик!

То есть мне нужно будет что-то типо putty установить на работе? Боюсь это трудно будет, тут windows и совсем совсем ограниченные права по установке чего-либо(

А просто заходить по IP в браузере никак не выйдет? Ведь ipython notebook это по сути просто веб морда интерпретатора. Мне в идеале нужно как здесь только, чтобы были доступны мои файлы и установленные у меня дома расширения R.

Dja писал(а):Источник цитаты Единственное... боюсь уже завтра. Сейчас уже домой надо будет идти.

Это совсем не срочно!
Пока итак можно жить, через dropbox загружая/выгружая каждый раз файлы скриптов и данных в https://try.jupyter.org/, просто это костыльно и не совсем удобно

Аватара пользователя
di_mok
Сообщения: 1837
Зарегистрирован: 27 авг 2016, 16:06
Решено: 15
Откуда: Арзамас
Благодарил (а): 529 раз
Поблагодарили: 301 раз

Запуск IPython notebook server с поддержкой IRkernel

Сообщение di_mok » 15 июн 2017, 14:45

SemenSinchenko писал(а):Источник цитаты То есть мне нужно будет что-то типо putty установить на работе? Боюсь это трудно будет, тут windows и совсем совсем ограниченные права по установке чего-либо(

SemenSinchenko, а и не надо устанавливать, он есть портейбл https://www.chiark.greenend.org.uk/~sgt ... atest.html
Настоящая водка — это не пьянство, а ключ к своей совести, с нее-то и начинается настоящая мудрость. (c)

Аватара пользователя
SemenSinchenko
Сообщения: 314
Зарегистрирован: 17 фев 2017, 09:01
Решено: 2
Откуда: Москва
Благодарил (а): 40 раз
Поблагодарили: 40 раз

Запуск IPython notebook server с поддержкой IRkernel

Сообщение SemenSinchenko » 23 июн 2017, 07:58

UPD.
Сервер я запустил, пароль и сертификат настроил (сертификат пока битый, где взять нормальный я не знаю, но думаю в эту сторону и в общем то справлюсь наверное...)

Но я не понимаю, как мне подключаться теперь к нему извне. Я вчера поздно закончил настраивать, думал что все просто (я ньюби в сетях) и просто добавил в cron ip addr show > ~/Dropbox/my_ip.txt на полночь, думал на работу приеду, посмотрю ip и просто законекчусь... Но теперь я понимаю, что это не тот ip, который мне нужен, но пока это все, что у меня есть.
► Показать


Я правильно понимаю, что мне надо делать проброс портов? Это нужно именно 9999 порт делать? У меня в настройках jupyter server стоит как раз 9999 порт. Это именно на роутере настраивать надо (выход в мир идет через роутер)?
А еще гугл говорить, что надо раздобыть адрес сети. Может кто подскажет, как это сделать?

P.S. Сегодня я так понимаю, я уже никак не подключусь имея эти данные?
P.P.S. А можно как нибудь настроить cron так, чтобы он читал файл команд в Dropbox и выполнял их, если они там есть, а потом стирал, при этом вывод записывал в другой файл в Dropbox? Типа удаленное управление.... Или это я костыль какой-то я сейчас придумал?
P.P.P.S. Всем спасибо заранее, что помогаете с таким нубским вопросом!

Аватара пользователя
Chocobo
Сообщения: 4605
Зарегистрирован: 27 авг 2016, 19:57
Решено: 110
Откуда: НН
Благодарил (а): 375 раз
Поблагодарили: 1236 раз

Запуск IPython notebook server с поддержкой IRkernel

Сообщение Chocobo » 23 июн 2017, 08:51

SemenSinchenko писал(а):Источник цитаты но думаю в эту сторону

Уже протухший вариант. Но оно тебе и не обязательно - то что серт не валиден не значит что он плохой. Просто не проверен дядьками из удостоверяющих центров - для личного пользования проще добавить свой сертификат в исключения.

Стоит найти листенер программы, например в выхлопе netstat -nlp.
Дальше, если хочется иметь к нему доступ из интернета - стоит уточнить предоставляет ли провайдер тебе белый адрес, и не режет ли порты наружу.

потом дело за конфигом роутера, например на моей тапке - проброс выглядит так:
forwarding.png

Что стоит читать как "все входящие соединения на 4200 порт перенаправлять на порт 4200 клиенту с адресом 192.168.0.4"
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Изображение

Аватара пользователя
SemenSinchenko
Сообщения: 314
Зарегистрирован: 17 фев 2017, 09:01
Решено: 2
Откуда: Москва
Благодарил (а): 40 раз
Поблагодарили: 40 раз

Запуск IPython notebook server с поддержкой IRkernel

Сообщение SemenSinchenko » 24 июн 2017, 08:09

Chocobo,
выхлоп netstat:
► Показать


Подчеркнул то, что по моему есть запись о jupyter (в настройках jupyter я указал как раз 9999 порт). Именно этот порт мне надо пробрасывать?

Аватара пользователя
Chocobo
Сообщения: 4605
Зарегистрирован: 27 авг 2016, 19:57
Решено: 110
Откуда: НН
Благодарил (а): 375 раз
Поблагодарили: 1236 раз

Запуск IPython notebook server с поддержкой IRkernel

Сообщение Chocobo » 24 июн 2017, 08:31

SemenSinchenko, почему-то tcp6 листенер - провайдеров которые сейчас активно используют ipv6, да и пользовательское оборудование (роутеры) обычно его не юзают.
Учитывая локальную адресацию в 192.168.0.0/24 - думаю тут этот же случай.

по хорошему должно бы быть tcp 192.168.1.21:9999 (на Ethernet-интерфейсе) или 0.0.0.0:9999 (на всех интерфейсах)

С другой стороны если локально к этому же порту ты обратиться можешь со своей машины - то он должен уже быть поднят. :scratch: Может просто не попал в выхлоп нетстата...
Изображение

Аватара пользователя
SemenSinchenko
Сообщения: 314
Зарегистрирован: 17 фев 2017, 09:01
Решено: 2
Откуда: Москва
Благодарил (а): 40 раз
Поблагодарили: 40 раз

Запуск IPython notebook server с поддержкой IRkernel

Сообщение SemenSinchenko » 24 июн 2017, 08:59

Chocobo, я что-то мало что понял...)

Вот так сделан конфиг jupyter - может это еще чем поможет:
► Показать

Аватара пользователя
SemenSinchenko
Сообщения: 314
Зарегистрирован: 17 фев 2017, 09:01
Решено: 2
Откуда: Москва
Благодарил (а): 40 раз
Поблагодарили: 40 раз

Запуск IPython notebook server с поддержкой IRkernel

Сообщение SemenSinchenko » 24 июн 2017, 14:09

В обще не получается ни фига...
Проброс порта 9999 на свой внутренний IP я сделал.
Этот сайт утверждает, что мой ip 185.13.112.15

Но по адресу https://185.13.112.15:9999/ подключиться не удается. При этом через https://localhost:9999 все работает.
Это значит, что у меня провайдер ограничивает доступ?

Аватара пользователя
Chocobo
Сообщения: 4605
Зарегистрирован: 27 авг 2016, 19:57
Решено: 110
Откуда: НН
Благодарил (а): 375 раз
Поблагодарили: 1236 раз

Запуск IPython notebook server с поддержкой IRkernel

Сообщение Chocobo » 24 июн 2017, 14:27

SemenSinchenko, Возможно и провайдер.
Посмотри на роутере обычно тоже показывается WAN-адрес
Снимок экрана от 2017-06-24 17-17-20.png

Если он будет отличаться тут от 185.13.112.15 - вероятней всего ты за натом.
Если адрес тот же - то стоит уточнить в техподе, не режутся ли порты наружу.


По твоему конфигу вторая и последняя строки выглядят норм для сервиса.
Ну и можешь просканить свои адреса с nmap
как локальный интерфейс - nmap 192.168.1.21 -p 9999
так и внешний адрес - nmap 185.13.112.15 -p 9999
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Изображение

Аватара пользователя
SemenSinchenko
Сообщения: 314
Зарегистрирован: 17 фев 2017, 09:01
Решено: 2
Откуда: Москва
Благодарил (а): 40 раз
Поблагодарили: 40 раз

Запуск IPython notebook server с поддержкой IRkernel

Сообщение SemenSinchenko » 24 июн 2017, 15:34

Chocobo писал(а):Источник цитаты Если он будет отличаться тут от 185.13.112.15 - вероятней всего ты за натом.

Я за натом.
Но по адресу в роутере https://10.154.59.1:9999 смог зайти!

Правда я не уверен, что смогу зайти извне... Или это не важно?

Аватара пользователя
Chocobo
Сообщения: 4605
Зарегистрирован: 27 авг 2016, 19:57
Решено: 110
Откуда: НН
Благодарил (а): 375 раз
Поблагодарили: 1236 раз

Запуск IPython notebook server с поддержкой IRkernel

Сообщение Chocobo » 24 июн 2017, 15:51

SemenSinchenko, если хочется через инет - то не вряд ли выйдет без участия провайдера (а он может и не предоставлять подобную услугу).
Если сам зашел по WAN-адресу - значит портфорвардинг сделал верно :thumbs:
Но теперь подобным образом нужен проброс и с его стороны.
Как сам настраивал в роутере с 10.154.59.1 до 192.168.Х.Х - также нужно и от провайдера с 185.13.112.15 до 10.154.59.1
Изображение

Аватара пользователя
SemenSinchenko
Сообщения: 314
Зарегистрирован: 17 фев 2017, 09:01
Решено: 2
Откуда: Москва
Благодарил (а): 40 раз
Поблагодарили: 40 раз

Запуск IPython notebook server с поддержкой IRkernel

Сообщение SemenSinchenko » 24 июн 2017, 15:58

Chocobo, узнал, вроде мой провайдер предоставляет услугу статического IP за 500 р в месяц - это, как я понял единственный вариант, так?

По ходу лучше через ssh и консольный R...


Вернуться в «Иное программное обеспечение»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость