Показаны сообщения с ярлыком настройка. Показать все сообщения
Показаны сообщения с ярлыком настройка. Показать все сообщения

понедельник, 7 декабря 2015 г.

Настройка Hyper-V Server 2012 R2

Оригинал

Для удаленного управления Hyper-V Server 2012 R2 можно использовать ОС Windows Server 2012 R2 Standard или Datacenter, а также Windows 8.1.
В случае использования Windows Server 2012 R2 Standard или Datacenter необходимо установить консоль Hyper-V Manager. Это можно сделать в Server Manager или при помощи командлета PowerShellInstall-WindowsFeature -Name 'RSAT-Hyper-V-Tools'
В 64 битных версиях ОС Windows 8.1 Pro и Enterprise для установки Hyper-V Manager можно использовать средство настройки компонентов Windows.
Для остальных версий Windows 8.1 необходимо установить Remote Server Administration Tools (RSAT), которую также можно скачать на официальном сайте Microsoft.
Прежде, чем перейти непосредственно к настройке серверов, хочу подробнее остановиться на схеме сети, которая будет использоваться в нашей демонстрации.
В моем случае я буду использовать наипростейший вариант - локальная подсеть 192.168.1.0/24 с двумя машинами: Hyper-V Server 2012 R2 с IP-адресом 192.168.1.5 в качестве хоста виртуализации и Windows Server 2012 R2 Standard R2 с IP 192.168.1.6 в качестве хоста управления. Обе машины не являются участниками домена и входят в рабочую группу TESTLAB.
Итак, после завершения вполне себе интуитивной установки Hyper-V Server 2012 R2 перед нами предстает рабочий стол с двумя окнами, стандартная командная строка cmd.exe и окно скрипта sconfig.cmd:
Данный скрипт позволяет произвести первоначальную настройку сервера:
– сменить имя сервера
– сменить имя рабочей группы или ввести сервер в домен
– добавить локального администратора
– включить удаленный доступ к серверу, что позволить управлять им с помощью Server Manager, консолей MMC, PowerShell, подключаться по RDP, проверить доступность с помощью pingили tracert
– настроить Windows Update и устанавливать обновления
– настроить сетевые карты сервера
– настроить время на сервере
Также настройку времени на сервере можно выполнить с помощью команды controltimedate.cpl, а настройку региональных параметров - с помощью команды control intl.cpl. При этом будут запущены привычные консоли Панели Управления.

АВТОМАТИЧЕСКИЙ ЗАПУСК POWERSHELL ПРИ ВХОДЕ В СЕАНС

Когда вышла первая версия Hyper-V Server 2008, PowerShell в нем официально не поддерживался, и, единственным способом настройки и получения информации с сервера были утилиты командной строки, такие как net, netsh, wmic, и множество других. Они не обладали единообразным интерфейсом и способом использования, что в итоге увеличивало порог вхождения для администратора и влияло на производительность работы. Но время не стоит на месте и, начиная с Hyper-V Server 2008 R2, Microsoft внедряет поддержку PowerShell, а в Hyper-V Server 2012 PowerShell можно использовать сразу после установки системы. Более того, в Hyper-V Server 2012 включен модуль PowerShell для взаимодействия с Hyper-V, а в Hyper-V Server 2012 R2 количество командлетов для работы с Hyper-V превысило значение 170. Точное значение можно посмотреть с помощью Get-Command -ModuleHyper-V | Measure-Object.
Зайдем в оболочку PowerShell и запустим командлет New-ItemProperty, который создаст новый ключ в реестре HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\run.
New-ItemProperty -path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\run -Name PowerShell -Value "cmd /c start /max C:\Windows\system32\WindowsPowerShell\v1.0\powershell.exe -noExit" -Type string
Теперь при следующем входе в систему будет запускаться окно с оболочкой PowerShell, в которой мы продолжим настройку нашего сервера.

НАСТРОЙКА СЕТЕВЫХ АДАПТЕРОВ

