По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Сегодня в статье я хочу затронуть вопрос удаленного включения RDP, он же удаленный рабочий стол. Все хоть раз пользовались этой незаменимой фичей, а кто-то использует ее для администрирования на ежедневной основе. По умолчанию, на серверных платформах Windows удаленное управление (WinRM) включено, но функция удаленного рабочего стола выключена, а на десктопной версии обе функции выключены по умолчанию, поэтому, для выполнения описанного ниже, в начале придется включить WinRM на десктопе. Итак, перейдем к методам - далее описаны непосредственно способы включения и отключения RDP (входит и замечательно выходит!) Метод номер один: командная строка Для включения удаленного рабочего стола (RDP) через командную строку, выполните следующее: Запустите командную строку от имени администратора; Выполните следующую команду: Reg add “\computernameHKLMSYSTEMCurentControlSetControlTerminal Server” /v fDenyTSConnections /t REG_DWORD /d /f В свою очередь, чтобы выключить RDP через командную строку, следуйте следующим шагам: Запустите командную строку; Выполните команду: Reg add “\computernameHKLM SYSTEMCurentControlSetControlTerminal Server” /v fDenyTSConnections /t REG_DWORD /d 1 /f Метод номер два: используем PowerShell Для того, чтобы включить RDP через PowerShell, выполните следующие действия: Способ 1: Для включения удаленного рабочего стола: Запустите PowerShell от имени администратора; Запустите следующую команду и используйте метод Invoke-Command: Invoke-Command –Computername “server1”, “Server2” –ScriptBlock {Set-ItemProperty -Path "HKLM:SystemCurrentControlSetControlTerminal Server" -Name "fDenyTSConnections" –Value } Далее введите команду: Invoke-Command –Computername “server1”, “Server2” –ScriptBlock {Enable-NetFirewallRule -DisplayGroup "Remote Desktop"} И, как традиция, обратные шаги: Запускаем PowerShell от имени админа; Вводим команду: Invoke-Command –Computername “server1”, “Server2” –ScriptBlock {Set-ItemProperty -Path "HKLM:SystemCurrentControlSetControlTerminal Server" -Name "fDenyTSConnections" –Value 1} Второй способ включения через PowerShell: Запускаем PowerShell от имени админа и создаем PowerShell сессию с нужным компьютером; Введите команду: Set-ItemProperty -Path "HKLM:SystemCurrentControlSetControlTerminal Server" -Name "fDenyTSConnections" –Value И следующую команду: Enable-NetFirewallRule -DisplayGroup "Remote Desktop" Чтобы выключить: Повторяем первые два шага из предыдущего пункта (про повершелл и сессию); Вводим команду: Set-ItemProperty -Path "HKLM:SystemCurrentControlSetControlTerminal Server" -Name "fDenyTSConnections" –Value 1 Важно: Computername - это имя компьютера, на котором будет включен RDP. Важно: Включение удаленного рабочего стола через командную строку не настроит фаервол с точки зрения использования правильных портов для того, чтобы разрешить RDP подключения. Важно: По умолчанию, только локальные Администраторы и пользователь, который уже вошел в систему, смогут использовать RDP. И в заключение На этом все, надеюсь, было полезно! И помните, если вы даете кому-нибудь доступ по RDP на компьютер в вашей сети, это несет в себе риски - вы должны быть уверены в человеке, который будет заходить по RDP и в том, что доступ дан через защищенный канал связи!
img
Помимо обычной Windows, которая стоит почти на всех домашних компьютерах, есть версия с названием Windows Server, которая используется для серверов. О ней и поговорим. Windows Server - это целая линейка операционных систем, которые Microsoft специально создает для использования на серверах. Windows Server выпускается под этим названием с момента выпуска Windows Server 2003. Однако даже до этого были доступны серверные версии Windows, например, Windows NT 4.0 была доступна как для обычных домашних компьютеров, так и для серверов. Обычно каждый выпуск Windows Server соответствует обычной пользовательской версии Windows. Например, Windows Server 2003 - это серверная версия Windows XP, Windows Server 2016 основана на Windows 10 Anniversary Update, а Windows Server 2019, основана на версии Windows 10 версии 1809. С первого взгляда не поймешь, чем Windows Server отличается от обычных версий Windows - рабочий стол выглядит так же, есть значки и даже есть кнопка Пуск. Поскольку Windows Server и обычная версия имеют общую базу кода, многие вещи можно делать одинаково и там, и там, например, загружать и устанавливать программы, а многие основные функции включены в Windows Server. Однако в Windows Server не получится найти различные свистелки для пользователя - например Microsoft Store или браузер Edge. Скажем так - серверная версия Windows отлично подходит для корпоративных целей, когда компании нужно создать внутренний или внешний сервис, который будет решать конкретную бизнес задачу. Давайте теперь про основные различия: первое, что Windows Server включает в себя, это специальное корпоративное программное обеспечение, которое называется Enterprise Management Software С помощью него можно давать серверу различные роли, например: Роль Active Directory: это готовая роль, в которой сервер, сможет выступать как контроллер домена, и будет выполнять всю проверку подлинности учетных записей пользователей в компании. Роль DHCP и DNS Server: сервер может автоматически назначать IP-адреса всем устройствам в сети, и резолвить адреса. Быть файловым хранилищем: хранить важные файлы и устанавливать порядок доступа к ним. Службы печати: позволяет обеспечивать общий доступ к принтерам и сканнерам. Службы обновления Windows: можно направлять все обновления рабочей станции через этот сервер и настраивать определенные правила их работы. Веб сервер: позволяет поднимать на этом сервере сервисы, которые будут доступны для других пользователей через web-доступ. И это лишь малая часть возможных ролей в Windows Server. Очень часто кампании имеют больше одного сервера, и конечно же разделяют разные роли между ними. Еще одним важным отличие серверной Windows от пользовательской, это меньшее количество аппаратных ограничений. Например, Windows 10 позволяет юзерам устанавливать 2 ТБ оперативной памяти, что кажется и так очень много, но Windows Server предоставляет до 24 ТБ ОЗУ, потому что компаниям нужны большие мощности. Представь сервер, на котором крутятся десятки виртуальных машин! Конечно ему потребуется много оперативной памяти. А еще Windows Server может обрабатывать больше ядер и процессоров, так как имеет 64 сокета. Помнишь мы сказали, что Windows Server выглядит так же как обычный Windows? Да, но серверная Windows может вообще работать без графической оболочки! Windows Server можно установить двух формах - Server Core или Desktop Experience. Если вы отдадите предпочтение Windows Server Core без графического интерфейса, то будете наслаждаться управлением сервером через командную строку PowerShell, или сможете накатить инструмент с графическим интерфейсом, например RSAT (Remote Server Administration Tools) или Windows Admin Center. Не подумайте, это не мазохизм - это позволяет снизить нагрузку на сервер убрав “тяжелый” интерфейс. А еще многим администраторам, зачастую, удобнее работать с конмадной строке. Что выбрать под мой сервак, спросишь ты? Linux или Windows? Зависит от цели: Linux экономичнее и по деньгам, и по ресурсам, но если ты работаешь с инфраструктурой Microsoft, то тут нужно определенно выбирать Windows Server.
img
Что это вообще такое? Docker Compose является инструментом для определения и запуска контейнерных приложений. С Compose вы получаете возможность настраивать службы используя файл YAML. С помощью одной команды Compose вы создаете и запускаете все службы в соответствии с вашей конфигурацией. Установка начинается с создания каталога проекта: $ mkdir composetest $ cd composetest Создайте файл под названием app.py и вставьте в него следующие данные: import time import redis from flask import Flask app = Flask(__name__) cache = redis.Redis(host='redis', port=6379) def get_hit_count(): retries = 5 while True: try: return cache.incr('hits') except redis.exceptions.ConnectionError as exc: if retries == 0: raise exc retries -= 1 time.sleep(0.5) @app.route('/') def hello(): count = get_hit_count() return 'Hello World! I have been seen {} times. '.format(count) В нашем случае название хоста - redis, который использует порт 6379. Создайте файл под названием needs.txt в каталоге вашего проекта и вставьте его в: flask Redis Теперь следует написать код для файла Dockerfile, содержащий все необходимые переменные для среды разработки. В каталоге вашего проекта создайте файл с именем Dockerfile (файл будет определять среду приложения) и вставьте следующее содержимое: FROM python:3.7-alpine WORKDIR /code ENV FLASK_APP app.py ENV FLASK_RUN_HOST 0.0.0.0 RUN apk add --no-cache gcc musl-dev linux-headers COPY requirements.txt requirements.txt RUN pip install -r requirements.txt COPY . . CMD ["flask", "run"] Определение сервисов осуществляется при создании файла с именем docker-compose.yml в каталоге вашего проекта со следующей информацией: version: '3' services: web: build: . ports: - "5000:5000" redis: image: "redis:alpine" На основании содержания файла происходит запуск двух сервисов: Web и Redis, а в дальнейшем вы можете вносить в этот файл различные БД и иную важную информацию. C помощью команды Compose создайте ваше приложение, после чего из каталога проекта запустите приложение, запустив docker-compose. Вот так: $ docker-compose up Creating network "composetest_default" with the default driver Creating composetest_web_1 ... Creating composetest_redis_1 ... Creating composetest_web_1 Creating composetest_redis_1 ... done Attaching to composetest_web_1, composetest_redis_1 web_1 | * Running on http://0.0.0.0:5000/ (Press CTRL+C to quit) redis_1 | 1:C 17 Aug 22:11:10.480 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo redis_1 | 1:C 17 Aug 22:11:10.480 # Redis version=4.0.1, bits=64, commit=00000000, modified=0, pid=1, just started redis_1 | 1:C 17 Aug 22:11:10.480 # Warning: no config file specified, using the default config. In order to specify a config file use redis-server /path/to/redis.conf web_1 | * Restarting with stat redis_1 | 1:M 17 Aug 22:11:10.483 * Running mode=standalone, port=6379. redis_1 | 1:M 17 Aug 22:11:10.483 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128. web_1 | * Debugger is active! redis_1 | 1:M 17 Aug 22:11:10.483 # Server initialized redis_1 | 1:M 17 Aug 22:11:10.483 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled. web_1 | * Debugger PIN: 330-787-903 redis_1 | 1:M 17 Aug 22:11:10.483 * Ready to accept connections Compose извлекает образ Redis, создавая образ для вашего приложения и запускает выбранные службы. В этом случае код копируется в образ во время сборки. Как вам такое? Теперь попробуйте ввести http://localhost:5000/ в браузере, чтобы чекнуть запущенное приложение. Если вы используете Docker для Linux, Docker Desktop для Mac или Docker Desktop для Windows, то теперь веб-приложение должно "смотреть" на порт 5000 на хосте Docker. Введите в своем веб-браузере адрес http://localhost:5000, чтобы увидеть сообщение Hello World. Если не сработает, вы также можете попробовать зайти на http://127.0.0.1:5000. Если вы используете Docker Machine на Mac или Windows, используйте ip MACHINE_VM docker-machine для получения IP-адреса вашего хоста Docker. Затем откройте http://MACHINE_VM_IP:5000 в браузере. Вы должны увидеть сообщение в своем браузере: Hello World! I have been seen 1 times. Переключитесь на другое окно терминала и введите docker image ls, чтобы вывести список локальных образов/контейнеров. Вывод на этом этапе должен показывать redis и web. $ docker image ls REPOSITORY TAG IMAGE ID CREATED SIZE composetest_web latest e2c21aa48cc1 4 minutes ago 93.8MB python 3.4-alpine 84e6077c7ab6 7 days ago 82.5MB redis alpine 9d8fa9aa0e5b 3 weeks ago 27.5MB Важно: Вы можете просматривать запущенные контейнеры с помощью Docker Inspect Tag или ID Запустите docker-compose из каталога вашего проекта во втором терминале, либо нажмите CTRL + C в исходном терминале, где приложение уже запущено и отредактируйте файл Compose. Отредактируйте docker-compose.yml в каталоге вашего проекта для внесения той или иной правки в веб-службе version: '3' services: web: build: . ports: - "5000:5000" volumes: - .:/code environment: FLASK_ENV: development redis: image: "redis:alpine" Новый ключ редактирует каталог проекта на хосте внутри контейнера, что позволяет изменять код без необходимости перестраивать весь образ. Ключ среды устанавливает переменную FLASK_ENV, которая сообщает о запуске в режиме разработки и перезагрузке кода при изменении. Важно: этот режим должен использоваться только при разработке. В каталоге проекта введите docker-compose up, чтобы создать приложение с обновленным файлом Compose, и запустите его. $ docker-compose up Creating network "composetest_default" with the default driver Creating composetest_web_1 ... Creating composetest_redis_1 ... Creating composetest_web_1 Creating composetest_redis_1 ... done Attaching to composetest_web_1, composetest_redis_1 web_1 | * Running on http://0.0.0.0:5000/ (Press CTRL+C to quit) … Поскольку код приложения теперь добавляется в контейнер с помощью тома, вы можете вносить изменения в его код и мгновенно просматривать изменения без необходимости перестраивать образ. Измените сообщение в app.py и сохраните его: Hello from Docker!: return 'Hello from Docker! I have been seen {} times. '.format(count) Обновите результат в вашем браузере (нажмите F5 или Ctrl + F5) . Приветствие должно быть обновлено, а счетчик должен увеличиваться. Вы можете поэкспериментировать с другими командами. Если вы хотите запускать свои службы в фоновом режиме, вы можете сделать следующее: docker-compose up and use docker-compose ps to see what is currently running: $ docker-compose up -d Starting composetest_redis_1... Starting composetest_web_1... $ docker-compose ps Name Command State Ports ------------------------------------------------------------------- composetest_redis_1 /usr/local/bin/run Up composetest_web_1 /bin/sh -c python app.py Up 5000->5000/tcp Команда docker-compose run позволяет вам применять одноразовые команды к вашим сервисов. Например, чтобы увидеть, какие переменные среды доступны для веб-службы: $ docker-compose run web env Выполните команду docker-compose –help, чтобы увидеть весь список доступных команд. Если вы запустили Compose с помощью docker-compose up -d, то нужно будет остановить ваши службы после работы с ними, для этого поможет команда ниже:$ docker-compose stop Если хотите полностью уничтожить контейнер, используйте команду down.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59