Configuration
haproxy:我可以註釋 IP 白名單文件嗎?
在我的“/etc/haproxy/haproxy.cfg”文件中,我指定了一個白名單文件,其中包含允許訪問前端的 IP 地址。
frontend default-frontend <snip> tcp-request connection reject if ! { src -f /etc/haproxy/templates/ip-whitelist.txt } <snip>
“/etc/haproxy/templates/ip-whitelist.txt”的內容如下所示:
192.45.21.89/32 123.34.33.7/32 56.23.12.77/32 78.12.66.3/32
這很好用!直到我想清理文件並刪除不再需要訪問權限的人的 IP。
問題:是否可以在
haproxy
模板文件中添加註釋?我試過這個:
192.45.21.89/32 # Dylan Reeve 123.34.33.7/32 # Jane Doe 56.23.12.77/32 # Priscilla Ahmed 78.12.66.3/32 # Sayed Salas
…返回類似於以下內容的錯誤:
[ALERT] : parsing [/etc/haproxy/haproxy.cfg:123] : 'tcp-request connection reject' : error detected in frontend 'default-frontend' while parsing 'if' condition : '192.45.21.89/32 # Dylan Reeve' is not a valid IPv4 or IPv6 address at line 1 of file '/etc/haproxy/templates/ip-whitelist.txt' [ALERT] : Error(s) found in configuration file : /etc/haproxy/haproxy.cfg [ALERT] : Fatal errors found in configuration.
最壞的情況:我必須在另一個位置保留單獨的列表以匹配 IP 和名稱。
根據HAProxy v1.8 文件,這應該有效:
# Dylan Reeve 192.45.21.89/32 # Jane Doe 123.34.33.7/32 ...
取自 1.8 文件(我也在 1.6 上這樣做過):
“-f”標誌後跟一個文件的名稱,從該文件中的所有行都將作為單獨的值讀取。如果要從多個文件載入模式,甚至可以傳遞多個“-f”參數。**空行以及以尖號 (’#’) 開頭的行將被忽略。**所有前導空格和製表符都將被刪除。如果絕對有必要插入一個以銳利開頭的有效模式,只需在它前面加上一個空格,這樣它就不會被當作註釋。
或者您可以嘗試使用HAProxy 映射,我認為這對您的案例來說完全是多餘的。