Для Debian / Ubuntu / Mint: apt install openssh-server
после этого отредактировать файл /etc/ssh/sshd_config
Для Windows:
Если версия Windows 10 1809 (Windows Server 2019) и новее, то для установки запускаем команды powershell:
Get-WindowsCapability -Online -name "*ssh*" | Add-WindowsCapability -Online
New-NetFirewallRule -Name sshd -DisplayName 'OpenSSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22
Get-Service sshd | Set-Service -StartupType Automatic -PassThru | Start-Service
Если версия Windows 10 1803 и старше, а также Windows 8, 7, то:
1. Скачиваем пакет установки https://github.com/PowerShell/Win32-OpenSSH/releases/latest
2. Распаковываем содержимое в папку Program Files
Expand-Archive OpenSSH-Win64.zip $env:programfiles
3. Устанавливаем SSH install-sshd.ps1
4. Открываем порт 22 в фаерволе netsh advfirewall firewall add rule name=sshd dir=in action=allow protocol=TCP localport=22
5. Запускаем службу. net start sshd
6. Устанавливаем режим запуска службы на автоматический. Set-Service sshd -StartupType Automatic
7. Правим файл%ProgramFiles%/Openssh-Win64/sshd_config %programdata%\ssh\sshd_config
Код на powershell
$sourceSSH='c:\tmp\OpenSSH-Win64.zip'
$destinationFolder=$env:programfiles+'\OpenSSH-Win64'
Expand-Archive $sourceSSH $env:programfiles -Force
cd $destinationFolder
./install-sshd.ps1
New-NetFirewallRule -Name sshd -DisplayName 'OpenSSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22
Get-Service sshd | Set-Service -StartupType Automatic -PassThru | Start-Service
Если нужно сделать в cmd:
powershell.exe -ExecutionPolicy ByPass %ProgramFiles%/Openssh-Win64/install-sshd.ps1
netsh advfirewall firewall add rule name=sshd dir=in action=allow protocol=TCP localport=22
net start sshd
sc config sshd start= auto
Источник
Для авторизации по ключам запускаем ssh-keygen -t rsa на текущей машине.
Указываем имя файла, затем пароль для доступа к сертификату (двухфакторная аутентификация). В текущей папке создаться два файла - приватный и публичный (.pub)
Затем файл с приватным ключом копируем в ~/.ssh/
Добавляем строки в файл ~/.ssh/config
Host <Name> <FQDN>
HostName <FQDN>
User <login>
IdentityFile ~/.ssh/<key_file>
IdentitiesOnly yes
А.Задать таймаут сессии:
ClientAliveInterval 1800
ClientAliveCountMax 0
B. Аутентификация по ключам
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys .ssh/authorized_keys2
C. Управление доступом через пароли
PasswordAuthentication no
PermitEmptyPasswords no
после этого отредактировать файл /etc/ssh/sshd_config
Для Windows:
Если версия Windows 10 1809 (Windows Server 2019) и новее, то для установки запускаем команды powershell:
Get-WindowsCapability -Online -name "*ssh*" | Add-WindowsCapability -Online
New-NetFirewallRule -Name sshd -DisplayName 'OpenSSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22
Get-Service sshd | Set-Service -StartupType Automatic -PassThru | Start-Service
Если версия Windows 10 1803 и старше, а также Windows 8, 7, то:
1. Скачиваем пакет установки https://github.com/PowerShell/Win32-OpenSSH/releases/latest
2. Распаковываем содержимое в папку Program Files
Expand-Archive OpenSSH-Win64.zip $env:programfiles
3. Устанавливаем SSH install-sshd.ps1
4. Открываем порт 22 в фаерволе netsh advfirewall firewall add rule name=sshd dir=in action=allow protocol=TCP localport=22
5. Запускаем службу. net start sshd
6. Устанавливаем режим запуска службы на автоматический. Set-Service sshd -StartupType Automatic
7. Правим файл
Код на powershell
$sourceSSH='c:\tmp\OpenSSH-Win64.zip'
$destinationFolder=$env:programfiles+'\OpenSSH-Win64'
Expand-Archive $sourceSSH $env:programfiles -Force
cd $destinationFolder
./install-sshd.ps1
New-NetFirewallRule -Name sshd -DisplayName 'OpenSSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22
Get-Service sshd | Set-Service -StartupType Automatic -PassThru | Start-Service
Если нужно сделать в cmd:
powershell.exe -ExecutionPolicy ByPass %ProgramFiles%/Openssh-Win64/install-sshd.ps1
netsh advfirewall firewall add rule name=sshd dir=in action=allow protocol=TCP localport=22
net start sshd
sc config sshd start= auto
Источник
Для авторизации по ключам запускаем ssh-keygen -t rsa на текущей машине.
Указываем имя файла, затем пароль для доступа к сертификату (двухфакторная аутентификация). В текущей папке создаться два файла - приватный и публичный (.pub)
Затем файл с приватным ключом копируем в ~/.ssh/
Добавляем строки в файл ~/.ssh/config
Host <Name> <FQDN>
HostName <FQDN>
User <login>
IdentityFile ~/.ssh/<key_file>
IdentitiesOnly yes
Строку Host можно указать как <Name>*, тогда сработает шаблон, но лучше указать короткое и полное имя.
Копируем публичный ключ на сервер ssh-copy-id -i ../<name>.pub @<address>
На сервере запрещаем доступ через пароли.
Настройки конфига ssh.
А.Задать таймаут сессии:
ClientAliveInterval 1800
ClientAliveCountMax 0
B. Аутентификация по ключам
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys .ssh/authorized_keys2
C. Управление доступом через пароли
PasswordAuthentication no
PermitEmptyPasswords no
Комментариев нет:
Отправить комментарий