phd_ru: (Default)
Майские праздники прошли, наш медицинский центр открылся. В отделе генетики пока решено работать посменно — половина отдела одну неделю, половина другую. На этой неделе пришла очередь сына ехать на работу.

Это очень удачно, я на сегодня запланировал апгрейд домашнего сервера, но не хотел мешать удалённой работе сына. А так и не мешал.

Десятка ставится на Debian 9 легко, я уже 2 сервера проапгрейдил. И с третьим не было никаких проблем. Больше всего времени занял fsck — он у меня запускается раз в полгода, и, как в одном неприличном анекдоте, сегодня как раз тот день! 40 минут пришлось ждать. :-D

Я отказался от автоматического запуска screen, откатил .profile к предыдущему состоянию. Вместо этого запускаю screen из менюшек fvwm:

unicode-rxvt -e ssh -4 -t remote_host exec screen -xRR -S default

Обнаружил, что я очень быстро перестроился запускать новые окна в screen, а не новые терминалы. Из этого я делаю вывод, что screen — это правильный способ работы.

Upd. Опаньки — кросс-пост из DW в ЖЖ произошёл мгновенно! Починилось!
phd_ru: (Default)
Я дозрел, наконец, начать запускать screen автоматом на удалённых серверах (пока сам, без сына). Начал отсюда, благо там эта проблема уже разжёвана. И быстро наткнулся, что тамошнее решение мне надо допиливать в самую неожиданную сторону.

Тут же выяснилось, что fix_ssh_auth_sock мне не нужен совсем, у меня этот сокет и так зафиксирован, благо я пользуюсь не ssh-agent, а gpg-agent, и сокет у меня ~/.gnupg/S.gpg-agent.ssh.

Далее, if [ -n "$SSH_CONNECTION" ]; then exec screen -xRR; fi. Проблема оказалась в том, что bash выполняет .profile и в интерактивном, и в неинтерактивном шеллах, а в неинтерактивном screen совсем не нужен. Например, в ssh -t host command, или когда ssh используется как транспорт для git или rsync. Пришлось добавить в .profile проверки на интерактивность. В результате хвост моего .profile стал выглядеть так:

# If not running interactively, don't do anything
case $- in
    *i*) ;;
      *) return ;;
esac

# Stop if non-interactive shell
[ -z "$PS1" ] && return

if [ -n "$SSH_CONNECTION" -a -z "$STY" -a -t 0 ] &&
   which screen >/dev/null 2>&1
then
   exec screen -xRR -S default
fi

Полностью можно посмотреть в https://phdru.name/Software/dotfiles/ и https://git.phdru.name/dotfiles.git/

Upd. Я вернул прежний .profile, т.е. удалил запуск screen. Вместо этого я делаю запуск screen вместе с терминалом и ssh:

rxvt-unicode -e ssh -t remote_host exec screen -xRR -S default

X-Post: ЖЖ
phd_ru: (Default)
Новый гендиректор в конце концов издал приказ об удалённой работе, так что мой сын уже месяц дома "работает"; больше, конечно, в игрушки режется и ютюб смотрит. Однако всё же иногда и работает. Пришёл сегодня днём, жалуется: говорит, стали часто происходить обрывы связи, и он теряет работу, которую делает в терминале. Научил его пользоваться screen'ом. Автоматический запуск пока не стал делать, он всё равно много чего руками делает — двойной ssh (jump я ему настроил), sudo bash, теперь screen прибавился.

Жена продолжает ездить на работу. Она занимается поддержкой медицинской информационной системы, которой пользуются все врачи, аптека и склады. Принесла печальную весть — всё больше врачей и медсестёр заражаются и уходят с вирусом на карантин. Один хирург с температурой 38° уехал домой сразу после операции. Чем, интересно, всё это кончится?…
phd_ru: (Default)
Сын вернулся из Москвы, привёз новость — гендиректор издал приказ о запрете удалённого доступа. Т.е. научных сотрудников разогнали по домам, велели работать, но запретили доступ к своим рабочим компьютерам. Что успел прихватить с работы на флешке, то твоё, пользуйся.

Стал делать сыну ProxyJump — встроенный в Windows OpenSSH 7.7 ругается. Полез поискать ошибку. Нашёл. Пришлось ставить Chocolatey, делать choco install openssh (приплыл OpenSSH 8.0), и с ним уже ProxyJump заработал.
phd_ru: (Default)
Наш медицинский центр разогнали на карантин. В первую очередь научников, конечно, а не врачей и не медсестёр. Сын сидит дома.

Заниматься генетикой из дома трудновато. Достать удалённо пробирку из холодильника, залить содержимое в анализатор… Вместо этого юноша компилирует какие-то программы для будущих работ.

Старший сисадмин сети нормальный VPN (пока) никому не дал. Говорит — пишите заявления, всё только по бумажке. А как писать заявления, если официально приказа о карантине не было, и весь карантин — один большой прогул?

Я дал юноше аккаунт на моём сервере, он теперь ходит на свои виртуалки через двойной ssh. Пользоваться ProxyJump я его пока не научил, наверное, сегодня вечером.

PS. Уехал в Москву по личным делам. Он собирался ими заняться после работы, а теперь получилось в середине дня вместо работы. :-)
phd_ru: (Default)
Коллеги. Тормозит ssh:
$ time ssh oper.med.ru echo test
test

real	7m32.477s
user	0m0.016s
sys	0m0.008s