Если сетевые адаптеры до этого не были настроены с помощью sconfig.cmd, сделаем это с помощью командлетов PowerShell.
Смотрим текущую конфигурацию IP на сетевых интерфейсах. В моем случае адресация назначена службой APIPA, так как в сети нет DHCP сервера.
Get-NetIPConfiguration
Назначаем статическую адресацию, маску сети, шлюз по умолчанию и адреса DNS серверов. InterfaceIndex сетевого адаптера берем из вывода предыдущего командлета.
New-NetIPAddress -InterfaceIndex 13 -IPAddress 192.168.1.5 -DefaultGateway 192.168.1.1 -PrefixLength 24
Set-DnsClientServerAddress -InterfaceIndex 13 -ServerAddresses 192.168.1.2,192.168.1.3

ОТКЛЮЧАЕМ IPV6 НА СЕТЕВОМ ИНТЕРФЕЙСЕ

Если использование IPv6 на сетевом интерфейсе пока не планируется, имеет смысл отключить его на интерфейсе для уменьшения «attacksurface».
Проверяем текущую настройку IPv6 на интерфейсе. Имя интерфейса берем из вывода командлетовGet-NetAdapter или Get-NetIPConfiguration.
Get-NetAdapterBinding -InterfaceDescription "Microsoft Hyper-V Network Adapter" | Where-Object -Property DisplayName -Match IPv6 | Format-Table –AutoSize
Отключить поддержку IPv6 на сетевом адаптере можно командлетом Disable-NetAdapterBinding. Данное действие будет аналогично снятию галки «Internet Protocol Version 6 (TCP/IPv6)» в настройках адаптера в графическом интерфейсе Windows.
Disable-NetAdapterBinding -InterfaceDescription "Microsoft Hyper-V Network Adapter" -ComponentID ms_tcpip6

Настройка межсетевого экрана (Advanced Firewall)

С внедрением PowerShell в Hyper-V Server появился удобный способ управления правилами межсетевого экрана, взамен устаревающего netsh. Просмотреть список комадлетов можно с помощью Get-Command.
Get-Command -Noun *Firewall* -Module NetSecurity
В качестве примера включим возможность традиционного управления межсетевым экраном через оснастку MMCс хоста управления. Для начала получим список правил, относящихся к удаленному управлению межсетевым экраном.
Get-NetFirewallRule | Where-Object -Property DisplayName -Match "firewall" | Format-List -Property Name, DisplayName, Enabled
Включаем оба правила.
Enable-NetFirewallRule -Name RemoteFwAdmin-In-TCP,RemoteFwAdmin-RPCSS-In-TCP
Теперь можно попробовать подключиться к оснастке MMC управления межсетевым экраном с хоста управления.

ВЗАИМОДЕЙСТВИЕ С SERVER MANAGER

Если гипервизор и хост управления не являются частью домена, а находятся в рабочей группе, как в нашем случае, то при попытке добавить сервер Hyper-V в Server Manager на удаленном хосте возникнет ошибка согласования WinRM.
Решается проблема довольно просто – достаточно добавить на Hyper-V Server в доверенные узлы WinRM на хосте управления и обновить текущее состояние в ServerManager.
Set-Item wsman:\localhost\Client\TrustedHosts HYPER-V01 -Concatenate –Force
 

Создание дискового хранилища для виртуальных машин

