windows:server:2008:r2:openssh:install
-
-
На момент написания это v8.1.0.0p1-Beta.
-
-
Распаковать в
C:Program Files
;-
Или куда угодно, но помните, что из него в дальнейшем будут запускаться службы.
-
-
Добавить путь
C:Program FilesOpenSSH-Win64
в переменную PATH.-
Свойства системы – Дополнительные параметры – Переменные среды… – Системные переменные – Path, далее в конце стоки через точку с запятой вставить путь без кавычек.
-
-
Запустить PowerShell с правами администратора, перейти в каталог
C:Program FilesOpenSSH-Win64
и ввести./install-sshd.ps1
(PowerShell пока не закрывать!); -
Запустить службу
OpenSSH SSH Server
(sshd) и настроить ее на автоматический запуск; -
Вернуться в PowerShell и выполнить
./FixHostFilePermissions.ps1
везде соглашаясь;
Если есть ошибки, проверить наличие папки C:ProgramDataSSH
и ключевых файлов в ней. Ключевые файлы создаются при первом запуске службы.
Дисклеймер
-
Использование материалов данной базы знаний разрешено на условиях лицензии, указанной внизу каждой страницы! При использовании материалов активная гиперссылка на соответствующую страницу данной базы знаний обязательна!
-
Автор не несет и не может нести какую либо ответственность за последствия использования материалов, размещенных в данной базе знаний. Все материалы предоставляются по принципу «как есть». Используйте их исключительно на свой страх и риск.
-
Все высказывания, мысли или идеи автора, размещенные в материалах данной базе знаний, являются исключительно его личным субъективным мнением и могут не совпадать с мнением читателей!
-
При размещении ссылок в данной базе знаний на интернет-страницы третьих лиц автор не несет ответственности за их техническую функциональность (особенно отсутствие вирусов) и содержание! При обнаружении таких ссылок, можно и желательно сообщить о них в комментариях к соответствующей статье.
Последнее изменение: 2022/02/12 11:40 (внешнее изменение)
Введение
Существует несколько опций командной строки, доступных для настройки Window Server 2008 через сеть. Например, Windows Powershell, ServerManager.exe, или сервер telnet. Однако, проверенным и надежным способом, который так хорошо работал практически на всех типах устройств инфраструктуры, использующихся сегодня (включая Windows Server 2008, Cisco Routers, Linux серверы и т.д.) является SSH. В этой статье мы узнаем, как устанавливать SSH Server в Windows Server 2008.
Что такое SSH?
SSH – это безопасная оболочка (secure shell), стандарт, определенный в RFC 4251. Это сетевой протокол, который открывает безопасный канал между двумя устройствами, используя TCP порт 22. Этот канал также можно использовать для SFTP и SCP (безопасного FTP и защищенного копирования соответственно). Чтобы он работал, вам нужен безопасный сервер в системе, к которому вы подключаетесь, и безопасный клиент на клиенте, с которого вы подключаетесь.
Следует помнить, что SSH функционально совместим с различными платформами. К примеру, вы можете подключить SSH сервер на маршрутизаторе Cisco с клиента Windows, вы можете подключиться к серверу Linux с маршрутизатора Cisco, а также можете подключиться к Windows 2008 Server с клиента Linux.
Единственной возможной проблемой совместимости может стать тот факт, что существует две версии SSH, SSH версии 1 и SSH версии 2. Вы должны убедиться, что клиент и сервер поддерживают одну и ту же версию, чтобы знать, какую версию использовать при подключении. Обычно версии могут быть оговорены.
Хотя ни одна из ОС Windows не идет с SSH сервером или клиентом, их очень просто устанавливать.
Имея SSH сервер на своем Windows 2008 Server, вы можете:
- Удаленно иметь доступ к командной строке вашего Windows 2008 Server
- Управлять сервером через сеть, даже если вы не имеете доступа к интерфейсу GUI
- Удаленно управлять вашим Windows 2008 Server с любого устройства, имеющего SSH клиента
- Делать все это через зашифрованное соединение, которое может безопасно проходить даже через интернет
Какие опции сервера SSH доступны для Windows 2008 Server?
Существует ряд опций сервера SSH, доступных для Windows Server 2008. Вот лишь некоторые из тех, с которыми мне довелось иметь дело:
- SSH.com ‘ Бесплатный некоммерческий SSH сервер
- SSH.com ‘ SSH Tectia клиент и сервер (коммерческий)
- OpenSSH ‘ смотреть статью о том, как устанавливать openssh сервер в Vista (применимо к Windows Server 2008)
- Van Dyke ‘ vShell 3.0 Server (коммерческий)
- Free SSHd
- WinSSHd (коммерческий)
- Kpym Telnet/SSH Server
- copSSH для Windows (измененная версия OpenSSH)
- Sysax Multi-Server (SSH Server) для Windows
Как только вы запустили SSH сервер, вам понадобится SSH клиент для Windows. Вот несколько самых популярных SSH клиентов для Windows, которых мне удалось найти:
- PuTTY
- Van Dyke — SecureCRT (коммерческий)
Как установить FreeSSHd — SSH сервер в Windows Server 2008?
Поскольку установка Free SSHd так проста по сравнению с другими опциями (особенно с OpenSSH в Windows), я выбрал эту версию, чтобы показать процесс установки Free SSHd. Помните, что FreeSSHd абсолютно бесплатен (как видно из его названия) для личного / некоммерческого использования, а также для коммерческого использования.
Чтобы начать процесс, я скачал FreeSSHd.exe на свою систему Windows Server 2008 и запустил загруженную программу. Графическая установка началась.
Я принял все параметры по умолчанию для установки и нажал «Установить», чтобы начать процесс.
По завершении я решил не запускать SSHd в качестве службы, однако вы можете выбрать этот вариант при желании.
Я заметил, что SSHd сервер уже работал.
Приложение FreeSSHd может предложить следующее:
- Возможности SSH сервера и Telnet сервера
- Опции запуска SSHd только в определенных интерфейсах
- Различные способы аутентификации, включая интегрированную NTLM аутентификацию на Windows AD
- Различные способы шифрования, включая AES 128, AES 256, 3DES, Blowfish и т.д.
- Опция создания защищенного туннеля в соединении
- Опциональный Secure FTP (sFTP) – для безопасного FTP, смотреть FreeFTPd website
- Возможность управлять пользователями и ограничивать доступ к безопасной оболочке, безопасному туннелю и безопасному FTP
- Возможность предоставлять доступ только определенным узлам или подсетям
- Возможность регистрировать в журнал все подключения и команды, выполненные через FreeSSHd
- Просмотр пользователей, подключенных в данный момент
- Автоматическое обновление FreeSSHd
Чтобы войти, мне понадобилось выполнить две вещи:
- Добавить новую пользовательскую учетную запись и разрешить доступ к командной строке SSH
- Открыть исключения в моем брандмауэре Windows Server 2008
Чтобы добавить нового пользователя, я перешел по вкладке «Пользователи» и нажал Добавить.
Я решил установить логин для моей учетной записи локального администратора Windows. Я установил авторизацию на NTLM. Так в базе данных FreeSSHd нет локального пароля, и если пароль администратора измениться в базе данных локальной учетной записи Windows, вам не придется менять пароль в базе данных учтенной записи FreeSSHd.
Я авторизировал этого нового пользователя на вход только в SSH.
Вот результаты:
Второе, что мне нужно было сделать для того, чтобы позволить себе вход, это открыть исключения брандмауэра Windows. Хотя я мог вообще отключить брандмауэр Windows вместо того, чтобы открывать порты, конечно, самой безопасной опцией было оставить брандмауэр включенным и разрешить исключение для SSH ‘ TCP порт 22.
Для этого я перешел в меню Пуск -> Администрирование -> Брандмауэр Windows с расширенной безопасностью.
Далее, я нажал на входящих правилах, а затем Новое правило.
Далее я выбрал добавление правила порта.
Я указал только TCP порт 22.
Воспользуйтесь умолчаниями чтобы Разрешить это соединение, примените ко Всем доменам, и назовите правило на свой вкус.
Протестируйте подключение
Чтобы протестировать подключение, я использовал SecureCRT со своей машины Windows XP на Windows Server 2008 сервер через SSH.
Для этого я подключился к серверу через IP адрес (или имя домена). Я выбрал опцию «Принять» сертификат сервера и сохранил его.
Я вошел на сервер, используя логин и пароль администратора.
И, успех! Я смог получить доступ к серверу через SSH!
03.06.2009 —
Posted by |
ms windows server 2008
Sorry, the comment form is closed at this time.
I wanted to setup a DNS and DHCP server for my home network. I could have used a Linux server to do this, but I wanted to write about server core. I also wanted to mess with working over ssh to do things, I found a SourceForge
project that worked really well on 2008 x86, I had errors on 2008 R2 which I’ll poke at next week.
I don’t think I need to explain these things too much, I’ll be using DNS and DHCP as they were intended to be used. I’m installing the SNMP service because I have setup a Zenoss server. It uses SNMP to monitor everything from disk usage to network usage.
You will need to have your network card set to a static IP in the proper network for it work correctly.
PowerShell Installation
Windows 2008 Core
Install PowerShell following these
instructions.
Windows 2008 R2 Core
Install PowerShell following these
instructions.
Install OpenSSH
- Download the install
file - The installation takes care of everything but the firewall
- Allow SSH through the firewall
- netsh firewall set portopening TCP 22 «OpenSSH TCP22»
Basic Networking Configuration
netsh interface set interface name=»Local Area Connection» newname=»Public»
netsh interface ipv4 set address name=»Public» static 192.168.1.1 255.255.255.0 192.168.1.254
netsh interface ipv4 set dnsserver name=»Public» static 192.168.1.1 primary
netdom renamecomputer %computername% /newname:{newComputerName}
Installing the required services
DNS
start /w ocsetup DNS-Server-Core-Role
DHCP
start /w ocsetup DHCPServerCore
SNMP
start /w ocsetup SNMP-SC
Configuration of these services can be done via a server with RSAT installed, but that would be no fun at all, so we’ll use the builtin tools to set things up. If you have read the above article you may already have SSH setup and be using puTTY or some other
client to perform these tasks.
Configuring the required services
DNS: dnscmd
The following command creates a forward lookup zone and marks it as the primary zone on this server.
dnscmd ServerName /ZoneAdd company.com /Primary /file company.com.dns
The following command creates a reverse lookup zone for 192.168.1.0/24 and marks it as the primary zone
dnscmd ServerName /ZoneAdd 1.168.192.in-addr.arpa /Primary /file 1.168.192.in-addr.arpa.dns
The following command creates an A record for the local server at 192.168.1.1
dnscmd ServerName /RecordAdd company.com @ A 192.168.1.1
The following command creates the reverse record for the server at 192.168.1.1
dnscmd ServerName /RecordAdd 1.168.192.in-addr.arpa 1 PTR company.com
Allow DNS traffic to pass through the firewall
netsh firewall set portopening TCP 53 «DNS-TCP»
netsh firewall set portopening UDP 53 «DNS-UDP»
DNSCMD Resources:
Setup DNS from the command-line
Configuring DNS on Server Core
DNSCMD Cheat Sheet
Administering DNS Server
DHCP: netsh
After installing the DHCP role on the core server you will need to run the following command to allow the service to auto-start
sc config dhcpserver start= auto
Original Content
Необходимо установить ssh на win-сервер. Какой лучше всего выбрать?
Нашел много различных вариантов, в которых можно запросто потеряться. Необходим бесплатный и хороший функционал, пусть и долго в нем разбираться.
задан 27 июн 2011 в 10:44
0_byte0_byte
291 золотой знак2 серебряных знака7 бронзовых знаков
WinSSHD (Personal Edition — бесплатно для некоммерческого использования) — достаточно неплохой из тех, что мне известны:
- поддерживает PowerShell;
- есть API для автоматизации;
- пишет логи;
- настраивается по пользователю, группе, IP, DNS;
- поддерживает публичные ключи OpenSSH;
- и разные другие вещи, смотрите ссылку.
ответ дан 27 июн 2011 в 11:07
Nicolas Chabanovsky♦Nicolas Chabanovsky
50.6k80 золотых знаков257 серебряных знаков493 бронзовых знака
In the last few months I used my blog to post information on remotely managing your Server Core installations of Windows Server 2008 with numerous tools, including the Computer Management MMC Snap-Ins (compmgmt.msc), the Remote Server Administration Tools (RSAT), Remote Desktop Connection (using RDP) and Windows Remote Shell.
Now it’s time to go a little further into uncharted territory and manage Server Core using PuTTY over SSH.
Tools
I’ll be setting up OpenSSH on a x86 version of a Server Core installation of Windows Server 2008 Standard. To install it I’ll simply use Cygwin package 1.5.25-15, which can be downloaded from the Cygwin Website On the client level I’ll use PuTTY 0.60, which can be downloaded from the PuTTY Download Page for free.
In the table below are the versions of the tools used:
Tool | Version |
Cygwin installer | 2.573.2.2 |
OpenSSH | 5.1p1-3 |
DiffUtils | 2.8.7-1 |
PuTTY | 0.60 |
Server side configuration
Download Cygwin
To install Cygwin you can use the Installation Wizard (setup.exe) from the website.
It weighs 405 KB.
This Installation Wizard was previously available as a FTP download, but recently the Cygwin people decided to stick with website hosting only, allowing the program to retrieve the files and packages it needs using FTP. This step makes installing Cygwin on a Server Core installation slightly more difficult, because you now need a browser to download it.
On the other hand it offers the ability to combine the Installation Wizard and the necessary packages on a different host than your Server Core installation, which might be useful when your Server Core box can’t access the Internet or you want to deploy loads of SSH servers to manage your Server Core boxes and don’t want to strain your Internet connection too much.
Get the Cygwin installer on your Server Core
After you’ve downloaded the Cygwin Installation Wizard you need to transfer the file to your Server Core installation. You can use various methods, including: (but not limited to)
- Copying the file to a USB or other portable rewritable media
- Burn the file onto a CD or DVD media
- Convert the file to a ISO file and mount it on your Server Core box (using DRAC/ILO)
- Place the file on a SMB File Share and map a drive to it on your Server Core box
- Place the file on an internally available FTP Server and grab it using ftp.exe.
Run the software installer
To start the installation change your prompt to the directory where setup.exe resides and type setup.exe. The Installation Wizard should appear. Perform the following steps:
- In the Cygwin Net Release Setup Program screen, which serves as a Welcome screen press Next >.
- In the Choose a Download Source select the Install from Internet (downloaded files will be kept for future re-use) option. When you have previously used the Download without Installing option to leech the 16 MB needed for OpenSSH and other utilities and distributed these files with setup.exe you can specify the Install from Local Directory option. Press Next >.
- In the Select Root Install Directory screen type a directory to install Cygwin in, or accept the default location of C:Cygwin. Under Install For verify All Users is selected. Under Default Text File Type verify Unix / binary is selected.
Press Next > when done. - When you’ve selected to Install from Internet (step 2) specify the Local Package Directory on the Select Local Package Directory screen where you want the Cygwin Installation Wizard to store the installation files it downloads. Afterwards press Next >.
- In the Select Your Internet Connection screen choose from Direct Connection and Use HTTP/FTP Proxy to best describe your connection to the Internet and press Next >.
- In the Choose A Download Site screen select a mirror site close to your location to download the remainder of the setup files from. Check the Cygwin Mirror Sites page for more information on the mirrors. Press Next > when done.
- In the Select Packages screen open the Net category and scroll down until you reach the openssh: The OpenSSH Server a… entry. Click on the Skip button thingy in the second column to change it. OpenSSL will be installed automatically as well, which is fine. Also open the Utils category and scroll down until you reach the Diffutils. Install these. Press Next >.
- When you receive a window stating you also need to download a couple of packages your packages depend on (dependencies) choose the recommended setting to install these and press Next >.
- Wait for the Cygwin Installation Wizard to download the necessary packages. Wait a little longer for the Cygwin Installation Wizard to install the programs. In the Create Icons screen deselect the Create icon on Desktop and Add icon to Start Menu options. We won’t be needing them. Press Finish when done.
I noticed my Server Core box downloaded 16,5 MB from the mirror website.
Configure OpenSSH
Type the following command in the folder where you installed Cygwin (refer to step 3) and run the following command:
Cygwin.bat
On the first run this will make Cygwin perform a couple of basic steps regarding the skeleton files before it will display its prompt. On the prompt type the following commands:
chmod +r /etc/passwd
chmod +r /etc/group
chmod 755 /var
ssh-host-config
Answer the following questions:
Question | Answer |
Should privilege separation be used? | yes |
Should this script attempt to create a new local account ‘sshd’? | yes |
Do you want to install sshd as a service? | yes |
Enter the value of CYGWIN for the deamon : [ntsec] | ntsec |
Do you want to use different name? | no |
Create new privileged user account ‘cyg_server’? | yes |
Please enter the password: | Any Password* |
Reenter: | Any Password* |
* these two values should meet the password complexity requirements.
You should receive the message when done:
*** Info: Host configuration finished. Have fun!
Create a Firewall exclusion
The Installation Wizard will not create a firewall exception by default, so you need to make one yourself. Use the following command to do so:
netsh advfirewall firewall add rule name=»OpenSSH Server» protocol=TCP dir=in localport=22 action=allow
Start the OpenSSH Server
The last step on the server is to start the Open SSH Server, by typing:
net start sshd
Note:
The CYGWIN sshd service is set to start automatically every time you reboot. You will only have to type the above command once. Alternatively to typing the command you could restart your Server Core box.
Client side configuration
On the intended client download a SSH client. PuTTY is by far the most popular SSH client. It is a Graphical SSH client for Windows and the best thing it’s free.
Installing PuTTY
After installing and configuring OpenSSH on your Server Core installation you might suspect installing PuTTY on Windows is tricky as well, but it isn’t. Technically you can’t even install PuTTY: you simply download PuTTY and store putty.exe somewhere. (I’ve placed putty.exe on my desktop for easy access.)
Running PuTTY
To run PuTTY simple double-click it.
Note:
When you’ve downloaded putty.exe with Internet Explorer and stored it on a NTFS formatted drive you might get a Security Warning. To disable this warning right-click on putty.exe and open its properties. At the bottom of the General tab you’ll find a button labeled Unblock next to the text «This file came from another computer and might be blocked to help protect this computer.» Pressing the Unblock button will remove the text, the button and the Security Warning.
Connecting with PuTTY
To connect to your Server Core installation of Windows Server 2008 type the IP address or DNS name of your Server Core box in the Host Name (or IP address) field of the PuTTY Configuration Screen and press the Open button.
Log in with your credentials and presto!
Concluding
I hope this post helps you to connect to your Server Core boxes using SSH. It sure helped me convince a Linux minded firewall administrator to grant me access to one of my boxes, using the «I’m using all the right tools here» argument. Sometimes communication can be so much fun…
Although this post is only a brief exploration of SSH on a Server Core installation of Windows Server 2008, limitless options exist to manage your boxes using SSH tunneling.
When managing Server Core installations of Windows Server 2008 using SSH in an Active Directory environment, be sure to check out the documentation over on Port25.
Further reading
Setup an SSH Server in Vista
PuTTY Download Page
How to install OpenSSH on Windows 2000, XP or Vista
Installing OpenSSH for Windows 2003 Server – How to get it working
How to setup the secure shell daemon on a Windows 2003 server
Vista Blocked File Protection Control
OpenSSH with Kerberos and Active Directory
Port 25: OpenSSH on Linux using Windows/Kerberos for Authentication
Stupid SSH Tricks: Some Essentials
How to setup the secure shell daemon on a Windows 2003 server
ssh, Cygwin, and Samba
NT Security and usage of ntsec
Considerations
Updates
This blogpost endorses open source products. Open source products need patching. Patching OpenSSH on Windows Server 2008 requires manual interaction. You can use the Cygwin installer to update the open source packages installed. Please update your operational procedures to check for updates regularly. More information can be found in the Further reading section above.
Security
The version of OpenSSH used in this post offers both version 1 and version 2 of Secure Shell. (SSH1 and SSH2) SSH1 has inherent design flaws which make it vulnerable to, e.g., man-in-the-middle attacks, it is now generally considered obsolete and should be avoided. For security considerations you should disable SSH1 in the sshd_config file. More information can be found in the Further reading section above.
I’ve installed freeSSHd on a Windows Server 2008 box (following the instructions in How to install an SSH Server in Windows Server 2008), including:
- created a user named «dspitzer» with NTLM authorization
- opened an exception for port 22 in the Windows Firewall
But when I try to connect (from a Mac OS X 10.5.8 command-line), I get permission denied after entering the password:
$ ssh 12.34.56.78
dspitzer@12.34.56.78's password:
Permission denied, please try again.
dspitzer@12.34.56.78's password:
Permission denied, please try again.
dspitzer@12.34.56.78's password:
Received disconnect from 12.34.56.78: 2: Too many attempts.
I’ve also tried:
$ ssh dspitzer@12.34.56.78
dspitzer@12.34.56.78's password:
Permission denied, please try again.
dspitzer@12.34.56.78's password:
Permission denied, please try again.
dspitzer@12.34.56.78's password:
Received disconnect from 12.34.56.78: 2: Too many attempts.
I’ve also tried changing the authorization to «Password stored as SHA1 hash» and entering a simple password, but I get the same problem. And I’ve tried a different user name («Administrator») with no luck.
I’ve confirmed that I am connecting to the server I’m configuring—if I stop freeSSHd and try to connect I get:
$ ssh 12.34.56.78
ssh: connect to host 12.34.56.78 port 22: Operation timed out
I get the exact same results from a Linux command-line.
Any advice or troubleshooting tips?
Update: I tried disabling the firewall (in response to geeklin’s comment) and it made no difference.
Update #2: I no longer have this machine (I’ve changed employers), so I have no way of verifying the answers. I guess all I can do is make this question «community wiki».