hurricanehrndz.polycom_prosrv
hurricanehrndz.polycom-prosrv
hurricanehrndz.polycom-prosrv is an Ansible role which:
- installs vsftp
- configures vsftp for polycom provisiong
- xml validation of configs
- secures vsftp
- grants acccess to lone ftp user
- creates provisiong directory structure
- downloads UC software for VVX and TRIO phones
In summary, this role configures a vsftp instance for provisioing polycom VVX and TRIO phones. Please feel free to submit pull requests to add aditional features. The current set of features are sufficient for my needs.
Upcoming features
- Logo branding
- FTPS - letsecnrypt
- nginx - logo serving
- RHEL support
Requirements
- Ansible >= 2.4
- vsftpd-role
Installation
Using ansible-galaxy:
ansible-galaxy install hurricanehrndz.polycom-prosrv
Using requirements.yml:
- src: hurricanehrndz.polycom-prosrv
Using git:
git clone https://github.com/hurricanehrndz/ansible-polycom-prosrv.git hurricanehrndz.polycom-prosrv
Role Variables
All variables meant to be overridden are stored in the defaults/main.yml file. A list and short description of these variables can also be found in the table below.
| Name | Types/Values | Description |
|---|---|---|
polycom_vvx_uc_software |
string | Url to latest vvx 'split' firware zip. |
polycom_trio_uc_software |
string | Url to latest trio firmware zip. |
polycom_exchnage_integration |
boolean | Enable Exchange integration |
polycom_exchnage_url |
string | Exchange web services URL for org |
polycom_exchnage_reminder |
boolean | Enable calendar reminders |
polycom_enable_btoe |
boolean | Enable Better Together Over Ethernet feature |
polycom_set_admin_pass |
boolean | Set admin phone password |
polycom_admin_pass |
string | Set admin phone password to value. '456' |
polycom_enable_lync_updates |
boolean | Enable Update from SfB Servers |
polycom_enable_http |
boolean | Enable phone's web interface over https |
polycom_web_port |
interger | HTTPS port web interface listens on |
polycom_ftp_user |
string | Username for accessing provisioning server |
polycom_ftp_name |
string | User identity for acessing provisioning server |
polycom_ftp_pass |
string | user password, hashed and salted. Default is 'polycom456' |
polycom_prov_add_opts |
hash | additional opt for sane defaults on FTP service set by role |
polycom_phone_creds |
hash | SfB Phone credentials for Single-Sign-In, see example |
Dependencies
Example Playbook
- hosts: servers
pre_tasks:
- name: Update repo cache
action: >
{{ ansible_pkg_mgr }} update_cache=yes
tasks:
- name: Setup polycom provisioning
include_role:
name: hurricanehrndz.polycom-prosrv
vars:
# FTP server
polycom_prosrv_addy: "prosrv.contoso.com"
polycom_prosrv_add_opts:
pasv_addr_resolve: YES
polycom_phone_creds:
- polycom_phone_mac: "0004ffffffff"
polycom_phone_user: "roomphone"
polycom_phone_pass: "secret"
polycom_phone_domain: "contoso.com"
- hosts: servers
pre_tasks:
- name: Update repo cache
action: >
{{ ansible_pkg_mgr }} update_cache=yes
tasks:
- name: Setup polycom provisioning
include_role:
name: hurricanehrndz.polycom-prosrv
vars:
# implicit FTPS server
polycom_prosrv_addy: "prosrv.contoso.com"
polycom_prosrv_add_opts:
# certs must exist, create using another role
rsa_cert_file: /etc/letsencrypt/live/prosrv.contoso.com/cert.pem
rsa_private_key_file: /etc/letsencrypt/live/prosrv.contoso.com/privkey.pem
listen_port: 990
pasv_addr_resolve: YES
ssl_enable: YES
implicit_ssl: YES
allow_anon_ssl: NO
force_local_data_ssl: YES
force_local_logins_ssl: YES
ssl_tlsv1: YES
ssl_sslv2: NO
ssl_sslv3: NO
# Polycom need to reuse
require_ssl_reuse: NO
ssl_ciphers: HIGH
polycom_phone_creds:
- polycom_phone_mac: "0004ffffffff"
polycom_phone_user: "roomphone"
polycom_phone_pass: "secret"
polycom_phone_domain: "contoso.com"
License
Author Information
Carlos Hernandez aka HurricaneHrndz
Sources
Install
ansible-galaxy install hurricanehrndz.polycom_prosrvLicense
mit
Downloads
123
Owner
Software Mage/Wizard/Developer @Yelp | Technology fanatic with an unquenchable thirst for knowledge.