Теперь настало время создать хранилище файлов виртуальных машин и файлов виртуальных дисков. Для хранения данных будем использовать отдельный раздел на физическом диске. Для начала посмотрим список командлетов PowerShell, которые используются для управления носителями. Как обычно будем использовать для этого командлет Get-Command. Во втором случае мы получим список командлетов, служащих для получения информации.
Get-Command -Module Storage
Get-Command -Verb *Get* -Module Storage
Просмотрим список физических дисков на сервере.
Get-Disk
Создаем новый раздел на диске максимально возможного размера, назначаем букву D. Используем id из Get-Disk. После этого форматируем раздел в NTFS и указываем его метку.
New-Partition -DiskNumber 0 -DriveLetter D –UseMaximumSize
Format-Volume -DriveLetter D -FileSystem NTFS -NewFileSystemLabel "VMStore"
Убедимся в правильности проделанных нами операций с помощью оснастки MMC Disk Management на удаленном хосте, для этого включим соответствующие правила на межсетевом экране.
Enable-NetFirewallRule RVM-VDS-In-TCP,RVM-VDSLDR-In-TCP,RVM-RPCSS-In-TCP
Как мы видим, наш только что созданный диск прекрасно отображается в Disk Management.
Создадим папку на нашем разделе, где будем хранить настройки и файлы дисков виртуальных машин. Командлет New-Item позволяет создавать вложенные пути, так что нет необходимости запускать его два раза для каждой папки.
New-Item -Path "D:\Hyper-V\Virtual Hard Disks" -Type Directory
Создадим папки D:\Distrib и D:\ImportedVM, которые будем соответственно использовать для хранения дистрибутивов ОС и импортированных ВМ с других хостов виртуализации.
New-Item -Path D:\Distrib -ItemType Directory
New-Item -Path D:\ImportedVM -ItemType Directory
Для создания шары используем командлет New-SmbShare, с помощью которого дадим полный доступ по сети для группы локальных администраторов сервера.
New-SmbShare -Path D:\Distrib -Name Distrib -Description "OS Distributives" -FullAccess "BUILTIN\Administrators"
New-SmbShare -Path D:\ImportedVM -Name ImportedVM -Description "Imported VMs" -FullAccess " BUILTIN\Administrators"
Проверяем с помощью PowerShell и с помощью ServerManager с хоста управления.
Get-SmbShare -Name Distrib,ImportedVM | Format-List
Get-SmbShareAccess -Name Distrib,ImportedVM | Format-List
Общий список командлетов, относящихся к SMB (ServerMessageBlock), как обычно можно получить с помощью командлета Get-Command.
Get-Command -ModuleSmbShare
В заключение этой темы добавлю только то, что если на сервере не используется физический или логический RAID, то для повышения производительности и надежности работы с хранилищем ВМ целесообразно использование технологии Storage Pools (к примеру, такие командлеты, как New-StoragePool, New-Volume). Более подробнее об использовании Storage Pools совместно с Hyper-V я напишу в одной из будущих статей.

НАСТРАИВАЕМ ПАРАМЕТРЫ ГИПЕРВИЗОРА

Приступим к настройке параметров гипервизора. Основные параметры Hyper-V можно получить с помощью командлета Get-VMHost.
Get-VMHost | Format-List
Как мы видим из вывода командлета, пути ВМ и виртуальных дисков сейчас размещаются на одном разделе с ОС, что нас не устраивает ни с точки зрения скорости работы, ни с точки зрения надежности. Пропишем пути к созданным в прошлом разделе папкам с помощью командлета Set-VMHost.
Set-VMHost -VirtualMachinePath D:\Hyper-V -VirtualHardDiskPath 'D:\Hyper-V\Virtual Hard Disks'
Проверим с помощью PowerShell…
Get-VMHost | Format-List
… и с помощью Hyper-V Manager.
Как я упоминал выше, в Hyper-V Server 2012 R2 возможно использование EnhancedSessionMode для ВМ, что позволит пробросить в ВМ локальные диски, принтеры, звук, использовать буфер обмена и многомониторные конфигурации. Давайте включим его.
Set-VMHost -EnableEnhancedSessionMode 1

СОЗДАДИМ ВИРТУАЛЬНЫЙ КОММУТАТОР

Виртуальный коммутатор Hyper-V (Hyper-V Extensible Switch) предназначен для организации сетевого взаимодействия между различными ВМ, между ВМ и хостом виртуализации, между ВМ и внешней средой. На самом деле у Hyper-V Extensible Switch обширное количество возможностей, много вкусного появилось в версии 2012 R2. Так что сейчас не будем углубляться в эту тему, и создадим простейший External Switch, который привязывается к сетевой карте Hyper-V Server, и организует взаимодействие ВМ с физической сетью.
Для начала проверим поддержку SR-IOV (Single-Root Input/Output (I/O) Virtualization). 
Get-VMHost | Select-Object -Property "Iov*" | Format-List или
Get-NetAdapterSriov
В моем случае поддержки SR-IOV нет. Это связано с тем, что я немного схитрил, и в данной демонстрации у меня Hyper-V сервер запущен не на живом железе, а в виртуальной среде.
Получим список подсоединенных сетевых адаптеров
Get-NetAdapter | Where-Object -PropertyStatus -eqUp
 
