Как из linux подключиться к windows


Как подключиться к Linux из Windows

В  мире ИТ существует уже довольно широкий спектр операционных систем, начиная с серверных, заканчивая операционными системами для мобильных устройств. В обычных пользовательских компьютерах и в серверах довольно часто используются две ОС — Linux и Windows. Поэтому очень часто возникают ситуации, когда приходится подключаться по сети из одной операционной системы к другой для выполнения разнообразных операций.

В этой статье мы рассмотрим варианты подключения к Linux из Windows. Существуют бесплатные и условно бесплатные утилиты вроде AnyDesk или TeamViewer, но установка их довольно тривиальна и не нуждается в дополнительном пояснении. Утилиты подобного рода обладают рядом ограничений при бесплатном некоммерческом использовании, либо их функциональность не удовлетворяет тем или иным потребностям пользователя. Мы рассмотрим полностью бесплатные способы как подключится к Linux из Windows.

Содержание статьи:

Удалённый доступ к Linux с помощью VNC

На сегодняшний день самое популярное удаленное подключение к Linux из Windows, с использованием привычный в Windows графического интерфейса, является VNC (Virtual Network Computing) — утилита, использующая протокол RFB (Remote FrameBuffer — удалённый кадровый буфер). Управление осуществляется путём передачи нажатий клавиш на клавиатуре и движений мыши с одного компьютера на другой и ретрансляции содержимого экрана через компьютерную сеть.

В качестве сервера VNC в данном примере будет использоваться  TightVNC, установленный в Ubuntu 20.04. Для установки сервера VNC необходимо выполнить ряд действий:

Шаг 1. Установка рабочей среды XFCE

Xfce — одна из самых легковесных рабочих сред, используемых в Linux, она будет быстро работать даже при слабом и нестабильном сетевом подключении. Установите её с помощью команд:

sudo apt update

sudo apt install xfce4 xfce4-goodies

Шаг 2. Установка TightVNC

Далее установите TightVNC:

sudo apt install tightvncserver

Шаг 3. Настройка пароля

Перед началом выполнения всех действий необходимо задать пароль пользователя VNC.  Выполните команду:

vncpasswd

Вам будет предложено создать новый пароль, а также пароль только для просмотра. Откажитесь от второй опции:

Завершите процесс vncserver:

vncserver -kill :1

Шаг 4. Настройка скрипта запуска

Отредактируйте скрипт, который выполняется после запуска VNC-сервера:

nano ~/.vnc/xstartup

Он должен содержать такой текст:

#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
startxfce4 &

Сделайте файл исполняемым:

chmod +x ~/.vnc/xstartup

Шаг 5. Запуск VNC сервера

На этом этапе уже можно запустить VNC-сервер с помощью команды:

vncserver

Шаг 6. Подключение из Windows

Для того, чтобы подключиться из Windows к вашему Linux-серверу, используйте TightVNC Viewer.

Укажите IP-адрес компьютера, к которому нужно подключиться, и номер порта в поле Remote Host. В данном примере — 192.168.56.102::5901:

После того, как будет введён пароль, вы должны увидеть рабочий стол Xfce:

Шаг 8. Настройка systemd

Для того, чтобы запуск вашего VNC-сервера добавить в автозагрузку надо использовать systemd. Создайте новый файл сервиса systemd:

sudo nano /etc/systemd/system/[email protected]

Его содержимое должно быть следующим:

[Unit]
Description=Systemd VNC server startup script for Ubuntu 20.04
After=syslog.target network.target
[Service]
Type=forking
User=ubuntu
ExecStartPre=-/usr/bin/vncserver -kill :%i &> /dev/null
ExecStart=/usr/bin/vncserver -depth 24 -geometry 800x600 :%i
PIDFile=/home/ubuntu/.vnc/%H:%i.pid
ExecStop=/usr/bin/vncserver -kill :%i
[Install]
WantedBy=multi-user.target

Измените имя пользователя ubuntu и рабочего каталога ubuntu на нужные вам значения. Если у вас запущен VNC-сервер, остановите его:

vncserver -kill :1

Сообщите systemd о появлении нового сервиса:

sudo systemctl daemon-reload

Добавьте запуск вашего нового сервиса в список автозагрузки:

sudo systemctl enable [email protected]

Запустите VNC-сервер:

sudo systemctl start [email protected]

Использование RDP для удалённого подключения

Помимо VNC, для управления Linux-сервером из Windows можно воспользоваться RDP (Remote Desktop Protocol). Для этого на компьютере с Ubuntu 20.04 установите утилиту xrdp:

sudo apt install xrdp

Для корректной работы сервиса необходимо добавить пользователя xrdp в группу ssl-cert:

sudo adduser xrdp ssl-cert

Установите Xfce:

sudo apt-get install xfce4

Добавьте Xfce в сессии RDP в качестве рабочего стола по умолчанию:

echo xfce4-session >~/.xsession

Перезапустите сервис xrdp:

sudo systemctl restart xrdp.service

Процедура подключения из Windows к Linux-серверу по протоколу RDP почти ничем не отличается от подключения к удалённым Windows-серверам. Введите IP-адрес сервера, логин и пароль пользователя в Linux:

Если всё сделано правильно, вы увидите рабочий стол Xfce:

Подключение к Linux из Windows по SSH

Для подключения к компьютеру под управлением Linux по протоколу SSH из Windows можно воспользоваться PowerShell. Сначала становите OpenSSH Client, если ещё не установлен. Запустите на вашем компьютере PowerShell от имени администратора системы и выполните следующую команду:

Get-WindowsCapability -Online | ? Name -like 'OpenSSH*'

Это необходимо для того, чтобы узнать текущую версию SSH-клиента. В данном примере доступна версия OpenSSH.Client-0.0.1.0. Установите OpenSSH.Client с помощью команды:

Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0

Для того, чтобы подключиться к устройству, на котором запущен SSH-сервер, необходимо ввести имя пользователя и IP-адрес. Команда для подключения по SSH используя PowerShell выглядит так:

ssh [email protected]

Здесь ubuntu — имя пользователя на удалённом компьютере, а 192.168.56.1 — IP-адрес Linux-сервера, на котором запущен демон SSH.

При первом подключении необходимо подтвердить использование специального персонального ключа для шифрованного соединения по SSH-протоколу (введите слово Yes), затем введите пароль пользователя (в данном случае для пользователя ubuntu):

Как видите, соединение прошло успешно. Теперь можно выполнять все команды так же, как если бы вы их выполняли используя стандартный Linux SSH-клиент:

Для завершения терминальной сессии на удалённом компьютере введите команду exit. Теперь вы знаете как выполняется подключение к Linux из Windows по SSH.

Использование Putty для подключения к Linux

Пожалуй, одним из самых популярных способов подключения к Linux из Windows является кроссплатформенная утилита Putty — небольшая по размерам, но очень часто незаменима для подключения по таким протоколам как SSH, Telnet, rlogin и даже с помощью последовательных портов.

Для обычного подключения к Linux-серверу по протоколу SSH достаточно в поле Host Name (or IP-address) указать его IP-адрес и нажать кнопку Open (в данном примере Linux-сервер имеет IP-адрес: 192.168.56.102):

При первом подключении Putty предупредит, что используется специальный ключ безопасности и его нужно добавить в доверенные хосты. Нажмите кнопку Да:

Далее нужно будет ввести логин и пароль.  Если всё сделано правильно,  запустится удалённая сессия терминала Linux:

Мало кто знает, что Putty позволяет запустить почти любое приложение, установленное на компьютере с Linux, по сети в Windows. Для этого на компьютере с Windows нужно установить собственный X-сервер. В данном примере воспользуемся Xming.

Скачайте Xming с официального сайта. Установка довольно тривиальная, поэтому не будем на ней останавливаться. Ничего не меняйте в процессе установки. Просто нажимайте кнопку Next до тех пор, пока программа не установится и не запустится:

Когда установка Xming завершится, откройте Putty и в настройках сессии для вашего подключения в разделе SSH -> X11 включите флажок напротив опции Enable X11 forwarding, а также, в строке Отображение дисплея X впишите значение localhost:0, после чего откройте сессию подключения с помощью кнопки Open:

В открывшемся терминале Putty введите консольное название программы, обладающей графическим интерфейсом. В данном примере введено название графического редактора drawing:

drawing &

(Знак & позволит запустить программу в фоновом режиме, в этом случае в окне Putty можно будет выполнять и другие команды):

Как видите, Linux-приложение drawing успешно запустилось по сети на X-сервере, установленном в Windows. С ним можно работать так же, как и с локальным приложением.

Выводы

Сегодня не существует слишком уж больших проблем для подключения к Linux из Windows. Способов существует довольно много. Каждый из них обладает своими достоинствами и недостатками, например, скорость работы VNC, да и других тоже, существенно зависит от скорости сетевого соединения. Существуют также программные средства, позволяющие подключаться к Linux-серверам используя мессенджеры или браузеры.

Удалённое управление Linux из-под Windows

Настроить сервер Linux? Возможно, вы настроили его как решение для сетевого хранилища. Или, может быть, у вас есть рабочий компьютер с Linux, медиацентр или простой дополнительный компьютер в другой комнате.

Как бы то ни было, в какой-то момент вам понадобится удаленный доступ к устройству Linux с ПК с Windows или ноутбука. Итак, каково решение?

У пользователей Windows есть несколько инструментов, которые обеспечивают простой удаленный рабочий стол из Windows в Linux. Хотите знать, как получить доступ к вашему рабочему столу Linux из Windows? Читай дальше!

Вам понадобится IP-адрес устройства Linux

Прежде чем начать, найдите IP-адрес вашего устройства Linux. Это необходимо для всех параметров удаленного подключения, хотя в некоторых случаях подходит имя хоста (сетевое имя устройства).

Самый простой способ проверить IP-адрес — войти в систему на вашем устройстве Linux и открыть терминал. Войти:

ifconfig

IP-адрес устройства будет отображаться.

Если у Linux есть Ethernet-соединение, адрес будет указан вместе с eth0. Если он подключен по беспроводной сети, найдите IP-адрес, указанный для wlan0.

Если это не легко или не удобно, есть другой метод, который почти такой же простой. В окне браузера подключитесь к маршрутизатору. Обычно это адрес 192.168.0.1 или 192.168.0.100 . Вы должны быть в состоянии проверить, посмотрев на сам маршрутизатор или на документацию, поставляемую с ним.

После входа в маршрутизатор найдите опцию «Подключенные устройства» или аналогичную. Просмотрите IP-адреса, ч

Удаленный доступ к компьютеру Windows из Linux Astra и наоборот

Друзья, приветствую! Продолжим изучать Astra Linux и сегодня расскажу об еще одном способе подключения к удаленному рабочему столу по RDP. Ранее мы с вами уже изучили  процесс установки X2go  и запуск его с Windows и из Linux.

