Удаленный доступ на домашний компьютер с динамичным IP-адресом

Привет. Недавно вот возникла следующая ситуация, я находился в дали от дома и рабочего лэптопа, но с моим коммуникатором (iPhone) и в какой-то момент мне срочно понадобилась информация, которая существует только на рабочем компе, а именно телефонная база. Нужна она мне была реально срочно, а достать я ее никак не мог. В итоге я понял, что надо решить проблему удаленного доступа к своему компьютеру, иногда это может быть очень полезно. Как это сделать, ниже.

Имеем:
1) Лэптоп с запущенным сервером nginx
2) Динамичный IP-адрес
3) Коммуникатор\laptop
4) Интернет на лэптопе и Wi Fi на коммуникаторе
5) Сервис в интернете No Ip
6) Желание получить доступ к домашнему лэптопу удаленно

Реализация.
Первым делом, я пошел на сервис в интернете под названием No Ip, по средствам этого сервиса, вы можете привязать любой домен к вашему динамичному IP-адресу. Зарегистрировался там. Подтвердил учетную запись. Далее зашел в панель управления и нажал “Add Host” как на рисунке ниже

Ввел произвольное host-имя и получил домен второго уровня типа хххх.no-ip.biz
Этого вполне достаточно. Далее я зашел по ссылке “Dowload client” в той же панели. И скачал архив с клиентом.

Далее распаковываем архив и установлением программу

tar xvf noip-duc-linux.tar.gz
make
make install

При этом программа задаст вам пару вопросов, на которые не сложно ответить. С установкой программы проблем возникнуть не должно.

Управление программой noip:
Сконфигурировать клиент

/usr/local/bin/noip2 -C

Запустить программу

/usr/local/bin/noip2

Показать информацию о запущенных клиентах

/usr/local/bin/noip2 -S

Так же, читаем README!!!
Теперь, когда программа, запущена она будет привязывать ваш текущий IP к домену который вы зарегистрировали. Само сабой, что можно припарковать свой домен и сделать еще много разных вещей, но меня устраивает и так. Зачем все это? Находясь в дали от своего PC я не могу знать какой там сейчас IP-адрес, так как он динамический и меняется раз в два-три дня. Но если на компе запущена noip которая будет привязывать домен к текущему IP, я как минимум могу пустить ping на домен, с телефона, который покажет мне текущий домашний IP-адрес. Как на скриншоте.

Теперь, когда мне точно известен мой текущий IP, по средствам SSH и могу получить доступ к своему домашнему компу, не только с телефона, но и с другого лэптопа, компа да и вообще любого устройства, на которое можно установить SSH-agent.

Не забываем, что для получения доступа по SSH на домашний компьютер, там должен крутиться SSH-daemon. Ставиться он просто.

aptitude isntall openssh-server

На iPhone, SSH клиент можно установить через программу Cydia. Далее все просто, открываем в телефоне\PC\Laptop\NetBook терминал и вводим команду

ssh [email protected] 

где login – ваш логин с домашней машины.
123.32.233.2 – IP полученный вами после пингования, т.е. адрес вашей домашней машины.

Далее коннект!

Ввожу логин\пароль.

Я у себя на домашней машине, с iPhone.

Тут надо помнить, что SSH дает очень большие возможности, это и хорошая защищенность, и простота, и X-проброс для графики, и протокол SCP для передачи данных. Так же, если вы получаете доступ не с телефона, а с laptop или PC, вы можете еще использовать и Удаленный рабочий стол и FTP-server.
У меня например, крутиться nginx на домашнем лэптоп, с тестовым WordPress, так вот теперь я привязал WordPress к ново созданному домену в интернете, т.е. получилась такая себе тестовая платформа, к которой я могу иметь доступ из интернет в любое время и в не зависимости от того, динамический IP или нет. Очень удобно.