Привязываем виртуальный свитч к сетевому адаптеру и при наличии SR-IOV включим его поддержку.
Внимание: Включить или отключить поддержку SR-IOV после создания свитча будет невозможно, для изменения этого параметра необходимо будет пересоздавать свитч.
New-VMSwitch -Name "Extenal_network" -NetAdapterName "Ethernet 2" -EnableIov 1
В моем случае Hyper-V выдает ошибку, опять же связанную с тем, что гипервизор сам запущен в виртуальной среде. На живом железе командлет создаст External Switch с именем «External_network» и привяжет его к сетевому адаптеру Ethernet 2. Виртуальный свитч также появится в списке сетевых адаптеров и на него будет перепривязаны все сетевые параметры физического адаптера Ethernet 2
Проверить можно с помощью командлетов Get-VMSwitch и Get-NetIPConfiguration –Detailed.

пятница, 13 ноября 2015 г.

Cisco Catalyst первоначальная настройка

оригинал

Cisco Catalyst 3560G
1. Зададим пароль на enable режим
Switch> enable
Switch# configure terminal
Switch(config)# enable password my-secret-password

2. Установим пароль для входа по telnet
Switch(config)# line vty 0 15
Switch(config-line)#password my-telnet-password

3. Сразу разрешим вход по telnet
Switch(config-line)# login
Switch(config)# exit

4. Зашифруем пароли, чтобы по sh run они не показывались в открытом виде
Switch(config)# service password-encryption

5. Зададим имя девайсу, например будет c3560G
Switch(config)# hostname c3560G

6. повесим / присвоим IP-адрес нашему девайсу
c3560G(config)# interface vlan 1
c3560G(config-if)# ip address 192.168.1.2 255.255.255.0
c3560G(config-if)# exit

7. Если вы ошибетесь при наборе чего либо в консоле, то циска начнет пытаться это отрезолвить, чем заставляет вас ждать, выключим эту фичу
c3560G(config)# no ip domain-lookup

8. Зададим имя домена
c3560G(config)# ip domain-name my-domain.ru

9. Зададим IP-адрес DNS сервера
c3560G(config)# ip name-server 192.168.1.15

10. Зададим время
если у вас есть доступный NTP сервер
c3560G(config)# ntp server 192.168.1.1 version 2 source vlan 1
c3560G(config)# ntp clock-period 36029056
c3560G(config)# ntp max-associations 1
где 192.168.1.1 — это IP-адрес NTP сервера
а используя «добавку» source vlan вы можете четко задать номер vlan с IP которого будет отправляться NTP запрос если нет NTP сервера, то можно задать время вручную, но для этого придется выйти из режима конфигурирования
c3560G(config)# exit
c3560G# clock set 20:00:50 23 Aug 2008

11. Зададим переход с зимнего на летнее время и наоборот
c3560G# configure terminal
c3560G(config)# clock timezone MSK 3
c3560G(config)# clock summer-time MSD recurring last Sun Mar 2:00 last Sun Oct 2:00

12. Сделаем так, чтобы по команде show logging отображалось нормальное время, а не кол-во дней и т.п.
c3560G(config)# service timestamps log datetime localtime

13. Зададим дефолтовые настройки сразу всем портам на девайсе (у меня catalyst 24 порта + 4 SFP)
c3560G(config)# interface range gi 0/1 — 28
c3560G(config-if-range)# description not_used
c3560G(config-if-range)# shutdown
c3560G(config-if-range)# no cdp enable
c3560G(config-if-range)# switchport nonegotiate
c3560G(config-if-range)# switchport mode access
c3560G(config-if-range)# exit

Рекомендую: все неиспользуемые порты держать выключенными, а ещё лучше создать влан (например 999) и все выключенные порты переместить в него:

