SSH-сервер для WSL openSUSE

Если часовой пояс составляет целое число часов (Дата GNU):

$ date +%-:::z
-4

В противном случае (предположим -0427):

$ date +%-:::z | awk -F: '{x=$1;printf("%s%.2f\n",x>=0?"+":"-",(x>=0?x:-x)+$2/60)}'
-4.45

Или, для более старых реализаций с более ограниченной датой, используйте простой:

$ date +%z | awk -F '' '{printf("%s%.2f\n",$1,$2$3+($4$5)/60)}'
-4.45

Это все еще не POSIX, потому что нулевая FS не определена для POSIX awk.

Для POSIX нам нужно разделить символы с помощью sed:

$ date +%z |\
sed -E 's/(.)(..)(..)/\1 \2 \3/' |\
awk '{ printf("%s%.2f\n",$1,$2+$3/60) }'
0
17.03.2020, 10:47
1 ответ

Попробуйте dropbear , это крошечный SSH-сервер.

Пакет установщика не будет работать в WSL, поэтому соберите его из исходного кода. Загрузите и распакуйте исходный код где-нибудь, а затем соберите и установите вот так:

./configure
make
make install

Далее вам нужно создать серверные ключи для dropbear:

mkdir /etc/dropbear
cd /etc/dropbear
sudo dropbearkey -t rsa -f dropbear_rsa_host_key
sudo dropbearkey -t dss -f dropbear_dss_host_key

Затем запустите его:

sudo /usr/sbin/dropbear -F

Теперь вы можете подключаться к WSL по SSH! (Я тестировал на виртуальной машине openSUSE, работающей на той же машине. Может быть переадресация портов и прочее, с чем можно бороться за внешний доступ.)

Также должна быть возможность запускать dropbear в фоновом режиме или добавлять его как постоянную вещь в ваш запуск -возможно, кто-то может предоставить более подробную информацию об этом, если знает, как это сделать.

0
28.04.2021, 23:20

Теги

Похожие вопросы