lmn-client/roles/transparent-squid/tasks/main.yml
2019-05-27 18:04:01 +03:00

57 lines
2.1 KiB
YAML

- name: install squid package
apt:
name: squid
state: latest
- name: configure squid extra lines
lineinfile:
dest: /etc/squid/squid.conf
line: "{{ item.line }}"
insertafter: "{{ item.insertafter }}"
with_items:
- { line: "http_access allow localnet", insertafter: "#http_access allow localnet" }
- { line: "http_port 3129 intercept", insertafter: "http_port 3128" }
- { line: "maximum_object_size_in_memory 10240 KB", insertafter: "# maximum_object_size_in_memory" }
- { line: "maximum_object_size 512 MB", insertafter: "# maximum_object_size" }
- { line: "cache_dir aufs /var/spool/squid 20000 16 256", insertafter: "#cache_dir ufs /var/spool/squid" }
notify: "restart squid"
- name: configure squid store IDs
blockinfile:
dest: /etc/squid/squid.conf
insertbefore: "TAG: store_miss"
block: |
store_id_program /usr/lib/squid/storeid_file_rewrite /etc/squid/store_id_regex.conf
marker: "# {mark} ANSIBLE MANAGED BLOCK store_id"
notify: "restart squid"
- name: provide store_id_regex.conf
copy:
src: store_id_regex.conf
dest: /etc/squid/store_id_regex.conf
notify: "restart squid"
- name: configure squid as package cache
blockinfile:
dest: /etc/squid/squid.conf
insertbefore: "# Add any of your own refresh_pattern entries above these."
block: |
# refresh pattern for debs and udebs
refresh_pattern deb$ 129600 100% 129600
refresh_pattern udeb$ 129600 100% 129600
refresh_pattern tar.gz$ 129600 100% 129600
refresh_pattern tar.xz$ 129600 100% 129600
refresh_pattern tar.bz2$ 129600 100% 129600
# always refresh Packages and Release files
refresh_pattern \/(Packages|Sources)(|\.bz2|\.gz|\.xz)$ 0 0% 0 refresh-ims
refresh_pattern \/Release(|\.gpg)$ 0 0% 0 refresh-ims
refresh_pattern \/InRelease$ 0 0% 0 refresh-ims
refresh_pattern \/(Translation-.*)(|\.bz2|\.gz|\.xz)$ 0 0% 0
marker: "# {mark} ANSIBLE MANAGED BLOCK refresh_pattern"
notify: "restart squid"
- name: redirect www traffic in shorewall
lineinfile:
dest: /etc/shorewall/rules
line: "REDIRECT loc 3129 tcp www"
notify: "restart shorewall"