c3560G(config)# vlan 999
c3560G(config-vlan)# name unused_ports
c3560G(config-vlan)# shutdown
c3560G(config-vlan)# exit
c3560G(config)# interface range gi 0/1 — 28
c3560G(config-if-range)# description not_used
c3560G(config-if-range)# shutdown
c3560G(config-if-range)# no cdp enable
c3560G(config-if-range)# switchport nonegotiate
c3560G(config-if-range)# switchport access vlan 999
c3560G(config-if-range)# switchport mode access
c3560G(config-if-range)# exit

14. Выключим web-интерфейс, командная строка рулит 😉
c3560G(config)# no ip http server

15. Зададим gateway по умолчанию (допустим это будет 192.168.1.1, т.к. мы присвоили девайсу IP 192.168.1.2/255.255.255.0)
c3560G(config)# ip default-gateway 192.168.1.1

16. Если этот свич будет моддерживать маршрутизацию (будет router`ом), то включим функцию маршрутизации (если это позволяет сам девайс и его прошивка) 3560G прекрасно справляется с функцией маршрутизации

c3560G(config)# ip routing
c3560G(config)# ip classless
c3560G(config)# ip subnet-zero

17. Если вы выолнили пункт 16-ть, то снова необходимо задать gateway по умолчанию, но уже другой командой
c3560G(config)# ip route 0.0.0.0 0.0.0.0 192.168.1.1

18. Настроим access-list для доступа к свичу только с определенных IP-адресов
c3560G(config)# ip access-list standard TELNET
c3560G(config-std-nacl)# permit 192.168.1.1
c3560G(config-std-nacl)# permit 192.168.1.15
c3560G(config-std-nacl)# exit

19. Применим этот access-list
c3560G(config)# line vty 0 15
c3560G(config-line)# access-class TELNET in

20. Зададим timeout неактивности telnet сессии, по истечении указанного времени, если вы в консольке ничего не вводили, то telnet соединение будет автоматически закрываться
c3560G(config-line)# exec-timeout 5 0
c3560G(config-line)# exit

21. Включим SNMP, но только read only (RO) и доступность только с хоста 192.168.1.1
c3560G(config)# snmp-server community RO-MY-COMPANY-NAME RO
c3560G(config)# snmp-server trap-source Vlan1
c3560G(config)# snmp-server source-interface informs Vlan1
c3560G(config)# snmp-server location SWITCH-LOCATION
c3560G(config)# snmp-server contact my-email@my-domain.ru
c3560G(config)# snmp-server host 192.168.1.1 RO-MY-COMPANY-NAME
c3560G(config)# exit

22. Ну и наконец сохраним свои труды

c3560G# copy running-config startup-config
или можно проще и короче :)
c3560G# wri

Море документации по catalyst`ам, и не только по ним, вы можете найти, ессно, на сайте производителя: www.cisco.com

23. Если хочется включить на девайсе ssh, чтобы подключаться к cisco по ssh (если это позволяет установленный IOS), то выполним следущее:
а) Обязательно указываем имя домена (необходимо для генерации ключа) см. пункт 8.
б) cisco(config)# crypto key generate rsa
в) cisco(config)# line vty 0 15
г) cisco(config)# transport preferred none
д) cisco(config)# transport input ssh
е) cisco(config)#transport output ssh


Подробнее по настройке ssh: Configuring Secure Shell on Routers and Switches Running Cisco IOS

вторник, 8 сентября 2015 г.

Cisco 800

Оригинал


Шаблон базовой настройки маршрутизатора Cisco

Итак распаковываем роутер, заливаем последнюю прошивку (для SSH необходим минимум Advanced Security), делаем
#erase startup-config
дабы избавится от преднастроеного мусора и перегружаемся.

Настройка авторизации и доступа по SSH



! включаем шифрование паролей
service password-encryption
! используем новую модель ААА и локальную базу пользователей
aaa new-model
aaa authentication login default local
! заводим пользователя с максимальными правами
username admin privilege 15 secret PASSWORD

