Configuring a Web Proxy Server Example for MS Windows Hosts
c2platform.wincore.win Ansible role. This example demonstrates the setup process for Windows hosts.Categories:
Projects:
c2platform/rws/ansible-gis
,
c2platform.wincore
,
c2platform.core
The RWS Ansible Inventory project
c2platform/rws/ansible-gis
contains the necessary configuration for setting up the web proxy server, which is
hosted at
http://webproxy.c2platform.org:1080
.
This serves as an illustrative example of configuring a web proxy using the
c2platform.wincore.win role.
Project Variable gs_proxy_regedit
Refer to the group_vars/windows/proxy.yml file where a “project variable”
gs_proxy_regedit is defined. For more information on defining project
variables, please see our
guideline
on it.
This variable is defined as a Cartesian product of two other project variables:
gs_proxy_regedit_paths and gs_proxy_regedit_properties, achieved through the
c2platform.core.product filter, an integral component of the c2platform.core
collection. This approach streamlines configuration and prevents redundancy.
---
gs_proxy_regedit_paths:
- path: HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings
- path: HKLM:\Software\Microsoft\Windows\CurrentVersion\Internet Settings
gs_proxy_regedit_properties:
- name: ProxyServer
data: http://webproxy.c2platform.org:1080
type: string
- name: ProxyOverride
data: "*.c2platform.org;localhost;127.0.0.1;{{ ansible_hostname }}"
type: string
- name: ProxyEnable
data: 1 # 1 enable, 0 disable
type: dword
gs_proxy_regedit: >-
{{ gs_proxy_regedit_paths
| c2platform.core.product(gs_proxy_regedit_properties) }}
Of course, you can opt to bypass the use of the gs_proxy_regedit_paths and
gs_proxy_regedit_properties variables and manually specify the Cartesian
product.
Show me
---
gs_proxy_regedit:
- name: ProxyServer
data: http://webproxy.c2platform.org:1080
type: string
path: HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings
- name: ProxyOverride
data: "*.c2platform.org;localhost;127.0.0.1;{{ ansible_hostname }}"
type: string
path: HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings
- name: ProxyEnable
data: 1 # 1 enable, 0 disable
type: dword
path: HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings
- name: ProxyServer
data: http://webproxy.c2platform.org:1080
type: string
path: HKLM:\Software\Microsoft\Windows\CurrentVersion\Internet Settings
- name: ProxyOverride
data: "*.c2platform.org;localhost;127.0.0.1;{{ ansible_hostname }}"
type: string
path: HKLM:\Software\Microsoft\Windows\CurrentVersion\Internet Settings
- name: ProxyEnable
data: 1 # 1 enable, 0 disable
type: dword
path: HKLM:\Software\Microsoft\Windows\CurrentVersion\Internet Settings
Configuration win_resources
In the file group_vars/windows/main.yml a variable win_resources is defined
which contains a group/key 1-windows. This key is a list that includes various
items, one of which is named Configure proxy server.
win_resources:
1-windows:
- name: Configure proxy server
type: win_regedit
resources: "{{ gs_proxy_regedit }}"
The win_resources variable plays a pivotal role in the
c2platform.wincore.win role. For detailed information, please refer to the
role’s README.
Policy Codification
With this configuration, the policy to configure the web proxy is effectively
codified. No specific manual actions are required to set up the web proxy on a
server. Thanks to Ansible, this process is automated seamlessly for any server
within the windows group.
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.