LINUX.ORG.RU

ssh по ключу на оффтопик

 ,


0

1

Хочу настроить это https://code.visualstudio.com/docs/remote/ssh-tutorial Поставил в виртуалку десятку, запустил sshd. В C:\Users\user\.ssh\authorized_keys добавил свой ключ из ~/.ssh/id_rsa.pub. В C:\Users\user\.ssh\sshd_config отключил доступ с паролем PasswordAuthentication no. Рестартнул сервис и пытаюсь подключиться

$ ssh 'user@192.168.89.136'
user@192.168.89.136: Permission denied (publickey,keyboard-interactive).

Авторизация по ключу в виндоус вообще доступна?

# This is the sshd server system-wide configuration file.  See
# sshd_config(5) for more information.

# The strategy used for options in the default sshd_config shipped with
# OpenSSH is to specify options with their default value where
# possible, but leave them commented.  Uncommented options override the
# default value.
 
#Port 22
#AddressFamily any
#ListenAddress 0.0.0.0
#ListenAddress ::

#HostKey __PROGRAMDATA__/ssh/ssh_host_rsa_key
#HostKey __PROGRAMDATA__/ssh/ssh_host_dsa_key
#HostKey __PROGRAMDATA__/ssh/ssh_host_ecdsa_key
#HostKey __PROGRAMDATA__/ssh/ssh_host_ed25519_key

# Ciphers and keying
#RekeyLimit default none

# Logging
#SyslogFacility AUTH
LogLevel ERROR

# Authentication:

#LoginGraceTime 2m
#PermitRootLogin prohibit-password
#StrictModes yes
#MaxAuthTries 6
#MaxSessions 10

PubkeyAuthentication yes

# The default is to check both .ssh/authorized_keys and .ssh/authorized_keys2
# but this is overridden so installations will only check .ssh/authorized_keys
AuthorizedKeysFile	.ssh/authorized_keys

#AuthorizedPrincipalsFile none

# For this to work you will also need host keys in %programData%/ssh/ssh_known_hosts
#HostbasedAuthentication no
# Change to yes if you don't trust ~/.ssh/known_hosts for
# HostbasedAuthentication
#IgnoreUserKnownHosts no
# Don't read the user's ~/.rhosts and ~/.shosts files
#IgnoreRhosts yes

# To disable tunneled clear text passwords, change to no here!
PasswordAuthentication no
#PermitEmptyPasswords no

#AllowAgentForwarding yes
#AllowTcpForwarding yes
#GatewayPorts no
#PermitTTY yes
#PrintMotd yes
#PrintLastLog yes
#TCPKeepAlive yes
#UseLogin no
#PermitUserEnvironment no
#ClientAliveInterval 0
#ClientAliveCountMax 3
#UseDNS no
#PidFile /var/run/sshd.pid
#MaxStartups 10:30:100
#PermitTunnel no
#ChrootDirectory none
#VersionAddendum none

# no default banner path
#Banner none

# override default of no subsystems
Subsystem	sftp	sftp-server.exe

# Example of overriding settings on a per-user basis
#Match User anoncvs
#	AllowTcpForwarding no
#	PermitTTY no
#	ForceCommand cvs server

Match Group administrators
       AuthorizedKeysFile __PROGRAMDATA__/ssh/administrators_authorized_keys

★★★★

Ответ на: комментарий от token_polyak

Не, конфиг лежит в правильном месте.

dnb ★★★★
()
Ответ на: комментарий от dnb

тогда разобраться где логи - цеж винда.
к ней есть своя система логофицирования с красивым граф.интерфейсом.

pfg ★★★★★
()
Ответ на: комментарий от pfg

к ней есть своя система логофицирования с красивым отвратительным, тормозным граф.интерфейсом.

Тому, кто запилит аналог journalctl с less или хотя бы перенаправление в syslog, я готов платить за подписку на самых проприетарных условиях.

Ибо администрирование вендой что через гуй, что через не имеющий аналогов в мире PowerShell - это ужос, и хочется заменить хоть часть этого на нормальные утилиты.

А логи sshd да, в event viewer, под Applications and Services Logs.

token_polyak ★★★
()
Последнее исправление: token_polyak (всего исправлений: 2)
Ответ на: комментарий от token_polyak

в event viewer, под Applications and Services Logs.

Это как фейсбук, хрен найдёшь что где находится.

Имя журнала:   OpenSSH/Operational
Источник:      OpenSSH
Дата:          16.04.2022 17:55:00
Код события:   4
Категория задачи:Отсутствует
Уровень:       Сведения
Ключевые слова:
Пользователь:  СИСТЕМА
Компьютер:     DESKTOP-L785J8J
Описание:
sshd: Failed publickey for user from 192.168.89.1 port 52722 ssh2: RSA SHA256:Ahe6hQGwb7otXqsvlqsYbfjFU4MM0iFxuLWKBvD+LlE
Xml события:
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
  <System>
    <Provider Name="OpenSSH" Guid="{c4b57d35-0636-4bc3-a262-370f249f9802}" />
    <EventID>4</EventID>
    <Version>0</Version>
    <Level>4</Level>
    <Task>0</Task>
    <Opcode>0</Opcode>
    <Keywords>0x4000000000000000</Keywords>
    <TimeCreated SystemTime="2022-04-16T14:55:00.2201019Z" />
    <EventRecordID>198</EventRecordID>
    <Correlation />
    <Execution ProcessID="1604" ThreadID="7128" />
    <Channel>OpenSSH/Operational</Channel>
    <Computer>DESKTOP-L785J8J</Computer>
    <Security UserID="S-1-5-18" />
  </System>
  <EventData>
    <Data Name="process">sshd</Data>
    <Data Name="payload">Failed publickey for user from 192.168.89.1 port 52722 ssh2: RSA SHA256:Ahe6hQGwb7otXqsvlqsYbfjFU4MM0iFxuLWKBvD+LlE</Data>
  </EventData>
</Event>

Очень странно. Вместо ssh-copy-id я просто скопировал свой id_rsa.pub в authorized_keys на винде.

dnb ★★★★
()
Ответ на: комментарий от token_polyak

эт наверн только Марка Руссиновича распинывать %)

pfg ★★★★★
()

В общем, решение такое: удалить openssh-server который был установлен из настройки-приложения-компоненты-… и поставить отсюда https://github.com/PowerShell/Win32-OpenSSH/releases. Потом запустить демон Start-Service sshd и, о чудо!, доступ по ключу без пароля будет работать. Магия.

dnb ★★★★
()

If the user account on the server you are connecting to is in the local Administrators group, the public key must be placed in the C:\ProgramData\ssh\administrators_authorized_keys instead of the user’s .ssh folder. Additionally, only the Administrators group and SYSTEM account can have access to that file, for security purposes

Lrrr ★★★★
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.