! даем имя роутеру
hostname <...>
ip domain-name router.domain
! генерируем ключик для SSH
crypto key generate rsa modulus 1024
! тюнингуем SSH
ip ssh time-out 60
ip ssh authentication-retries 2
ip ssh version 2
! и разрешаем его на удаленной консоли
line vty 0 4
 transport input telnet ssh
 privilege level 15

Настройка роутинга


! включаем ускоренную коммутацию пакетов
ip cef

Настройка времени


! временная зона GMT+2
clock timezone Ukraine 2
clock summer-time Ukraine recurring last Sun Mar 2:00 last Sun Oct 2:00
! обновление системных часов по NTP
ntp update-calendar
! ntp сервера лучше задавать по айпи, ибо если при перегрузке DNS-сервера не доступны то настройки по именам слетают…
ntp server NTP.SERVER.1.IP
ntp server NTP.SERVER.2.IP

Архивирование конфигов


! включаем архивирование всех изменений конфига, скрывая пароли в логах
archive
 log config
  logging enable
  hidekeys

! историю изменения конфига можно посмотреть командой
show archive log config all

Настройка DNS


! включить разрешение имен
ip domain-lookup
! включаем внутренний DNS сервер
ip dns server
! прописываем DNS провайдера
ip name-server XXX.XXX.XXX.XXX
! на всякий случай добавляем несколько публичных DNS серверов
ip name-server 4.2.2.2
ip name-server 208.67.222.222
ip name-server 208.67.220.220

Настройка локальной сети



! обычно порты внутреннего свитча на роутере объединены в Vlan1
interface Vlan1
 description === LAN ===
 ip address 192.168.???.1

! включаем на интерфейсе подсчет пакетов передаваемых клиентам — удобно просматривать кто съедает трафик
 ip accounting output-packets

! посмотреть статистику можно командой
show ip accounting
! очистить
clear ip accounting

Настройка DHCP сервера



! исключаем некоторые адреса из пула
ip dhcp excluded-address 192.168.???.1 192.168.???.99
! и настраиваем пул адресов
ip dhcp pool LAN
   network 192.168.???.0 255.255.255.0
   default-router 192.168.???.1
   dns-server 192.168.???.1

Настройка Internet и Firewall



! настраиваем фильтр входящего трафика (по умолчанию все запрещено)
ip access-list extended FIREWALL
 permit tcp any any eq 22

! включаем инспектирование трафика между локальной сетью и Интернетом
ip inspect name INSPECT_OUT dns
ip inspect name INSPECT_OUT icmp
ip inspect name INSPECT_OUT ntp
ip inspect name INSPECT_OUT tcp router-traffic
ip inspect name INSPECT_OUT udp router-traffic
ip inspect name INSPECT_OUT icmp router-traffic

! настраиваем порт в Интернет и вешаем на него некоторую защиту
interface FastEthernet0/0
 description === Internet ===
 ip address ???.???.???.??? 255.255.255.???
 ip virtual-reassembly
 ip verify unicast reverse-path
 no ip redirects
 no ip directed-broadcast
 no ip proxy-arp
 no cdp enable
 ip inspect INSPECT_OUT out
 ip access-group FIREWALL in

! ну и напоследок шлюз по умолчанию
ip route 0.0.0.0 0.0.0.0 ???.???.???.???

Настройка NAT



! на Интернет интерфейсе
interface FastEthernet0/0
 ip nat outside

! на локальном интерфейсе
interface Vlan1
 ip nat inside

! создаем список IP имеющих доступ к NAT
ip access-list extended NAT
 permit ip host 192.168.???.??? any

! включаем NAT на внешнем интерфейсе
ip nat inside source list NAT interface FastEthernet0/0 overload

! добавляем инспекцию популярных протоколов
ip inspect name INSPECT_OUT http
ip inspect name INSPECT_OUT https
ip inspect name INSPECT_OUT ftp

Отключение ненужных сервисов


no cdp run                -я добавил
no service tcp-small-servers
no service udp-small-servers
no service finger
no service config  ??????????
no service pad
no ip finger
no ip source-route
no ip http server
no ip http secure-server
no ip bootp server