|
74 | 74 | icmp_block_inversion:
|
75 | 75 | description:
|
76 | 76 | - Enable/Disable inversion of ICMP blocks for a zone in firewalld.
|
77 |
| - type: str |
| 77 | + - Note that the option type is changed to bool in ansible.posix version 2.0.0 and later. |
| 78 | + type: bool |
78 | 79 | zone:
|
79 | 80 | description:
|
80 | 81 | - The firewalld zone to add/remove to/from.
|
|
152 | 153 | '''
|
153 | 154 |
|
154 | 155 | EXAMPLES = r'''
|
155 |
| -- name: permanently enable https service, also enable it immediately if possible |
| 156 | +- name: Permanently enable https service, also enable it immediately if possible |
156 | 157 | ansible.posix.firewalld:
|
157 | 158 | service: https
|
158 | 159 | state: enabled
|
159 | 160 | permanent: true
|
160 | 161 | immediate: true
|
161 | 162 | offline: true
|
162 | 163 |
|
163 |
| -- name: permit traffic in default zone for https service |
| 164 | +- name: Permit traffic in default zone for https service |
164 | 165 | ansible.posix.firewalld:
|
165 | 166 | service: https
|
166 | 167 | permanent: true
|
167 | 168 | state: enabled
|
168 | 169 |
|
169 |
| -- name: permit ospf traffic |
| 170 | +- name: Permit ospf traffic |
170 | 171 | ansible.posix.firewalld:
|
171 | 172 | protocol: ospf
|
172 | 173 | permanent: true
|
173 | 174 | state: enabled
|
174 | 175 |
|
175 |
| -- name: do not permit traffic in default zone on port 8081/tcp |
| 176 | +- name: Do not permit traffic in default zone on port 8081/tcp |
176 | 177 | ansible.posix.firewalld:
|
177 | 178 | port: 8081/tcp
|
178 | 179 | permanent: true
|
179 | 180 | state: disabled
|
180 | 181 |
|
181 |
| -- ansible.posix.firewalld: |
| 182 | +- name: Permit traffic in default zone on port 161-162/ucp |
| 183 | + ansible.posix.firewalld: |
182 | 184 | port: 161-162/udp
|
183 | 185 | permanent: true
|
184 | 186 | state: enabled
|
185 | 187 |
|
186 |
| -- ansible.posix.firewalld: |
| 188 | +- name: Permit traffic in dmz zone on http service |
| 189 | + ansible.posix.firewalld: |
187 | 190 | zone: dmz
|
188 | 191 | service: http
|
189 | 192 | permanent: true
|
190 | 193 | state: enabled
|
191 | 194 |
|
192 |
| -- ansible.posix.firewalld: |
| 195 | +- name: Enable FTP service with rate limiting using firewalld rich rule |
| 196 | + ansible.posix.firewalld: |
193 | 197 | rich_rule: rule service name="ftp" audit limit value="1/m" accept
|
194 | 198 | permanent: true
|
195 | 199 | state: enabled
|
196 | 200 |
|
197 |
| -- ansible.posix.firewalld: |
| 201 | +- name: Allow traffic from 192.0.2.0/24 in internal zone |
| 202 | + ansible.posix.firewalld: |
198 | 203 | source: 192.0.2.0/24
|
199 | 204 | zone: internal
|
200 | 205 | state: enabled
|
201 | 206 |
|
202 |
| -- ansible.posix.firewalld: |
| 207 | +- name: Assign eth2 interface to trusted zone |
| 208 | + ansible.posix.firewalld: |
203 | 209 | zone: trusted
|
204 | 210 | interface: eth2
|
205 | 211 | permanent: true
|
206 | 212 | state: enabled
|
207 | 213 |
|
208 |
| -- ansible.posix.firewalld: |
| 214 | +- name: Enable forwarding in internal zone |
| 215 | + ansible.posix.firewalld: |
209 | 216 | forward: true
|
210 | 217 | state: enabled
|
211 | 218 | permanent: true
|
212 | 219 | zone: internal
|
213 | 220 |
|
214 |
| -- ansible.posix.firewalld: |
| 221 | +- name: Enable masquerade in dmz zone |
| 222 | + ansible.posix.firewalld: |
215 | 223 | masquerade: true
|
216 | 224 | state: enabled
|
217 | 225 | permanent: true
|
218 | 226 | zone: dmz
|
219 | 227 |
|
220 |
| -- ansible.posix.firewalld: |
| 228 | +- name: Create custom zone if not already present |
| 229 | + ansible.posix.firewalld: |
221 | 230 | zone: custom
|
222 | 231 | state: present
|
223 | 232 | permanent: true
|
224 | 233 |
|
225 |
| -- ansible.posix.firewalld: |
| 234 | +- name: Enable ICMP block inversion in drop zone |
| 235 | + ansible.posix.firewalld: |
226 | 236 | zone: drop
|
227 | 237 | state: enabled
|
228 | 238 | permanent: true
|
229 | 239 | icmp_block_inversion: true
|
230 | 240 |
|
231 |
| -- ansible.posix.firewalld: |
| 241 | +- name: Block ICMP echo requests in drop zone |
| 242 | + ansible.posix.firewalld: |
232 | 243 | zone: drop
|
233 | 244 | state: enabled
|
234 | 245 | permanent: true
|
235 | 246 | icmp_block: echo-request
|
236 | 247 |
|
237 |
| -- ansible.posix.firewalld: |
| 248 | +- name: Set internal zone target to ACCEPT |
| 249 | + ansible.posix.firewalld: |
238 | 250 | zone: internal
|
239 | 251 | state: present
|
240 | 252 | permanent: true
|
|
250 | 262 | '''
|
251 | 263 |
|
252 | 264 | from ansible.module_utils.basic import AnsibleModule
|
253 |
| -from ansible.module_utils.parsing.convert_bool import boolean |
254 | 265 | from ansible_collections.ansible.posix.plugins.module_utils.firewalld import FirewallTransaction, fw_offline
|
255 | 266 |
|
256 | 267 | try:
|
@@ -864,7 +875,7 @@ def main():
|
864 | 875 | module = AnsibleModule(
|
865 | 876 | argument_spec=dict(
|
866 | 877 | icmp_block=dict(type='str'),
|
867 |
| - icmp_block_inversion=dict(type='str'), |
| 878 | + icmp_block_inversion=dict(type='bool'), |
868 | 879 | service=dict(type='str'),
|
869 | 880 | protocol=dict(type='str'),
|
870 | 881 | port=dict(type='str'),
|
@@ -987,16 +998,7 @@ def main():
|
987 | 998 | msgs.append("Changed icmp-block %s to %s" % (icmp_block, desired_state))
|
988 | 999 |
|
989 | 1000 | if icmp_block_inversion is not None:
|
990 |
| - # Type of icmp_block_inversion will be changed to boolean in a future release. |
991 |
| - icmp_block_inversion_status = True |
992 |
| - try: |
993 |
| - icmp_block_inversion_status = boolean(icmp_block_inversion, True) |
994 |
| - except TypeError: |
995 |
| - module.warn('The value of the icmp_block_inversion option is "%s". ' |
996 |
| - 'The type of the option will be changed from string to boolean in a future release. ' |
997 |
| - 'To avoid unexpected behavior, please change the value to boolean.' % icmp_block_inversion) |
998 |
| - expected_state = 'enabled' if (desired_state == 'enabled') == icmp_block_inversion_status else 'disabled' |
999 |
| - |
| 1001 | + expected_state = 'enabled' if (desired_state == 'enabled') == icmp_block_inversion else 'disabled' |
1000 | 1002 | transaction = IcmpBlockInversionTransaction(
|
1001 | 1003 | module,
|
1002 | 1004 | action_args=(),
|
|
0 commit comments