2008-05-10

SSH-туннель

Пару дней назад решал вопрос по подключению к удаленному MySQL серверу через SSH-туннель. По этому поводу решил разродиться короткой памяткой (для себя, для вас) о том как этот тунель организовать под Linux. Уверен, что установить и запустить SSH демон на сервере у вас не составит труда, так же вы уже установили клиент на своем клиенте. Вообще, все очень просто. Ни сервер, ни клиент, которые вы хотите подружить через туннель (я говорю о ПО, а не о машинах как таковых), не должны быть специально обучены работать с туннелем, они и знать о нем не будут. Все будет работать в штатном режиме, как будто и нет никакого туннеля. Что ж, делаем в своем любимом терминале, на клиентской машине, так:
$ ssh -f -N -L4787:example.org:8787 user@server.org

Все, теперь несколько комментариев:

  • 4787 - Этот порт будет открыт на локальной машине, используйте его для доступа к вашему серверу приложения (MySQL, PostgreSQL и т.д.), используйте тот клиент, который предназначен для работы с этим сервером.

  • example.org:8787 - Это удаленный сервер, общение с которым вы и шифруете. Понимайте так, что порт 8787 (в данном примере) на удаленной машине будет транслироваться в 4787 на вашем клиенте.

  • user@server.org - Тут все как обычно. Это машина, на которой установлен SSH-сервер, user - пользователь на этом сервере. Шифрованный канал будет организован именно до этой машины, а вот от неё до example.org трафик шифроваться не будет, будет использован уже ваш сетевой протокол. Обычно example.org и server.org это один и тот же сервер (конечно же используется одно и то же имя или localhost вместо example.org).


По всем остальным ключам и, если вам нужны подробности, обращайтесь к man'у:
$ man ssh
Туннель можно сделать и с помощью PuTTY - почитайте инструкцию по подключению к MySQL, там все можно по скринам понять, если у вас с английским туго.

p.s. Совсем забыл. Респект и уважуха нашим ветеранам. Всех с праздником.

2008-05-08

DVD-файлы в DVD-видео

Linux мне нравится все больше и больше.
Довольно не предусмотрительно натаскал DVD-фильмов в свое время, теперь, когда возникло желание залить обратно это дело и получить нормальный DVD-Video, возникла проблема. Натаскал, это значит выгрузил все что находится в VIDEO_TS (хорошо, что сообразил и взял не только VOB'ы :-), а не сделал образ диска.
Что бы сделать из этой коллекции DVD-Video не достаточно просто скопировать файлы в папку VIDEO_TS и захреначить это дело на диск, работать не будет, во всяком случае не на всех проигрывателях. Образ DVD-Video делается очень просто, достаточно воспользоваться утилем mkisofs с ключом -dvd-video, и все. Образ готов, осталось залить его на диск вашим любимым способом, наслаждайтесь качественным видео :-).

2008-05-06

Аналог start в Linux

start, я так назвал скрипт в линухе. Некоторые консольные приложения, например сервера, удобнее запускать в отдельном терминале, а не в том, в котором ты работаешь в данные момент. Банальный пример - при разработке клиент-серверного приложения мне из far/mc приходится запускать как сервер (я работаю с Python) так и клиент, при этом нет желания открывать руками отдельный терминал, запускать там mc, выбирать нужный скрипт, давить на него Enter'ом (до вчерашнего дня я делал именно так, потом мне надоело и начал думать :-). В Far все делается просто - жмем Shift + Enter и приложение запускается в отдельном окне (я говорю про консольные). Для Linux мне пришлось написать несложный sh-скрипт, который выполняет приложение в xterm:
#!/bin/sh
xterm -title "$*" -geometry 100x25 -e bash --login -c "$*" &

Очень удобно :-).