Тормозит не всегда; это случается раз в несколько дней, продолжается час-полтора, потом работает нормально. В разное время; бывает в 7 вечера, а сегодня около полуночи началось. Тормозит ssh на 2 моих внешних сервера (а у меня их 2 и есть); внутри квартиры всё работает нормально. Тормозит только ssh, остальные протоколы работают без проблем. Торможение возникает в середине протокола: ssh -vvv )
Что это? Где искать проблему? Я перевесил sshd на другой порт — не помогло. Где-то между мной и серверами стоит DPI специально против ssh?

О, VPN!

Sep. 9th, 2019 07:46 pm
phd_ru: (Default)
Отказался от двойного ssh -D. Типичные проблемы TCP-over-TCP.

Настроил OpenVPN по UDP, а поверх него уже ssh -D. Я уже давно занимаюсь настройкой VPN на всех своих серверах, как раз допилил до состояния, когда им стало удобно пользоваться.

Закрыл дачный сезон, вывез всякую оставшуюся мелочь с дачи. Впереди отпуск, море, лето! :-P
phd_ru: (Default)
Два месяца назад у меня на работе сменился провайдер с (кажется) Комкора на проводной Билайн. Предыдущий провайдер блокировал DW, но не блокировал мою домашнюю страничку на хостинга у DigitalOcean. Билайн ровно наоборот — блокирует DO, но не блокирует DW. Мой домашний провайдер в Подмосковье много чего блокирует, особенно часто я натыкаюсь на торренты (и для работы с ними у меня в DigitalOcean VPS, на которую я хожу по ssh -D :-))), но DW и DO не блокирует.

Жена в этом году несколько раз ездила на дачу, и я просил её проверить, как там со связью. В прошлом году хороший интернет был только по поводу футбола и выборов. В этом году стабильно держится 4G 3-4 палочки.

Ok, мы в пятницу поехали на дачу на все выходные. Билайновский 4G, когда работает, даёт очень неплохую скорость, сравнимо с домашним WiFi. Проблема в том, что не всегда работает. Полчаса работает без перебоев, и это обалденно. Потом потом полчаса в режиме 30 секунд есть, 30 секунд нет, и это люто бесит.

И да, это же Билайн, он мою VPS'ку, [падшая женщина], блокирует! Пришлось думать, как запустить ssh -D в обход Б. Сначала я пробовал ProxyCommand + ssh -D (ProxyCommand домой, мне теперь больше некуда), но так Socks не работает. Тогда я запустил с дачи домой ssh -L localhost:1080:home:1080 home, дома запустил ssh -fN -D home:1080 phdru.name, вот так заработало.

Вот блин. Чума на всех цензоров.

Upd. Кстати, у меня была возможность потестировать на даче Теле2. К жене заезжал в гости сын со своей девушкой, и у неё в кармане оказался Теле2 (я не постеснялся спросить). Никакого 4G, только H+, и она пожаловалась, что чуть дальше нашей дачи связь вообще пропадает, даже позвонить нельзя. Жаль, такие привлекательные цены на мобильный интернет — а фиг.

Теперь бы ещё двух оставшихся операторов потестировать…
phd_ru: (Linux)
Давно не заходили терминалкой на BBS?

https://github.com/jquast/x84/

«The primary purpose of x/84 is to provide a server framework for building environments that emulate the feeling of an era that predates the world wide web. It may be used for developing a classic bulletin board system (BBS) -- one is provided as the 'default' scripting layer. It may also be used to develop a MUD, a text-based game, or a game-hosting server such as done by dgamelaunch.»

Найдено в Python Weekly.
phd_ru: (Linux)
И ещё: на SF можно зайти по ssh, и все репозитории доступны в файловой системе. Хочешь, конфиг редактируй, хочешь хуки ставь.

PS. А, какая прелесть! Генераторы манпыжей для git: 1, 2. Прислал Гвидо.
phd_ru: (Linux)
Я обычно пользуюсь xterm'ом (точнее, urxvt) со светло-серым фоном. Но по разным причинам я время от времени запускаю терминал с чёрным фоном — и на локальной машине, и для хождения на некоторые удалённые. И на чёрном фоне очень неудобно читать man. Пришлось пойти в ИНет, найти, что и как настроить. И настроить по своему вкусу.
phd_ru: (Default)
Следующая очевидная идея после программирования статусов - синхронизировать ноутбук и телефон между собой. Они у меня не всегда строго синхронизированы, бывает, на одном online, а на другом offline. Но остальные статусы я стараюсь выставлять одновременно. Хорошо бы это автоматизировать.

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

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

Можно пойти ещё одним путём - воспользоваться ssh connection sharing. Запустить с ноутбука на телефон один постоянный сеанс ssh. Это решает сразу 3 проблемы. Во-первых, понятно, что телефон доступен - это определяется по наличию сокета ssh. Во-вторых, понятно, что разрешено менять статус. И в третьих, повторные коннекты с N900 будут происходить быстрее.

Есть ещё четвёртый вариант - DBUS по сети, но этим я не умею пользоваться.

Upd. Всё прекрасно работает, только с удалённым запуском скриптов DBUS на N900 пришлось повозиться. Фокус заключается в использовании run-standalone.sh: ssh n900 run-standalone.sh online.

October 2025

S M T W T F S
   12 34
567891011
12131415161718
19202122232425
262728293031 

Syndicate

RSS Atom

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Oct. 4th, 2025 09:33 am
Powered by Dreamwidth Studios