Хороший, универсальный инструмент;  однако и  у него есть свои недостатки. Он прожорлив на трафик и при подключении  к тому же создает дополнительную сессию пользователя. В линукс это не всегда удобно.

Сегодня расскажу — как на компьютере с Астра Linux быстро  настроить удаленный рабочий стол для работы на  станции с Windows  или  подключаться с компьютера  с операционной системой Линук Астра Орелс.

При помощи одной программы можно будет удаленно подключаться по RDP к рабочей станции на Линукс или  Windows на выбор. Список используемых подключений сохраняется, что очень удобно.

Начнем с Астра Linux. Нам нужно удаленно подключиться к рабочей станции с ОС Астра Линукс Орел. Сначала на машине к которой нужно подключиться устанавливаем  серверный пакет XRDP:

sudo apt install xrdp

Далее, необходимо сделать настройки подключения, разрешить удаленные сессии. Через «Пуск»-Панель управления- «Вход в систему» — «Дополнительно» устанавливаем флаг «Разрешить удаленные сессии»; сохраняем настройки.

Станцию к которой будем подключаться настроили. На клиентской машине с линукс  (с которой подключаемся) устанавливаем графический пакет KRDC:

sudo apt install krdc

Программа появится в разделе «Сеть», запускаем ее. Чтобы подключаться по протоколу RDP сначала выбираем соответствующий протокол:

Далее, все очень легко.

Для удаленного подключения извне в качестве инструмента соединяющего разные сети используем Open VPN сервер, и не забываем открыть нужные порты на роутере.

Создаем новое подключение — вводим в поле «Введите текст…» IP адрес компьютера с линукс к которому будем подключаться. Затем настройте разрешение экрана, глубину цвета,  и при желании общую папку для обмена файлами через RDP.

Все эти настройки влияют на скорость соединения  и внешний вид удаленного стола — выбирайте в зависимости от скорости соединения и разрешения монитора.

Далее, вводим имя пользователя и пароль от удаленного компьютера. Соединение установлено; теперь можно продолжить настроить сеанс из меню:

Видим, что  выбранное разрешение экрана сваливает ярлыки в одну кучу? Разъединяемся и настраиваем подключение так как надо; рекомендую выставить разрешение такое как на вашем мониторе в данный момент в «Настройках»:

Для подключения к Linux все  настраивается аналогичным образом. Можно пользоваться и журналом если настройки сбились.

Нажимаем кнопку «Перехватывать все клавиши» и тогда возможно будет пользоваться сочетаниями клавиш для разъединения сеанса — удобно при полноэкранном режиме.

Как настроить удаленный доступ к компьютеру с Linux Астра с рабочей станции  Windows?

Если установлена серверная часть XRDP  на линукс, то на рабочей станции с Windows собственно ничего не надо настраивать. Запускаем через  меню «Пуск » -«Стандартные» — «Подключение к удаленному рабочему столу» водим либо имя компьютера  к которому подключаемся либо его адрес…

Затем надо будет ввести имя пользователя и пароль удаленного компьютера. Если все верно, при первом соединении появится запрос о сертификате, соглашаемся.

Почти все так как  обычно, нужно только немного повозится с настройками. К  внешнему виду привыкаешь быстро, Xrdp работает быстрее чем  X2go. Так что Астра Линукс — вполне на равных может работать по удаленке, — проверено! Удачи.

Автор публикации

не в сети 5 дней

admin

0 Комментарии: 61Публикации: 385Регистрация: 04-09-2015

управляем Linux из-под Windows, и наоборот / Блог компании Сервер Молл / Хабр

В прошлой статье я обещал рассмотреть механизм удаленного подключения с Windows на серверы под управлением *nix, и наоборот при помощи PowerShell. Обещанного обычно ждут три года, но я успел чуть раньше. Что ж, если хочется с верного макбука управлять гетерогенной инфраструктурой, или наоборот ― с Surface Pro рулить Linux-серверами без всяких putty, ― прошу под кат.


Еще в 2015 году Microsoft торжественно объявила о запуске программы «Microsoft Linux». Сюда вошла как банальная поддержка гостевых *nix-like OS на Hyper-V, так и встроенная в Windows 10 Ubuntu и возможность запуска в Docker продуктов Microsoft, таких как SQL Server.

Компания также опубликовала исходный код PowerShell, что позволило запускать «Ракушку Мощи» не только на Windows. Из-под одноименного аккаунта на Github, помимо исходного кода, выложены и бинарники под большинство современных систем (лицензия MIT).

Это позволяет настроить удаленное управление с помощью единого инструмента ― PowerShell. Помимо подключения к консоли компьютера, можно запускать отдельные команды, в том числе и на нескольких серверах одновременно. Довольно удобно для автоматизации задач администрирования, таких как массовое изменение настроек, инвентаризация, сбор логов.

Порой удобно совмещать традиционные консольные команды со вставками PowerShell:

cat /etc/passwd | ConvertFrom-Csv -Delimiter ':' -Header Name,Passwd,UID,GID,Description,Home,Shell | Sort-Object Name | Format-Table

Для подключения к Windows-машинам при помощи PowerShell используется протокол WS-Man. Для GNU\Linux привычен SSH. Так как сегодня становятся универсальными оба протокола, разберем их подробнее.

PowerShell 6.0 под Windows и *nix, пока еще находится в бете. Поэтому не рекомендую без хорошего тестирования применять на боевых серверах описанное ниже.


Когда технология удаленного доступа при помощи PowerShell только набирала обороты, единственным универсальным способом подключения к разным системам был протокол WS-Man. Для тестового стенда я взял Windows Server 2016 и Centos 7, для которых и буду настраивать возможность удаленного подключения и выполнения команд при помощи этого протокола.

Для начала установим на Centos свежий PowerShell:

curl https://packages.microsoft.com/config/rhel/7/prod.repo > /etc/yum.repos.d/microsoft.repo yum install -y powershell pwsh

После установки появилась возможность запускать привычные Windows-администратору командлеты. Например, посмотрим версию PS и получим список запущенных процессов командлетами $PSVersionTable и Get-Process:


Работаем в консоли PowerShell на CentOS.

Чтобы подключаться к Linux-машине с консоли Windows, нам понадобится установить и настроить:


  • OMI (Open Management Infrastructure) ― адаптация WMI, которую также можно использовать для управления компьютерами с ОС, отличными от Windows;
  • PSRP (PowerShell Remoting Protocol) ― библиотека, необходимая для удаленного подключения PowerShell.

Подробно с работой и эволюцией OMI и PSRP можно ознакомиться в отличном материале от Matt Wrock, я же просто установлю OMI командой:

yum install omi

Далее нужно настроить порты и аутентификацию в конфигурационном файле /etc/opt/omi/conf/omiserver.conf, после чего перезапустить сервер командой:

/opt/omi/bin/service_control restart

Для упрощения эксперимента я не буду настраивать ни NTLM-аутентификацию, ни Kerberos. Еще и шифрование отключу ― разумеется, в боевой среде делать этого не стоит. Для включения текстовой аутентификации и шифрования на стороне Windows в работе winrm достаточно выполнить следующие команды:

winrm set winrm/config/client/auth @{Basic="true"} winrm set winrm/config/client @{AllowUnencrypted="true"} winrm set winrm/config/service/auth @{Basic="true"} winrm set winrm/config/service @{AllowUnencrypted="true"}

После настройки можно проверить работу OMI из консоли Windows:

winrm enumerate http://schemas.microsoft.com/wbem/wscim/1/cim-schema/2/OMI_Identify?__cimnamespace=root/omi -r:http://server:5985 -auth:Basic -u:root -p:"password" -skipcncheck -skipcacheck -encoding:utf-8 -unencrypted


Подключаемся к CentOS из cmd.

Теперь проверим работу обратным подключением ― из Linux к Windows:

/opt/omi/bin/omicli ei root/cimv2 Win32_Environment --auth Basic --hostname server -u username -p password --port 5985 


… а затем с CentOS подключаемся к Windows.

После того, как WMI\OMI заработал, нужно установить и настроить PSRP. К сожалению и вопреки инструкции, бинарник отсутствует. Библиотеку пришлось компилировать, долго и нудно исправляя возникающие ошибки зависимостей:

yum groupinstall 'Development Tools' yum install openssl-devel pam-devel git clone --recursive [https://github.com/PowerShell/psl-omi-provider.git](https://github.com/PowerShell/psl-omi-provider.git) cd psl-omi-provider/ make release rpm -ihv target/Linux_ULINUX_1.0_x64_64_Release/psrp-1.4.1-0.universal.x64.rpm

Теперь мы сможем подключаться с Windows на Linux и наоборот при помощи PowerShell. Начнем с Windows на Linux:

$cred = Get-Credential #пропустим проверку сертификата для нашей тестовой лаборатории $o = New-PSSessionOption -SkipCACheck -SkipRevocationCheck -SkipCNCheck #выполнение команды: Invoke-Command -ComputerName server -ScriptBlock { Get-Process } -Authentication Basic -SessionOption $o -Credential $cred -UseSSL | Select-Object -First 5 #подключение к консоли Enter-PSSession -ComputerName 'server' -Credential $cred -Authentication basic -UseSSL -SessionOption $o


С Windows на Linux.

Аналогичным образом можно провести и обратное подключение.

Invoke-Command можно «натравить» на список компьютеров, и с рабочей станции Windows создать пользователя на всех серверах Linux командой вида:

 Invoke-Command -ComputerName server1,server2,server3 -ScriptBlock { adduser admin;echo admin:password | chpasswd }

Надо сказать, что способ не самый удобный и эффективный. Минусов добавляет компиляция библиотек, разнообразные баги ― например, на момент написания статьи PSRP не позволял нормально подключиться из Linux в Windows.

Да и сами разработчики рекомендуют не плясать вокруг WS-Man, а обратиться к проверенному способу ― SSH. Что ж, попробуем и его.


На этот раз машина с Windows получит чуть больше специфической подготовки ― нужно установить свежий PowerShell и OpenSSH.

После можно проверить синтаксис командлета New-PSSession. Если все произошло как надо, то командлет, помимо привычного параметра ComputerName, будет поддерживать и HostName.


PowerShell 6.0.0-beta.9 и обновленный синтаксис командлета.

Установка OpenSSH описана в отдельной инструкции.


Но под спойлером вы найдете все основные моменты.

Качаем последний релиз или используем пакет из репозитория Chocolatey. Все это разархивируем в \Program Files\OpenSSH.

В консоли с правами администратора переходим в папку с разархивированным содержимым и запускаем установку командой:

powershell -ExecutionPolicy Bypass -File install-sshd.ps1 

Теперь генерируем ключи:

.\ssh-keygen.exe -A .\FixHostFilePermissions.ps1 -Confirm:$false

В тестовой среде мы будем использовать парольную аутентификацию, поэтому стоит убедиться что она включена в файле sshd_config:

```bash PasswordAuthentication yes ```

Если вы также хотите автоматически запускать PowerShell при подключении по SSH, то в параметре subsystem нужно прописать путь к желаемой версии PS:

Subsystem powershell C:/Program Files (x86)/PowerShell/6.0.0-beta.9/pwsh.exe -sshs -NoLogo -NoProfile

Для работы клиента SSH нужно добавить директорию в %PATH% любым удобным способом. Например, таким:

setx path "%path%;C:\Program Files\OpenSSH"

Остается только настроить и запустить службы:

Set-Service sshd -StartupType Automatic Set-Service ssh-agent -StartupType Automatic net start sshd

После установки уже можно наслаждаться подключением к серверу Windows по ssh.


C Windows через Putty на Linux, с Linux обратно на Windows по SSH.

На достигнутом останавливаться не будем и перейдем к настройке Linux. При настройке сервера SSH по умолчанию достаточно прописать PowerShell в Subsystem:

Subsystem powershell /usr/bin/pwsh -sshs -NoLogo -NoProfile

Теперь проверим подключение через командлет New-PSSession и Invoke-Command.

Сначала Windows:


Работаем из PowerShell с Linux-сервером.

Теперь подключимся из Linux к Windows:


Работаем из PowerShell с Windows-сервером.

В отличие от WS-Man, SSH настраивается намного проще и работает стабильнее. Да и беспарольное подключение по ключам настраивать привычнее.


С однозначным «советом потребителю» все опять сложно: SSH проще в настройке и стабильнее, но WS-Man использует API и позволяет применять инструменты вроде JEA. На боевых серверах использовать WS-Man я бы не стал однозначно, а вот реализация OpenSSH в Windows как сервера, так и клиента мне понравилась. Для самопальной автоматизации вполне подойдет даже без PowerShell.

В любом случае, границы между Linux и Windows хоть и медленно, но начинают стираться, что безусловно радует.

Как подключиться по RDP c ОС Windows, Ubuntu или Debian (Linux), Mac OS, а также с телефона на Android и iPhone

Создавая виртуальный сервер на VPS.house, вы получаете полностью 100% готовую к использованию операционную систему Windows Server, к которому сразу же можно подключаться по сети с любого внешнего устройства по протолку RDP.

RDP (Remote Desktop Protocol) – специальный протокол, разработанный компанией Microsoft для удаленного управления ОС Windows (протокол удалённого рабочего стола). Изначально, разумеется, как и многие вещи под Windows, этот протокол разработали другие люди, но в настоящее время поддерживает его и развивает Microsoft.

Согласно условиям лицензирования, ОС Windows Server допускает по умолчанию не более 2-х одновременных подключений по RDP к серверу, если нужно больше, то понимается терминальный сервер и лицензируется либо количество пользователей, либо количество подключаемых устройств. Но, подключившись к серверу по RDP, вы также можете поставить любое удобное вам решение для удалённого управления рабочим столом: TeamViewer, RAdmin и прочие.

Данная статья описывает процесс подключения к серверу Windows по RDP с многих популярных операционных систем. Ввиду этого получилась она довольно длинной. Моментально перейти к нужному вам разделу вы можете по этому меню:




Подключение в VPS серверу из десктопной Windows


Данная инструкция проверена и работает успешно на всех популярных версиях Windows для персональных компьютеров: XP, Vista, Windows 7, 8, 8.1 и 10.

В каждой операционной системе Windows есть встроенное приложение для подключения по RDP – это программа «Подключение к удалённому рабочему столу» (Remote Desktop Connection в англоязычных ОС).
Для запуска ее зайдите по пути:

Пуск -> Программы -> Стандартные -> Подключение к удалённому рабочему столу
Если вы используете Windows 8, тогда:
Пуск -> Приложения -> Подключение к удалённому рабочему столу
Если вы используете Windows 10, тогда:
Пуск -> Все приложения (может этого пункта не быть!) -> Стандартные Windows -> Подключение к удалённому рабочему столу
Или же просто нажмите комбинацию клавиш Win+R и в открывшемся окне наберите mstsc

В открывшемся окне наберите IP-адрес вашего виртуального сервера и нажмите кнопку «Подключить». IP-адрес сервера вы можете видеть в вашем личном кабинете в разделе «Мои серверы»:

Если вы заказали сервер с 2-я или большим количеством IP-адресов, то для подключения к серверу вы можете использовать любой из них – это ни на что не влияет.

Те, кто впервые стакиваются с созданием удалённого рабочего стола, часто задаются вопросом «Зачем нужны эти IP-адреса и сколько нужно именно им», часто также путают количество IP-адресов с количеством рабочих столов или учётных записей, или полагают, что если зайти на сервер по одному адресу, то открывая браузер именно этот адрес будет браузер использовать. Нас самом же деле это всего лишь список внешних адресов, по которому можно подключиться к серверу, сама работа на сервере уже после подключения никаким образом не меняется.

Чаща всего при подключении по умолчанию настроена автоматическая передача данных из буфера обмена, а также подключаются к серверу и становятся на нём видны локальные диски устройства, с которого вы подключаетесь. При сразу после нажатия на кнопку «Подключить» вы можете увидеть уведомление о возможном вреде, который может нанести как удалённый компьютер вашему, так и ваш удалённому. Такое вполне возможно если вы подключаетесь к чужому серверу, на котором могут быть вирусы или вы подключаетесь к своему проведенному серверу с чужого заражённого ПК.

Подключаясь к только что созданному и чистому серверу можно смело отключить дальнейшие уведомления и продолжить процесс подключения.

Далее вы увидите окно с вводом авторизационных данных:

При создании каждого нового сервера система VPS.house автоматически генерирует новый уникальный пароль для него, при этом на всех серверах Windows по умолчанию остаётся имя пользователя Administrator. Пароль от сервера отображается также в личном кабинете возле вашего сервера на странице «Мои серверы»:

В целях безопасности, по умолчанию пароль от сервера скрыт и отображается только по нажатию на ссылку «Показать пароль», при этом сайт попросит вас ввести пароль от вашей учётной записи на VPS.house.

Обратите, пожалуйста, внимание на то, что очень часто при попытке подключения с Windows 7 если копировать и вставлять пароль, система показывает ошибку о неверно введённых учетных данных, тоже самое может возникать и в других версиях. Если вы с этим столкнулись, просто введите пароль вручную и обязательно с учётом регистра (заглавные буквы вводите заглавными, а строчные строчными и строго в английской раскладке клавиатуры).

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

Данное уведомление не говорит о проблемах безопасности, и вы смело можете отключить его для будущих подключений к этому же серверу, отметив галочкой «Больше не выводить запрос о подключениях к этому компьютеру».

Если вы используете для работы Windows XP и при подключении система выдает ошибку с текстом «Удаленный компьютер требует проверку подлинности на уровне сети, которую данный компьютер не поддерживает», значит на ваш ПК очень сильно устарел и нужно дополнительно установить небольшое обновление, где его взять и как установить мы подробно расписали здесь.

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

Для включения этих возможностей перед подключением к серверу нажмите на кнопку «Показать параметры»:

Откроется режим расширенных настроек подключения к вашему VDS серверу. Перейдите на вкладку «Локальные ресурсы» и отметьте галочкой требуемые для вас устройства:

Еще одна очень полезная и популярная функция – это возможность создать готовый файл подключения (так называемый «ярлык»), в котором уже сохранены все нужные вам настройки и данные авторизации на сервере. Это особенно удобно если вы хотите дать доступ сотруднику, который не является опытным пользователем ПК.

Для этого также в расширенных настройках подключения на вкладке «Общие» введите имя пользователя (на серверах VPS.house это всегда по умолчанию Administrator), отметьте галочкой «Разрешить мне сохранять учетные данные», чтобы не приходилось вводить пароль каждый раз и, по завершению внесения всех нужных вам остальных параметров подключения (если таковые есть), нажиме кнопку «Сохранить как»:

В итоге вы получите готовый файл с подключением, который вы можете отправить вашему коллеге и тот в свою очередь подключится к серверу 2-я простыми кликами по нему мышкой.

В целях безопасности по умолчанию в данный файл не будет добавлен пароль от учётной записи, он будет запрошен при первом подключении.




Как подключиться к серверу по RDP если вы работаете с Ubuntu


Протокол подключения к уделённому рабочему столу Windows (RDP) – это закрытый протокол компании Microsoft, официальных служб под операционные системы Linux Microsoft не выпускает, но так или иначе уже давно существуют стабильно работающие решения, которые в последних редакциях Ubuntu даже включены в изначальную сборку.
Речи идет о клиенте под названием Remmina

По умолчанию если Remmina включена в вашу сборку, вы можете найти ее в Поиске по запросу «Remote Desktop Client», если ее нет, то установите ее при помощи следующих команд в Терминале.

  1. Устанавливаем пакет Remmina
    sudo apt-add-repository ppa:remmina-ppa-team/remmina-next
  2. Устанавливаем обновления
    sudo apt-get update
  3. Устанавливаем плагин протокола RDP
    sudo apt-get install remmina remmina-plugin-rdp libfreerdp-plugins-standard
  4. Если ранее у вас уже была установлена какая-либо версия Remmina или была запущена до установки, то ее необходимо перезапустить. Это лучше всего сделать перезагрузкой компьютера или с помощью команды:
    udo killall remmina
    Если после её выполнения вы получили сообщение об ошибке типа «процесс не найден», значит и так все хорошо и можно было команду и не выполнять.

В меню поиска наберите «remote desktop» или «remmina», чтобы найти установленное приложение:

Remmina позволяет добавлять и сохранять список подключений для быстрого доступа к тому или иному серверу. Для сознания нового нажмите на «+», как показано на изображении:

Заполните поля авторизационными данными, которые указаны в вашем личном кабинете:

На вкладке «Advanced» вы можете также указать качество подключения к серверу и детализации при передаче изображений:

После сохранения данных вы всегда сможете найти ваш сервер в списке подключений Remmina. Для подключения к серверу теперь достаточно просто кликнуть дважды мышкой по строке сервера:

Если вы подключаетесь к серверу впервые с этого приложения, то оно может показать информацию о ошибке в сертификате безопасности. Почему это происходит мы описали выше в блоке подключения к серверу из десктопной Windows.
Достаточно нажать «ОК» и программа продолжит подключение к вашему серверу:




Как подключиться к серверу по RDP если вы работаете с Debian


Протокол RDP (Remote Desktop Protocol) – это закрытый протокол удалённого рабочего стола Microsoft. К сожалению, они не выпускают официальных клиентов для работы подключения к серверам Windows с операционных систем, работающих на базе Linux. Однако уже довольно давно существуют стабильно работающие решения.
Одно из самых популярных – это клиент для всевозможных удалённых Remmina, именно его мы и рекомендуем использовать для включения к серверам VPS.house или любым другим под управлением ОС Windows.

  1. Указываем путь к установочным файлам
    echo 'deb http://ftp.debian.org/debian stretch-backports main' | sudo tee --append /etc/apt/sources.list.d/stretch-backports.list >> /dev/null
  2. Запускаем процесс установки
    sudo apt update
  3. Устанавливаем плагин протокола RDP
    sudo apt install -t stretch-backports remmina remmina-plugin-rdp remmina-plugin-secret libfreerdp-plugins-standard

Сразу после установки приложение можно найти через поиск программ:

В отличие стандартного от RDP-клиента ОС Windows, Remmina позволяет сохранять в список все свои подключения к различным серверам и осуществлять моментальный доступ к ним. Для добавления первого сервера в список нажмите «+» в левом верхнем углу:

В открывшемся окне задайте параметры подключения к вашему серверу и введите удобное для запоминания имя сервера. Все необходимые для подключения данных указаны в вашем личном кабинете:

На вкладке «Advanced» («Дополнительные») вы можете задать параметры передачи звука с сервера на ваш ПК, а также качество передаваемого изображения при подключении:

После сохранения я настроек вы увидите новую строку в списке подключений. Для начала работы с сервером достаточно просто дважды кликнуть по нему мышкой:

В момент первого подключения к серверу Remmina покажет уведомление у недоверенном сертификате шифрования. Это не является какой-либо ошибкой или проблемой безопасности. Причину этого сообщения мы описали выше. Просто нажмите «ОК» и вы увидите рабочий стол вашего сервера, при условии, разумеется, что все данные для подключения ранее были введены корректно.




Подключение серверу по RDP из Mac OS


Для подключения к удалённому рабочему столу для Mac OS компания Microsoft разработала и поддерживает официальный RDP-клиент. Он стабильно работает с любыми версиями ОС Windows.
Для загрузки его перейдите на сайт iTunes: https://itunes.apple.com/gb/app/id715768417

Программа обладает интуитивно понятным интерфейсом и позволяет создавать список серверов для дальнейшего моментального подключения к ним.
Для добавления нового сервера в список нажмите «New», как показано на скриншоте:

В открывшемся окне укажите авторизационные данные, как указано в вашем личном кабинете (IP-адрес сервера, логин Administrator и его пароль), и укажите произвольное название для нового подключения (Connection Name).

По завершению ввода нажмите на кнопку закрытия окна – все данных сохранятся и появится строчка с вашим сервером в списке подключений:

Кликните на эту строчку дважды мышкой, и вы подключитесь к серверу.

При попытке подключения к вашему VPS серверу если он работает на Windows Server 2008 или более новой версии, программа покажет уведомление о том, что не удалось проверить сертификат шифрования. Это не является проблемой безопасности, а всего лишь говорит о том, что сертификат выдан не сертифицированным центром, а сгенерирован самим же сервером.

Для того, чтобы это сообщение в будущем не возникало для этого сервера, нажмите «Показать сертификат».

Отметьте галочкой «Всегда доверять…» и нажмите «Continue».

Если в настройках подключения все параметры были введены без ошибок (IP-адрес, логин и пароль), то вы сразу же увидите рабочий стол вашего Windows Server:




Подключение к VDS серверу со смартфона или планшета на iOS (с iPhone или iPad)


Для iOS копания Microsoft выпускает полноценный официальный RDP-клиент комфортного и стабильного подключения к удалённому рабочему столу. Приложение называется Microsoft Remote Desktop или Удаленный рабочий стол: https://itunes.apple.com/ru/app/id714464092

Microsoft Remote Desktop позволяет заранее настроить целый список используемых вами для частого подключения серверов.

Специфика его работы заключается в том, что информация об учётных записях создаётся и хранится отдельно от самого списка серверов. Соответственно, для начала нам требуется добавить учётную запись пользователя Administrator. Для этого нажмите на кнопку настроек (иконка шестерёнок в верхнем левом углу) и выберите «Учётные записи»:

В открывшемся окне нажмите на «Добавление учётной записи пользователя» и введите логин Administrator и его пароль, как отображается в вашем личном кабинете:

По завершению вы увидите, что учётная запись Administrator добавлена в список, далее нажмите кнопку «Готово» и вы вернетесь на стартовый экран.

Следующим шагом добавляется непосредственно информация о самом сервере. Нажмите кнопку «+» в правом верхнем углу приложения и в открывшемся меню выберите «Рабочий стол»:

В окне добавления нового подключения укажите IP-адрес вашего сервера и выдерите учётную запись Administrator, добавленную на прошлом шаге:

В момент первого подключения вы увидите уведомление вы увидите уведомление о недоверенном сертификате безопасности. Причину этого мы описали выше. Выдерите «Больше не спрашивать для этого ПК» и нажмите «Принять».

В случае если IP-адрес и авторотационные данные указаны без ошибки, вы успешно подключитесь к вашему виртуальному серверу:




Как подключиться к VPS серверу со смартфона или планшета на Android


Для устройств под управлением Android компания Microsoft выпускает полноценное приложение для работы с удалённым рабочим столом – Microsoft Remote Desktop. Скачайте его как любое другое приложение в Google Play.

В отличие от всех описанных выше приложений для подключений с ПК, мобильное приложение Microsoft Remote Desktop разделяет учётные записи и сам список подключений. Поэтому сначала нужно добавить в список учётную запись пользователя Administrator с его паролем, который показан в вашем личном кабинете:

После добавления учётной записи возвращайтесь на главный экран приложения для добавления самого подключения (адреса вашего VDS сервера):

В открывшемся окне укажите IP-адрес вашего сервера (указан в личном кабинете), выберите добавленную ранее учётную запись Administrator и нажмите «Сохранить» («Save»):

На главном экране в списке подключений появится ваш сервер, просто нажмите на него, и программа начтёт подключение. Если вы подключаетесь с этого приложения к серверу впервые, то увидите информационное сообщение о том, что приложению не удалось проверить сертификат шифрования. Почему так происходит описано в начале статьи.

Достаточно отметить галочкой «Never ask again for connections to this PC» и данное уведомление больше появляться не будет. Далее нажмите «Connect» и если все авторотационные данные и IP-адрес сервера указан без ошибок, вы успешно к нему подключитесь:



P.S.: У клиентов нашего VPS-хостинга часто возникает вопрос, как подключиться к серверу с того или иного устройства. В поисковиках можно найти все эти инструкции в том числе и с картинками, и с видео. Надеюсь, данная статья, будет полезной и здесь, как содержащая в одном месте инструкции по подключению со всех самых популярных устройств и операционных систем.

Подключение к удаленному рабочему столу Linux из Windows | Подключение Windows к Linux

Недавно я опубликовал статью «Подключение к удаленному рабочему столу Windows 7 из Linux» и вскоре после этого меня попросили рассказать, как сделать то же самое, но наоборот — из Windows к Linux. На первый взгляд может показаться, что задача непростая, но на самом деле, это очень легко.

У читателей может возникнуть вопрос — а зачем это вообще нужно? Ответ прост — для того, чтобы иметь единую точку администрирования. Ведь сколько времени обычно тратится на беготню между компьютерами в попытке разрешить какую-либо проблему! Вы уже знаете, как подключаться к компьютерам под управлением Windows из Linux, а прочитав эту статью, сможете подключаться наоборот — из Windows к Linux, и это значительно облегчит вам задачу администрирования в локальной сети. Итак, приступим.

Допущения

В своей статье я исхожу из того, что в вашей локальной сети уже имеются корректно функционирующие компьютеры под управлением Windows и Linux. Чтобы упростить задачу, я буду использовать IP-адресацию по схеме 192.168.1.x. При этом намного удобнее использовать статические IP-адреса, иначе вам придется тратить лишнее время на выяснение адреса нужного компьютера.

Программное обеспечение

Вам понадобятся всего два приложения:

• x11vnc на компьютере под управлением Linux для использования в качестве VNC-сервера;
• TightVNC на компьютере под управлением Windows для использования в качестве VNC-клиента.

Установить TightVNC очень легко — просто загрузите инсталлятор и запустите его двойным щелчком. А вот процесс установки приложений в Linux для многих пользователей Windows не так очевиден.

Разумеется, все зависит от того, какой у вас дистрибутив Linux. Но в общих чертах последовательность действий такова:

1. Запустите средство установки и удаления программ — Synaptic, Центр приложений Ubuntu (Ubuntu Software Center), gnome-packagekit и т. п.
2. Введите «x11vnc» (без кавычек) в строке поиска.
3. Отметьте пакеты для установки.
4. Нажмите кнопку «Применить» (Apply), чтобы начать установку.

Те, кто привык работать из командной строки, могут установить приложение следующим образом:

1. Откройте терминал.
2. Выполните команду вида sudo apt-get install x11vnc — в зависимости от того, какой у вас дистрибутив.

После завершения установки можно приступать к подключению.

На компьютере под управлением Linux

Здесь все довольно просто — нужно лишь запустить сервер x11vnc. В справке к данной утилите, которую можно вызвать командой man x11vnc, приводится список доступных опций. Я бы порекомендовал использовать опцию -forever — без нее сервер будет отключаться сразу же после завершения клиентского сеанса. Так что команда, которую следует выполнить в терминале, должна выглядеть так:

x11vnc -forever

Приглашение на ввод следующей команды после этого не появится, даже если использовать символ &. Поэтому стоит добавить строку x11vnc -forever в конце файла «/etc/rc.local», чтобы сервер запускался всякий раз при старте системы.

На компьютере под управлением Windows

Теперь давайте наладим подключение. Запустите установленную в Windows утилиту TightVNC из меню «Пуск» (Start). Появится показанное на рис. A окно, в котором нужно указать адрес для подключения. Отсюда же можно вызвать диалоговое окно настроек (Options).


Рисунок A. Выберите профиль соединения (Connection Profile), наиболее соответствующий вашему типу соединения.

В окне настроек (рис. B) доступен целый ряд параметров, но если вы не нуждаетесь в какой-то особой конфигурации, можно оставить значения по умолчанию.


Рисунок B. TightVNC можно подключить в режиме просмотра (View) — тогда сеанс будет не интерактивным. Это неплохой вариант для тестового подключения.

Настроив все параметры, нажмите кнопку «Соединиться» (Connect), чтобы подключиться к удаленному рабочему столу (рис. C). Скорость соединения зависит от пропускной способности сети, но в целом TightVNC представляет собой вполне работоспособное решение.


Рисунок C. Задайте настройки и установите соединение.

В заключение

Как видите, наладить соединение между компьютерами под управлением Windows и Linux очень просто. Надеюсь, это хоть немного облегчит вам задачу администрирования.

Автор: Jack Wallen
Перевод SVET



Оцените статью: Голосов 7

Подключайтесь к Windows через SSH как в Linux / Habr

Меня больше всего удручает подключение к хостам Windows. Я не противник и не фанат Microsoft и их продуктов. У каждого продукта свое предназначение. Но мне действительно больно подключаться к серверам Windows из-за двух моментов: его сложно настроить (привет WinRM с HTTPS), и он действительно нестабилен (привет RDP виртуальным машинам через океан).

К счастью, я нашел проект Win32-OpenSSH. Я понял, что хочу поделиться с ней своим опытом.Я верю, что это кому-то поможет и сэкономит много нервов.



Способы установки:

  1. Вручную
  2. Виа Шоколадный пакет
  3. Через Ansible, скажем, роль jborean93.win_openssh

Я объясню ручной способ, потому что другие очевидны.

Должен отметить, этот проект находится на стадии бета-тестирования и не рекомендуется использовать его в продакшене.

Ну что ж, качаем последний релиз. Сейчас это 7.9.0.0p1-beta. Также есть 32- и 64-битные версии.

Затем распакуйте его в C: \ Program Files \ OpenSSH .

Важно: необходимо предоставить доступ на запись только для SYSTEM и группы Administers.

Затем установите службы с помощью сценария оболочки install-sshd.ps1 , который находится в каталоге OpenSSH

  powershell.exe -ExecutionPolicy Bypass -File install-sshd.ps1  

Разрешим входящие соединения на 22 порт:
  New-NetFirewallRule -Name sshd -DisplayName 'OpenSSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22  

Примечание: апплет New-NetFirewallRule предназначен только для Windows Server 2012 и выше.Для более старых или настольных ОС вы можете использовать следующую команду:
  netsh advfirewall firewall добавить имя правила = sshd dir = in action = allow protocol = TCP localport = 22  

Запустить службу:
  net start sshd  

Это автоматически сгенерирует ключи хоста под % programdata% \ ssh , если они еще не существуют.

Вы можете настроить автозапуск службы командой:

  Set-Service sshd -StartupType Automatic  

Кроме того, вы можете изменить оболочку по умолчанию (это cmd по умолчанию после установки):
  New-ItemProperty -Path "HKLM: \ SOFTWARE \ OpenSSH" -Name DefaultShell -Value "C: \ Windows \ System32 \ WindowsPowerShell \ v1 .0 \ powershell.exe "-PropertyType String -Force  

Примечание: вы должны определить абсолютный путь.

Что дальше?

Мы можем настроить sshd_config , который находится в C: \ ProgramData \ ssh .
Например:

  Пароль Нет аутентификации PubkeyAuthentication да  

Затем мы создаем каталог .ssh внутри каталога пользователя ( C: \ Users \ ) и файл authorized_keys внутри него.Мы можем вставить открытые ключи в этот файл.
Важно: единственный пользователь, в котором он находится, должен иметь права на запись в этот файл.
Кстати, если вы не можете это исправить, вы можете отключить проверку разрешений через config:
  StrictModes no  

Кроме того, каталог C: \ Program Files \ OpenSSH содержит 2 сценария ( FixHostFilePermissions.ps1 , FixUserFilePermissions.ps1 ), которые должны , но не обязаны исправлять разрешения , включая разрешения authorized_keys , но они не .

Не забудьте перезапустить службу sshd , чтобы изменения вступили в силу.

  ru-mbp-666: инфраструктура $ ssh [email protected] -i ~ / .ssh / id_rsa Windows PowerShell Авторское право (C) Корпорация Майкрософт, 2016. Все права защищены. PS C: \ Пользователи \ Администратор> Get-Host Имя: ConsoleHost Версия: 5.1.14393.2791 InstanceId: 653210bd-6f58-445e-80a0-66f66666f6f6 Пользовательский интерфейс: System.Management.Automation.Internal.Host.InternalHostUserInterface CurrentCulture: en-US CurrentUICulture: en-US PrivateData: Microsoft.PowerShell.ConsoleHost + ConsoleColorProxy DebuggerEnabled: True IsRunspacePolved: ложь Область выполнения: System.Management.Automation.Runspaces.LocalRunspace PS C: \ Пользователи \ Администратор>  

Личные плюсы / минусы.

Плюсы:

  • Стандартный способ подключения к любому серверу (Windows / Linux)
    Когда у вас несколько хостов Windows, это неудобно:
    Итак, здесь мы идем через ssh, а здесь через RDP,
    Вообще говоря, это лучшая практика с бастионами, сначала ssh-tunnel, затем RDP через туннель.О, убей меня, детка, еще раз.
  • Простота настройки
    Думаю, это очевидно.
  • Скорость подключения к удаленному хосту
    Без GUI мы экономим ресурсы хоста и размер передаваемых данных

Минусы:
  • В некоторых случаях он не может заменить RDP.
    Не все, что можно делать с помощью PowerShell. Я имею в виду те случаи, когда требуется GUI.

Ссылки:

Project на Github
Ansible docs

.

Как удаленно подключиться к машинам Linux из Windows

Как удаленно подключиться к машинам Linux из Windows

Обновлено: 22 декабря 2008 г.

Мой друг спросил меня, как это сделать, и я решил написать руководство. Если вы используете как Windows, так и Linux на нескольких компьютерах, время от времени может возникнуть необходимость подключаться к машине Linux. Ваш Linux Машина может служить многим целям: это может быть сервер, медиацентр (например, MythTV), хранилище резервных копий или просто другой рабочий стол.Вы можете подключиться к этому машина - или даже управлять ею. Что ж, для обмена у нас есть Samba.

Настроить Samba очень просто. Я продемонстрировал это в нескольких статьях. Вы можете найти подробные пошаговые инструкции в разделе для чтения ниже. Теперь для удаленного управления у нас есть это руководство. Давайте посмотрим, как мы можем настроить нашу Linux-систему для удаленного управления из Windows.

Я продемонстрирую, как взять под контроль машину Linux с помощью SSH и VNC.SSH означает Secure SHell, сетевой протокол, который позволяет обмениваться данными между двумя подключенными сетевые устройства, использующие зашифрованный туннель. Туннель не ограничивается только передачей данных. Вы можете использовать это для управления машиной на другом конце, пересылки небезопасных приложений через туннель и т. д. Стенды VNC для виртуальных сетевых вычислений, система совместного использования рабочего стола, которая позволяет вам управлять другими машинами.

Предпосылки

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

Если вы планируете развернуть подобную установку через Интернет, вы должны знать, что могут быть люди, которые может попытаться проникнуть в вашу систему и взять ее под контроль. Или они могут захотеть прослушать конфиденциальные данные, которые вы обмен по этим протоколам.

Установка локальной сети (LAN) за брандмауэром - это одно. Всемирно открытая установка - это нечто другое целиком.

Как минимум, использование SSH или VNC через Интернет потребует использования межсетевых экранов с ведением журнала. включено обязательное шифрование с длинными и часто меняющимися ключами и надежными паролями, нестандартные порты, ограничение на количество неудачных попыток, ограничение по времени между неудачными входами в систему, отсутствие корневого доступа и, возможно, даже другие меры безопасности.

В нашей настройке мы поговорим об уютной локальной сети у вас дома или в офисе, вдали от опасностей Интернета. Итак, теперь, когда мы знаем, что собираемся делать, давайте начнем с VNC.

VNC

Мы продемонстрируем использование Ubuntu (8.10). Ubuntu поставляется с уже установленным программным обеспечением VNC. Вам нужно только настроить его для удаленного доступа. Кроме того, Ubuntu упрощает работу, не используя брандмауэр по умолчанию. конфигурации, так как в ней нет открытых портов - и, следовательно, использование брандмауэра не требуется.

Ubuntu использует программу Vino для подключения к VNC. Вы можете включить Vino, зайдя в систему > Настройки> Удаленный рабочий стол. Это откроет меню конфигурации для Vino.

Теперь нам нужно установить несколько флажков: Разрешить другим пользователям просматривать ваш рабочий стол и Разрешите другим пользователям управлять вашим рабочим столом. Мы также хотим безопасности, поэтому будем требуются пароль и подтверждение.

В разделе «Дополнительно» мы можем дополнительно настроить соединение.Шифрование сильно поощряется. Вы также можете рассмотреть нестандартный порт.

Убедитесь, что ваш порт VNC сейчас открыт. Для этого вы можете использовать nmap. Это включено в большинстве дистрибутивов или могут быть легко загружены из репозиториев.

Теперь нам нужно настроить машину с Windows. Нам требуется программа VNC для подключения к нашему Linux-серверу. Следовательно, загрузите программу VNC и установите ее.Есть много вариантов, но самый простой из них - RealVNC или TightVNC. Как только вы запустите программе укажите адрес удаленной машины:

P.S. Обратите внимание, что ваш выбор может отличаться. Это зависит от того, как вы хотите настроить свое программное обеспечение. В этом В этом случае я не внес никаких изменений и просто запустил программу с установленными по умолчанию параметрами. На машине Ubuntu вам будет предложено подтвердить попытку подключения:

И здесь у нас есть Linux, управляемый машиной Windows:

Работа сделана.Очень просто.

SSH

На этот раз нам нужно установить пакет ssh в Ubuntu. Некоторые дистрибутивы будут если он установлен, у других он будет в репозиториях. После установки через Synaptic или через apt-get (в командной строке sudo apt-get install ssh) проверьте, что порт SSH открыт:

Порт по умолчанию - 22.

Теперь в Windows установите клиентское программное обеспечение ssh.Хороший выбор - PuTTY. Он простой, легкий и также будет работать со съемных носителей, например USB-накопителей.

PuTTY - это инструмент командной строки. Откройте командную строку (Run> cmd), перейдите в папку PuTTY и запустите PuTTY против удаленного IP-адреса, что-то вроде:

шпатлевка 192.168.1.143

Вам будет предложено импортировать ключ удаленной машины. Это мера предосторожности, чтобы вы действительно знали вы подключаетесь к нужному компьютеру.

Аутентифицируйтесь с паролем:

И вы вошли в систему:

Теперь приступим к работе:

Больше чтения

И еще несколько ссылок, которые могут вам понравиться:

Установка PCLinuxOS - Полное руководство - Страница 4

Совместное использование папок между Windows и Linux

Вывод

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

В домашней обстановке, где задача намного проще, есть простые и удобные в использовании инструменты для работа.Если ваша машина Linux обслуживает файловый сервер или сервер печати, медиацентр или просто находится за пределами дотянуться до ваших ленивых пальцев, контроль над ним требует очень небольших усилий.

В случае ssh вы также можете использовать удаленное подключение, если вам не хватает другого монитора или просто Практика командной строки Linux. В любом случае, это просто - и весело.

P.S. Если вы найдете эту статью полезной, поддержите Дедоимедо.

Наслаждайтесь!

.

Как использовать SSH для доступа к машине Linux из Windows

ПРИМЕЧАНИЕ : В этой статье я много держусь за руки. Я хотел быть уверенным, что у кого-то, мало знакомого с интерфейсом командной строки Linux и / или SSH, не возникнет проблем с пониманием того, что происходит. Вот несколько навигационных ссылок, которые помогут вам найти то, что вам нужно:

Знакомство с Linux

Недавно я взялся научиться разрабатывать на платформе Linux. Я вырос в мире Windows и решил, что пора расширить свой кругозор.В конце концов, большая часть Интернета работает на том или ином варианте Linux, и некоторые из наиболее востребованных сегодня разработок веб-приложений происходят в Ruby on Rails, который лучше всего подходит для Linux-машины.

До сих пор я обнаружил, что в этой странной новой ОС есть много всего, что может понравиться, а также лежащие в основе философии и инструменты, которые составляют ядро ​​опыта Linux.

Одна из самых первых вещей, которую я хотел сделать, это узнать, как получить удаленный доступ к системе Linux с рабочего стола Windows.Первым шагом в этом процессе было понимание того, как установить соединение Secure Shell (SSH). Поначалу может показаться, что это немного излишне, поскольку моя Linux-машина находится примерно в 9 футах от моего модуля разработки Windows. Однако это необходимый первый шаг, чтобы в конечном итоге иметь возможность:

  • Разверните экземпляр виртуальной машины Linux в IAAS / облачном сервисе, таком как Amazon EC2 и / или Windows Azure, и управляйте им / получайте доступ / используйте его с моего рабочего стола Windows.
  • Настройка и управление размещенным сервером Linux для развертывания веб-приложений / сайтов
  • Понимание удаленного доступа в среде Linux

Конечно, помимо этих пунктов в списке выше, это также было хорошим упражнением для получения я начал делать полезные вещи с моей новой Linux-машиной!

Требуется незначительное знакомство с Linux

Нам нужно будет выполнить некоторые команды Linux через интерфейс командной строки (CLI) Bash, как на нашей машине Linux, так и через удаленное соединение, как только мы его настроим.Если, как и я, вы новичок в Linux, возможно, вы захотите ознакомиться с некоторыми основами Bash. Хотя сообщения, указанные ниже, являются частью серии статей об использовании контроля версий Git, каждая из следующих статей посвящена основным командам Bash, используемым для навигации и управления файлами в системе Linux.

Обзор базовой навигации Bash:

Настройка Linux-машины

Я использую Linux Mint для своих первых набегов в мир Linux. Mint построен на Ubuntu и имеет дружественный графический интерфейс для тех, кто только начинает.Однако для меня графический интерфейс в основном предназначен для тех моментов, «ох черт, я не знаю, что делать». Одной из основных целей при настройке этой машины было максимально возможное использование терминала Bash и освоение этого аспекта этой новой платформы. Фактически, мы собираемся выполнить все это упражнение, используя терминал Bash при взаимодействии с Linux.

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

Установка OpenSSH на Linux

Недавно установив свежую ОС Mint, первое, что нам нужно сделать, это установить SSH-сервер. Ваш дистрибутив Linux может поставляться или не поставляться с предварительно настроенным OpenSSH, который, как я понимаю, является предпочтительным SSH-сервером в стране Linux.

Дистрибутив Linux

, основанный на Linux со вкусом Debian, использует apt-get install newSotwareTitle для поиска и загрузки пакетов программного обеспечения и / или подтверждения и обновления существующих установок, если они уже установлены на вашем компьютере.Итак, давайте воспользуемся apt-get для загрузки OpenSSH на нашу машину с Linux (, примечание - в этом сообщении предполагается, что у вас есть права суперпользователя / администратора на вашем компьютере с Linux):

Установить OpenSSH

Откройте терминал Bash на вашем компьютере с Linux, введите следующую команду и нажмите Enter. Поскольку вы используете sudo для выполнения этого действия, будьте готовы ввести свой пароль перед выполнением:

Установить OpenSSH Server
 $ sudo apt-get install openssh-server 

В моем случае OpenSSH уже присутствовал в системе, поэтому мой вывод терминала выглядит так:

Если на вашем компьютере не установлен OpenSSH Server, терминал запросит у вас подтверждение установки / обновления любого количества пакетов.Введите «Y» и нажмите Enter. Затем вы увидите, что окно терминала заполнится предпринятыми действиями и добавленными пакетами.

Теперь мы можем выполнить некоторую настройку сервера SSH прямо сейчас в нашем терминале Bash. Однако вместо этого я собираюсь перейти на сторону Windows и выполнить остальную настройку оттуда с помощью SSH-соединения.

Самый распространенный клиент SSH для Windows - PuTTY (нет, это не опечатка)

Использование протокола SSH менее распространено во вселенной Windows, чем в Linux.Однако наиболее популярным клиентом SSH для использования на компьютере с Windows является PuTTY, эмулятор терминала с открытым исходным кодом, который может выступать в качестве клиента для SSH, Telnet и других протоколов. Чтобы приступить к настройке клиента SSH в Windows, посетите страницу загрузки PuTTY, загрузите и установите putty на свой компьютер. Самый простой способ - загрузить пакет putty-0.62-installer.exe , который включает все необходимое для наших целей:

После завершения загрузки запустите установщик.

Используйте PuTTYGen для создания пары открытого / закрытого ключей для клиентского компьютера Windows

SSH использует авторизацию на основе ключей для обеспечения безопасности соединения. Простое описание того, как это работает (из Википедии):

SSH использует криптографию с открытым ключом для аутентификации удаленного компьютера и позволяет ему при необходимости аутентифицировать пользователя. [1] Кто угодно может создать совпадающую пару разных ключей (открытый и закрытый). Открытый ключ размещается на всех компьютерах, которые должны разрешить доступ владельцу соответствующего закрытого ключа (владелец хранит закрытый ключ в секрете).Хотя аутентификация основана на закрытом ключе, сам ключ никогда не передается по сети во время аутентификации.

[Подробнее]

Для наших целей мы будем использовать утилиту Handy PuTTYGen, установленную с нашим пакетом PuTTY, для создания наших ключей. Откройте PuTTYGen (меню «Пуск» -> PuTTY (папка) -> PuTTYGen (приложение)), и вы должны увидеть следующее:

PuTTYGen, готов к созданию пары открытого / закрытого ключей:

Оставьте настройки по умолчанию и нажмите кнопку «Создать».PuTTYGen запросит, чтобы вы переместили курсор в большую пустую область, чтобы добавить в процесс некоторую «случайность» (и фактически приостановит генерацию, пока вы не сделаете это):

По завершении генерации ключей вам будет предложено выполнить некоторые дополнительные настройки перед сохранением ключей:

Заполните следующие пункты Формы генератора следующим образом:

  • Ключевой комментарий технически может быть чем угодно, но по соглашению следует использовать ваш адрес электронной почты.
  • Ключевая фраза-пароль не требуется, но настоятельно рекомендуется в качестве дополнительного уровня безопасности на случай, если кто-то захочет получить вашу личную ключ.Используйте здесь достаточно надежный (но легко запоминающийся) пароль.

После того, как вы завершили эти пункты, пора сохранить ключи. Во-первых, я бы создал в вашей папке пользователя Windows каталог (папку) с именем «SSH Keys», в котором будут храниться ваши личные ключи. Затем нажмите кнопку «Сохранить закрытый ключ» и сохраните ключ там.

ПРИМЕЧАНИЕ : Не используйте функцию «Сохранить открытый ключ». OpenSSH ожидает, что открытый ключ будет иметь формат, который немного отличается от формата PuTTYGen, поэтому вместо этого мы скопируем ключ, представленный в окне PuTTYGen, прямо в наш файл authorized_keys после входа в систему с Linux.

ТАКЖЕ ПРИМЕЧАНИЕ : Нет необходимости сохранять открытый ключ, который соответствует только что созданному закрытому ключу, потому что мы можем использовать кнопку PuTTYGen «Загрузить» для загрузки нашего закрытого ключа, который затем также загрузит правильный открытый ключ. данные обратно в окно открытого ключа для повторного копирования.

Оставьте окно PuTTYGen открытым и давайте настроим PuTTY для нашего первого входа в систему.

Настроить PuTTY для первоначального входа в систему

При первом входе в систему на нашей Linux-машине мы будем использовать простую аутентификацию по старому паролю, чтобы мы могли передать наш открытый SSH-ключ напрямую через (относительно) безопасное соединение и избежать его раскрытия таким образом, чтобы кто-то иначе получить его.Это также хорошая практика во многих отношениях.

Откройте приложение PuTTY (Пуск -> PuTTY (папка) -> PuTTY (приложение))

Введите IP-адрес вашей Linux-машины:

Как вы можете видеть на картинке выше, введите IP-адрес серверной машины (вашего Linux-сервера). Если вы не знаете IP-адрес вашего компьютера Linux , перейдите по этой ссылке:

Оставьте в спецификации порта значение по умолчанию 22 (это стандартный порт, используемый для входа по SSH).Хотя есть потенциальные причины для безопасности, чтобы изменить это позже, сейчас это подойдет.

Затем в древовидном меню слева выберите узел Соединение / Данные и введите свое имя пользователя, которое вы используете для входа в систему Linux (НАПОМИНАНИЕ - мы предполагаем, что ваш профиль пользователя включает права суперпользователя):

Введите свое имя пользователя в форме узла подключения / данных:

Оставьте для остальных настроек значения по умолчанию (как показано выше). Теперь вернитесь к узлу Session и введите имя для этой конфигурации в поле «Saved Sessions», затем нажмите «Save».В моем случае я сохранил эту конфигурацию сеанса, используя IP-адрес и краткое описание конфигурации:

Первый удаленный вход на компьютер Linux с аутентификацией по паролю

Хорошо, с учетом этих подробностей, нажмите кнопку «Открыть». В этот первый раз, когда мы войдем в систему, вам, вероятно, будет представлено диалоговое окно с предупреждением о том, что для сервера, к которому вы пытаетесь подключиться, нет кешированных ключей, и хотите ли вы кэшировать их сейчас:

Поскольку мы знаем, что этот аппарат находится в вашей локальной сети, нажмите «Да».”Вам должно быть представлено окно терминала, которое выглядит следующим образом:

Затем введите пароль, который вы используете для входа в систему с Linux, и нажмите Enter (обратите внимание, что здесь в терминале курсор не перемещается, и не используются стандартные запутанные заполнители пароля - другими словами, когда вы вводите пароль, будет казаться, что ничего не происходит). Теперь ваш терминал должен выглядеть так:

Поздравляем - теперь вы вошли в терминал Linux со своего компьютера Windows.Однако мы еще не используем SSH, и на самом деле этот метод не является очень безопасным способом удаленного доступа к другой машине. Затем нам нужно настроить аутентификацию на основе ключей. Как только мы убедимся, что с этим все в порядке, мы отключим аутентификацию на основе имени пользователя и пароля, которую мы используем сейчас, в пользу более надежной защиты на основе ключей.

Добавьте свой открытый ключ к машине Linux

Ваша система Linux хранит общедоступные ключи SSH для клиентских машин в каталоге в вашей домашней папке пользователя Linux (.ssh ) в файле authorized_keys . Ваш следующий шаг зависит от того, существует ли уже на вашем компьютере каталог .ssh и присутствует ли уже файл authorized_keys . Мы можем выяснить это достаточно быстро, попытавшись перейти в каталог с именем .ssh из нашей домашней папки (наш терминал должен был открыться в нашей домашней папке.

Если вы не знакомы с навигацией и базовыми операциями с файлами в Bash (терминал Linux), просмотрите эти две статьи, которые я написал.Эти статьи являются частью серии об использовании Git, но эти две посвящены основным командам оболочки Bash, полезным для навигации по файлам и каталогам:

Во-первых, давайте попробуем перейти в каталог .ssh на нашем удаленном компьютере с Linux. Введите в окно терминала следующее (примечание - символ « $ » не набран - это команда « подсказка » и указывает, что терминал готов к вводу команды):

 $ cd .ssh 

Если каталог с именем еще не существует.ssh в папке пользователя, окно терминала должно выглядеть так:

В этом случае нам нужно создать новый каталог .ssh . Введите следующее:

 $ mkdir .ssh 

Теперь ваш терминал должен выглядеть так:

Теперь попробуем перейти в новый каталог:

Вот это больше похоже! Затем, поскольку изначально не было каталога .ssh , нам также необходимо создать наш файл авторизованных ключей.Мы собираемся создать новый файл и одним махом добавить наш новый открытый ключ. Перейдите в окно PuTTYGen (все еще открытое на рабочем столе Windows), выберите и скопируйте весь открытый ключ, отображаемый в области с надписью «Открытый ключ для вставки в файл OpenSSH authorized_keys »:

Теперь мы воспользуемся командой echo для создания нового файла authorized_keys и вставим открытый ключ для нашей машины Windows. Синтаксис нашей команды echo следующий:

 echo YourPublicKey >> authorized_keys 

Эта команда добавит YourPublicKey к файлу authorized_keys .Если файл не существует, он будет создан (нашего еще не существует. Если ваш ЕСТЬ, не делайте этого таким образом).

Сначала введите команду echo в удаленный терминал Linux следующим образом:

Затем, если вы щелкните правой кнопкой мыши указатель мыши на курсоре терминала, содержимое вашего буфера обмена (содержащего недавно созданный открытый ключ для вашего компьютера Windows) автоматически вставится в текущую строку.

Затем добавьте >> authorized_keys в конец и нажмите клавишу Enter:

Теперь, когда мы добавили наш открытый ключ к машине Linux, давайте закончим нашу сессию PuTTY и посмотрим, сможем ли мы снова войти в систему, используя аутентификацию с открытым / закрытым ключом.Если это сработает, мы изменим конфигурацию нашего сервера OpenSSH в системе Linux, чтобы разрешить ТОЛЬКО этот тип авторизации. Вернитесь в окно Putty и закройте его. Это завершит сеанс.

Настроить PuTTY для авторизации открытого / закрытого ключа

Теперь снова откройте PuTTY и в дереве слева загрузите ранее сохраненную конфигурацию сеанса, выберите узел Connection / SSH / Auth. Найдите свой закрытый ключ, созданный с помощью PuTTYGen, и выберите его для использования.Для остальных настроек оставьте пока значения по умолчанию:

Затем вернитесь к узлу конфигурации сеанса и введите новое имя для этой измененной конфигурации. Как и раньше, я использовал IP-адрес вместе с краткими деталями конфигурации. Затем нажмите «Сохранить»:

Подключение к серверу Linux / OpenSSH с использованием авторизации открытого / закрытого ключа

Хорошо, давайте попробуем подключиться, используя нашу новую конфигурацию. Нажмите кнопку «Открыть» в интерфейсе PuTTY.Вы должны увидеть что-то вроде этого:

Обратите внимание, что на этот раз PuTTY сообщает нам, что пытается войти в систему с использованием аутентификации с открытым ключом, и запрашивает у нас пароль, который мы связали с нашим ключом при его создании. Введите пароль, который вы использовали при создании ключа (опять же, курсор останется неподвижным, пока вы это сделаете) и нажмите Enter:

Поздравляем! Теперь вы вошли в систему с Linux, используя аутентификацию с открытым / закрытым ключом. Пока мы подключены удаленно, давайте исправим некоторые незакрепленные детали.

Установить права доступа к файлу ключей для владельца / только для чтения

Теперь, когда мы знаем, что наши ключи работают правильно, давайте защитим файл authorized_keys на нашей машине Linux, чтобы мы случайно не изменили или не удалили его. Перейдите в каталог .ssh и введите следующую команду в терминал Bash:

 chmod 400 authorized_keys 

Это устанавливает разрешения для нашего файла authorized_keys , так что текущий пользователь и только текущий пользователь имеют разрешения только на чтение, и никто другой не может даже получить доступ к файлу (этот конкретный пользователь может снова сделать файл доступным для записи, используя chmod 700 ).

Отредактируйте файл конфигурации OpenSSH, чтобы отключить аутентификацию по паролю

Теперь, когда у нас есть рабочая схема аутентификации на основе ключей, у нас больше нет необходимости в менее надежной системе безопасности, основанной только на пароле, которую мы использовали ранее. Фактически, нашим следующим шагом будет редактирование файла конфигурации OpenSSH на нашей Linux-машине, чтобы НЕ разрешать это, а ТОЛЬКО принимать аутентификацию на основе ключей.

Во-первых, давайте сделаем резервную копию файла конфигурации. Введите cd , чтобы вернуться в свой домашний каталог (ввод cd без параметров или пути назначения по умолчанию возвращает вас в домашний каталог), затем создайте папку в своем домашнем каталоге для хранения таких резервных копий:

 $ mkdir ssh_config_backup 

Затем используйте следующую команду, чтобы сделать копию файла конфигурации в новом каталоге, который мы только что создали (, примечание : поскольку мы используем sudo , нам будет предложено ввести пароль пользователя, который мы используем на машине Linux) :

 $ sudo cp / etc / ssh / sshd_config ~ / ssh_config_backup 

Затем мы откроем файл sshd_config , используя vi в режиме терминала.Введите следующее:

 $ Судо vi / и т. Д. / Ssh / sshd_config 

И снова вам будет предложено ввести пароль на машине Linux. После нажатия клавиши Enter вы должны увидеть что-то вроде этого:

Несколько замечаний:

  • Я понимаю, что здесь трудно увидеть синий текст. Будет легче читать на вашем реальном экране.
  • Обратите внимание, что мы больше не находимся в терминале Bash как таковом, а вместо этого смотрим на текст файла sshd_config внутри терминала.
  • На данный момент вы ничего не можете редактировать - vi находится в командном режиме.

Мы будем использовать несколько (очень немного) базовых команд vi , чтобы сделать это. Команды, которые нам нужны для редактирования этого документа:

  • Используйте клавиши со стрелками вверх / вниз / влево / вправо для навигации по документу и для размещения курсора внутри строки текста.
  • Если vi находится в командном режиме, введите i (нижний регистр i ), чтобы перейти в режим вставки.
  • Если vi находится в режиме вставки, нажмите клавишу Esc, чтобы вернуться в командный режим.
  • Когда вы закончите редактирование, введите: wq (двоеточие, затем нижний регистр и нижний регистр q), чтобы сохранить и выйти из документа, вернувшись в терминал Bash.

Теперь, используя клавишу со стрелкой вниз, переместите документ вниз, пока не найдете эту строку:

 #PasswordAuthentication да 

Мы хотим изменить его на:

 Пароль Аутентификация № 

Хэш-символ в начале этой строки означает, что он был «закомментирован» (то есть игнорируется, когда сервер OpenSSH обращается к этому файлу во время настройки).Кроме того, обратите внимание, что для него установлено значение «да»:

.

Сначала введите строчные буквы i , чтобы войти в режим вставки, и удалите символ решетки. Затем с помощью клавиши со стрелкой вправо переместитесь в конец строки и измените да на нет . Теперь нажмите клавишу Esc, чтобы вернуться в командный режим.

Можно подумать, это конец. Однако, по крайней мере, в моей текущей системе Linux Mint, мы также должны отключить часть модуля аутентификации пароля (PAM) в файле конфигурации (обычно это последняя строка в файле).Для этого используйте клавишу со стрелкой вниз для перемещения по документу, пока не найдете следующую строку:

 UsePAM да 

Мы хотим изменить его на:

 UsePAM № 

Ваш экран должен выглядеть так:

Используйте клавишу со стрелкой вправо, чтобы перейти к концу этой строки, и введите I, чтобы войти в режим вставки. Измените да на нет , затем нажмите клавишу Esc, чтобы вернуться в командный режим:

Теперь, вернувшись в командный режим, введите следующее:

: wq 

По мере ввода эта команда будет появляться в нижней части экрана vi.

Как только вы нажмете Enter, измененный файл будет сохранен, и вы вернетесь в терминал Bash:

Перезагрузите сервер SSH

В качестве последнего шага нам необходимо перезапустить SSH-сервер на машине Linux, чтобы изменения конфигурации, которые мы только что сделали, отразились в службе. Введите в терминал следующую команду и нажмите Enter:

 $ sudo service ssh перезапуск 

Хорошо, теперь выйдите из текущего сеанса PuTTY, закрыв окно PuTTY.Посмотрим, удалось ли нам отказать в доступе тем, кто пытается войти в систему, используя простую аутентификацию по паролю. Снова откройте PuTTY и загрузите исходную конфигурацию сеанса, которую мы настроили без аутентификации на основе ключей, используя только наше имя пользователя, и попытайтесь войти в систему. Если мы все сделали правильно, вы должны увидеть ЭТО неприятный артефакт:

Надеюсь, это помогло некоторым из вас начать использовать OpenSSH и PuTTY для удаленного подключения к вашей Linux-машине из Windows.Конечно, от этого мало пользы, когда, как и я, ваши две машины находятся в одной комнате. В одном из следующих постов я расскажу об использовании SSH для подключения к вашей Linux-машине из Интернета в целом, а также в сочетании с VNC для создания очень безопасного подключения к удаленному рабочему столу.

Кроме того, я начал изучать это, потому что моя следующая цель - использовать облачные сервисы, такие как Amazon EC2 и Windows Azure. В этом контексте я хочу иметь возможность развернуть виртуальную машину (ВМ), размещенную в облаке, и выполнять такие административные операции.

Пожалуйста, не стесняйтесь оставлять конструктивный отзыв, и особенно, ругать меня, если я допустил ошибку или распространяю неверную информацию. Комментарии приветствуются!

Джон в Google CodeProject

.

Как обмениваться файлами между компьютером Linux и Windows

Обновлено: 13 ноября 2018 г., компания Computer Hope

Самый простой и надежный способ обмена файлами между компьютерами Linux и Windows в одной локальной сети - это использовать протокол обмена файлами Samba. Все современные версии Windows поставляются с установленной Samba, и Samba установлена ​​по умолчанию в большинстве дистрибутивов Linux.

Создать общую папку в Windows

Сначала создайте общую папку на вашем компьютере с Windows.

  1. Откройте панель управления.
  2. Перейдите к Параметры сети и общего доступа .
  3. Перейти к Изменить дополнительные параметры общего доступа .
  4. Выберите Включите обнаружение сети и Включите общий доступ к файлам и принтерам .

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

  1. Щелкните папку правой кнопкой мыши и выберите Свойства .
  2. Перейдите на вкладку Общий доступ .
  3. Над кнопкой Share находится сетевое имя создаваемого вами общего ресурса. Он должен выглядеть так: \\ ИМЯ КОМПЬЮТЕРА \ Users \ ИмяПользователя \ ИмяПапки . Запишите это имя сети, чтобы использовать его позже на вашем компьютере с Linux.
  4. Нажмите Поделиться .

Доступ к общей папке Windows из Linux с помощью Konqueror

Многие дистрибутивы Linux используют среду рабочего стола KDE и файловый менеджер / браузер Konqueror. Если это то, что вы используете, вы можете выполнить следующие действия, чтобы получить доступ к общей папке Windows:

  1. Щелкните значок меню K.
  2. Выберите Интернет -> Konqueror .
  3. В открывшемся окне Konqueror щелкните ссылку Сетевые папки или введите remote: / в адресной строке и нажмите Enter.
  4. Щелкните значок Samba Shares .
  5. Щелкните значок рабочей группы Windows Home .
  6. Щелкните значок Workgroup .
  7. Щелкните значок своего компьютера.
  8. При появлении запроса введите имя пользователя и пароль для учетной записи Windows, которая создала общий ресурс.
  9. Щелкните ОК .

Доступ к общей папке Windows из Linux с помощью Nautilus

Многие дистрибутивы Linux, особенно те, которые используют среду рабочего стола GNOME, используют файловый менеджер Nautilus. Если это то, что вы используете, вы можете выполнить следующие действия, чтобы получить доступ к общей папке Windows:

  1. Откройте Наутилус.
  2. В меню Файл выберите Подключиться к серверу ...
  3. В раскрывающемся списке Тип службы: выберите Общий ресурс Windows .
  4. В поле Сервер: введите имя вашего компьютера.
  5. Нажмите Подключиться .

Также можно ввести в адресной строке Nautilus smb: // ComputerName / ShareName и нажать Enter. Например, при создании общего ресурса Windows, если имя общего ресурса было указано как

 \\ ИМЯ КОМПЬЮТЕРА \ Пользователи \ ИмяПользователя \ ИмяПапки 

Введите smb: // ИМЯ КОМПЬЮТЕРА / Пользователи / ИмяПользователя / ИмяПапки и нажмите Enter.Обратите внимание на smb: в начале; в Linux используйте косую черту вместо обратной.

Доступ к общей папке Windows из Linux с помощью командной строки

Вы также можете получить доступ к общему ресурсу Windows из командной строки Linux с помощью программы smbclient.

  1. Откройте терминал.
  2. Введите smbclient в командной строке.
  3. Если вы получили сообщение «Использование:», это означает, что программа smbclient установлена, и вы можете перейти к следующему шагу.Однако, если команда не найдена, вам необходимо установить smbclient. Чтобы установить его, выполните следующие действия.
    1. Если вы используете менеджер пакетов apt, который используется по умолчанию в таких системах Linux, как Ubuntu или Debian, вы можете использовать команду sudo apt-get install smbclient .
    2. Если вы используете менеджер пакетов yum, который используется по умолчанию в системах Linux, таких как CentOS, вы можете использовать команду sudo yum install samba-client .
    3. Вы также можете загрузить клиент Samba прямо с www.samba.org/samba/download/, который может быть вам полезен, если вам нужно или вы хотите скомпилировать программу из исходного кода.
  4. Установив smbclient, вы можете подключиться к общему ресурсу Windows с помощью команды smbclient // ComputerName / ShareName -U Username . Например, если ваше имя пользователя Windows - Fred , а ваше сетевое имя общего ресурса Windows - \\ YOURCOMPUTERNAME \ Users \ YourUserName \ ShareFolderName , используйте команду smbclient // YOURCOMPUTERNAME / Users / YourUserName / ShareFolderName -U Fred .Обратите внимание, что команда Linux использует косую черту вместо обратной).
  5. Введите свой пароль.
  6. После аутентификации вы попадаете в приглашение smb: \> .
  7. Здесь вы можете использовать команду ls для вывода списка файлов.
  8. Используйте команду get filename.ext , например, для передачи файла с именем filename.ext из общего ресурса Windows на компьютер Linux.
  9. Введите help , чтобы просмотреть список дальнейших команд.
  10. Введите quit или exit , чтобы вернуться в командную строку.
.

Использование ключей SSH для подключения к виртуальным машинам Linux - Виртуальные машины Azure

  • 4 минуты на чтение

В этой статье

Эта статья предназначена для пользователей Windows, которые хотят создать и использовать ключи безопасной оболочки (SSH) для подключения к виртуальным машинам (ВМ) Linux в Azure. Вы также можете сгенерировать и сохранить ключи SSH на портале Azure для использования при создании виртуальных машин на портале.

Чтобы использовать ключи SSH из клиента Linux или macOS, см. Быстрые шаги. Более подробный обзор SSH см. В разделе Подробные действия: создание ключей SSH для аутентификации на виртуальной машине Linux в Azure и управление ими.

Обзор SSH и ключей

SSH - это протокол зашифрованного соединения, позволяющий безопасно входить в систему через незащищенные соединения. SSH - это протокол подключения по умолчанию для виртуальных машин Linux, размещенных в Azure. Хотя сам SSH обеспечивает зашифрованное соединение, использование паролей с SSH по-прежнему оставляет виртуальную машину уязвимой для атак грубой силы.Мы рекомендуем подключаться к виртуальной машине по SSH с помощью пары открытого и закрытого ключей, также известной как SSH-ключи .

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

При подключении к виртуальной машине Linux виртуальная машина проверяет клиента SSH, чтобы убедиться, что у него правильный закрытый ключ.Если у клиента есть закрытый ключ, ему предоставляется доступ к виртуальной машине.

В зависимости от политик безопасности вашей организации вы можете повторно использовать одну пару ключей для доступа к нескольким виртуальным машинам и службам Azure. Вам не нужна отдельная пара ключей для каждой виртуальной машины.

Ваш открытый ключ может быть передан кому угодно, но только вы (или ваша локальная инфраструктура безопасности) должны иметь доступ к вашему закрытому ключу.

Поддерживаемые форматы ключей SSH

Azure в настоящее время поддерживает пары открытого и закрытого ключей RSA по протоколу SSH 2 (SSH-2) с минимальной длиной 2048 бит.Другие ключевые форматы, такие как ED25519 и ECDSA, не поддерживаются.

SSH-клиенты

Последние версии Windows 10 включают клиентские команды OpenSSH для создания и использования ключей SSH и установления SSH-подключений из PowerShell или командной строки. Это самый простой способ создать SSH-соединение с вашей виртуальной машиной Linux с компьютера Windows.

Вы также можете использовать Bash в Azure Cloud Shell для подключения к виртуальной машине. Вы можете использовать Cloud Shell в веб-браузере, на портале Azure или в качестве терминала в Visual Studio Code с помощью расширения учетной записи Azure.

Вы также можете установить подсистему Windows для Linux, чтобы подключиться к вашей виртуальной машине через SSH и использовать другие собственные инструменты Linux в оболочке Bash.

Создать пару ключей SSH

Создайте пару ключей SSH с помощью команды ssh-keygen . Введите имя файла или используйте значение по умолчанию, указанное в скобках (например, C: \ Users \ username / .ssh / id_rsa ). Введите кодовую фразу для файла или оставьте кодовую фразу пустой, если вы не хотите использовать кодовую фразу.

  ssh-keygen -m PEM -t rsa -b 4096  

Создайте виртуальную машину, используя свой ключ

Чтобы создать виртуальную машину Linux, которая использует ключи SSH для аутентификации, укажите свой открытый ключ SSH при создании виртуальной машины.

Используя Azure CLI, вы указываете путь и имя файла для открытого ключа, используя az vm create и параметр --ssh-key-value .

  az vm create \ --resource-group myResourceGroup \ --name myVM \ --image UbuntuLTS \ --admin-username azureuser \ --ssh-ключ-значение ~ / .ssh / id_rsa.pub  

В PowerShell используйте New-AzVM и добавьте ключ SSH в конфигурацию виртуальной машины с помощью`. Пример см. В разделе Краткое руководство: создание виртуальной машины Linux в Azure с помощью PowerShell.

Если вы выполняете много развертываний с помощью портала, вы можете загрузить свой открытый ключ в Azure, где его можно будет легко выбрать при создании виртуальной машины на портале. Дополнительные сведения см. В разделе Загрузка ключа SSH.

Подключитесь к вашей виртуальной машине

С открытым ключом, развернутым на вашей виртуальной машине Azure, и закрытым ключом в вашей локальной системе, подключитесь по SSH к вашей виртуальной машине, используя IP-адрес или DNS-имя вашей виртуальной машины. Замените azureuser и 10.111.12.123 в следующей команде на имя пользователя администратора, IP-адрес (или полное доменное имя) и путь к вашему закрытому ключу:

  ssh -i ~ /.ssh / id_rsa.pub [email protected]  

Если вы настроили парольную фразу при создании пары ключей, введите парольную фразу при появлении запроса.

Если виртуальная машина использует политику своевременного доступа, вам необходимо запросить доступ, прежде чем вы сможете подключиться к виртуальной машине. Дополнительные сведения о политике JIT см. В разделе Управление доступом к виртуальной машине с помощью политики JIT.

Следующие шаги

.

Смотрите также