рдХреЗрд╡рд▓ CloudFlare (iptables) рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╡реЗрдм рд╕рд░реНрд╡рд░ рддрдХ рдкрд╣реБрдВрдЪ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдВ


рдЕрд▓рдЧ-рдЕрд▓рдЧ рдХрдВрдкреНрдпреВрдЯрд░ рдмрджрдорд╛рд╢реЛрдВ - рд╣реИрдХрд░реНрд╕ рд╕реЗ рд╕рд╛рдЗрдЯреНрд╕ рдХреЛ рдмрдЪрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрд▓рд╛рдЙрдбрдлреНрд▓реЗрдпрд░ рдПрдХ рдмреЗрд╣рддрд░реАрди рдЪреАрдЬ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЕрдЧрд░ рд╡реЗ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рд╡реЗрдм рд╕рд░реНрд╡рд░ рдХреЗ рдореВрд▓ рдЖрдИрдкреА рдХреЛ рдкрд╣рдЪрд╛рдирддреЗ рд╣реИрдВ, рдЬрд┐рд╕ рдкрд░ рд╡рд╣ рд╕рд╛рдЗрдЯ рд╕реНрдерд┐рдд рд╣реИ, рддреЛ рд╡реЗ рдкреНрд░реЙрдХреНрд╕реА рдХреЛ рджрд░рдХрд┐рдирд╛рд░ рдХрд░рддреЗ рд╣реБрдП рдХрдо рд╕реЗ рдХрдо рдЖрдИрдкреА рджреНрд╡рд╛рд░рд╛ рдЙрд╕ рдкрд░ рд╣рдорд▓рд╛ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВрдЧреЗред рдЖрдк рдЧреИрд░-рдореМрдЬреВрдж рдбреЛрдореЗрди рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╕рдордп, рдЖрдк рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, 444 NGINX рд░реАрд╕реЗрдЯ рднреЗрдЬреЗрдВ, рд▓реЗрдХрд┐рди рд╕реНрдерд┐рддрд┐ рд╕реЗ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд▓реЛрд╣рд╛ рдпрд╣ рд╣реИ: рдХреЗрд╡рд▓ рд╣рдорд╛рд░реЗ рд╕реБрд░рдХреНрд╖рд╛ рдкреНрд░реЙрдХреНрд╕реА рдХреЗ рдЖрдИрдкреА рдкрддреЗ рдХреЗ рд▓рд┐рдП рд╕рд░реНрд╡рд░ рдкрд░ http / https рдЯреНрд░реИрдлрд╝рд┐рдХ рдЦреЛрд▓реЗрдВред

рд╡реИрд╕реЗ, рдпрд╣ рд╡рд┐рдзрд┐ рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреА рд╕рд╛рдЗрдЯреЛрдВ рдЬреИрд╕реЗ рдХреНрд░рдореНрдлреНрд▓рд╛рд░реЗ.рдСрд░реНрдЧ рдХреЛ рдЖрдВрд╢рд┐рдХ рд░реВрдк рд╕реЗ рдмреЗрдХрд╛рд░ рдмрдирд╛ рд╕рдХрддреА рд╣реИ ред рдЦреИрд░, "рдЬрд╛рд╕реВрд╕" рдХреЛ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рдбреЛрдореЗрди рдПрдХ рдмрд╛рд░ рдЗрд╕ рддрд░рд╣ рдХреЗ рдЖрдИрдкреА рджреНрд╡рд╛рд░рд╛ рдкрд╣реБрдВрдЪ рдпреЛрдЧреНрдп рдерд╛ - рдЕрдЧрд░ рдпрд╣ рдЕрднреА рднреА рдЖрдИрдкреА рдореЗрдВ рд▓реЙрдЧ рдЗрди рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реИ, рддреЛ рдЬрд╛рдБрдЪ рдХрд░реЗрдВ: 443 рдпрд╛ рдЖрдИрдкреА: 80 рдмреЗрдХрд╛рд░ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред
рдФрд░ рдпрджрд┐ рдЖрдк рд╕рд░реНрд╡рд░ рдкрд░ рд╕рднреА рдкреЛрд░реНрдЯ рдХреЛ рдмрдВрдж рдХрд░рддреЗ рд╣реИрдВ, рддреЛ ICMP рдХреЛ рдЕрдХреНрд╖рдо рдХрд░реЗрдВ рдФрд░ рдХреЗрд╡рд▓ IPMI / VNC рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХреНрд╕реЗрд╕ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдВ, рдХрд┐рд╕реА рдХреЛ рднреА рдкрддрд╛ рдирд╣реАрдВ рдЪрд▓реЗрдЧрд╛ рдХрд┐ рд╣рдорд╛рд░реЗ IP рдкрд░ рдХреБрдЫ рднреА рд╣реИред

рдЖрдЗрдП рдЗрд╕реЗ iptables рдореЗрдВ рдХрд░реЗрдВред

CloudFlare рдХреЗ рдкрд╛рд╕ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдкрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╡реЗ рд╕рднреА рдЫреЛрдЯреА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд╕рдмрдиреЗрдЯ рдореЗрдВ рд╕рдВрдкреАрдбрд╝рд┐рдд рд╣реИрдВред рдЗрд╕ рддрд░рд╣ рдХреЗ рдЕрдиреБрд░реЛрдз рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддреЗ рд╣реБрдП, рд▓реЛрдЧреЛрдВ рдиреЗ рдПрдХ рд▓реЗрдЦ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд┐рд╕рдореЗрдВ рдХрд╣рд╛ рдЧрдпрд╛ рдерд╛ рдХрд┐ рдЖрдк рдЕрдкрдиреЗ рд╡рд░реНрддрдорд╛рди рд╕рдмрдиреЗрдЯ рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЖрдИрдкрд╛рдЗрдЯрд▓ рдореЗрдВ рдХреНрдпрд╛ рд▓рд┐рдЦ тАЛтАЛрд╕рдХрддреЗ рд╣реИрдВред рдПрдХ рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬреЛ рдЕрд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдФрд░ рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд╣реИ: рдХреНрд▓рд╛рдЙрдбрдлрд╝реЗрдпрд░ рдореЗрдВ рдкрддрд╛ рд╕рдордп рдХреЗ рд╕рд╛рде рдмрджрд▓ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдХрд┐рд╕реА рджрд┐рди рдРрд╕рд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдирдП рдкрддреЗ рдкрд░ рд╕реНрдерд┐рдд рдкреНрд░реЙрдХреНрд╕реА рдЖрдкрдХреЗ рд╕рд░реНрд╡рд░ рдкрд░ рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреА рдЬрд╛рдПрдЧреАред рддрджрдиреБрд╕рд╛рд░, рдЬрд┐рди рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЗ рд╕рддреНрд░ рдЗрди рдирдП рдкрддреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЬрд╛рдПрдВрдЧреЗ, рд╡реЗ рдЖрдкрдХреА рд╕рд╛рдЗрдЯ рддрдХ рдирд╣реАрдВ рдкрд╣реБрдВрдЪ рдкрд╛рдПрдВрдЧреЗред

рд╕реМрднрд╛рдЧреНрдп рд╕реЗ, рд╕рдорд╕реНрдпрд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд╣реИред рддреЛ:

1. рд╣рдо iptables рдореЗрдВ рд╕рднреА HTTP / HTTPS рдЯреНрд░реИрдлрд┐рдХ рдХреЛ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рдХрд░рддреЗ рд╣реИрдВ:

iptables -I INPUT 1 -p tcp -m multiport --dports http,https -j DROP 

2. рдХрд╣реАрдВ рди рдХрд╣реАрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, /root/cloudflare-update.sh рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХреНрд▓рд╛рдЙрдбрдлрд╝реЗрдпрд░-update.sh рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдирд┐рдореНрди рд╕рд╛рдордЧреНрд░рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рд░рдЦреЗрдВ:

 #!/bin/bash while read ip ; do iptables -D INPUT -p tcp -m multiport --dports http,https -s "$ip" -j ACCEPT ; done <<< "$(curl https://www.cloudflare.com/ips-v4)" while read ip ; do iptables -I INPUT -p tcp -m multiport --dports http,https -s "$ip" -j ACCEPT ; done <<< "$(curl https://www.cloudflare.com/ips-v4)" iptables-save > /etc/iptables/rules.v4 

рдпрд╣реА рд╣реИ, рд╣рдо рдкрд╣рд▓реЗ рд╕реЗ рдЬреЛрдбрд╝реЗ рдЧрдП рд╕рднреА рдореМрдЬреВрджрд╛ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпреЛрдВ рдХреЛ рд╣рдЯрд╛рддреЗ рд╣реИрдВ, рдХреНрд▓рд╛рдЙрдбрдлрд╝реЗрдпрд░ рдПрдбреНрд░реЗрд╕ рд╕реВрдЪреА рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╕рднреА рдЪреАрдЬрд╝реЛрдВ рдХреЛ рдлрд┐рд░ рд╕реЗ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВред рдЗрд╕ рддрд░рд╣ рд╣рдо рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдирд┐рдпрдореЛрдВ рд╕реЗ рдмрдЪрддреЗ рд╣реИрдВред рдЕрдВрдд рддрдХ - рдмрдЪрд╛рдУред

3. рд╣рдо рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдмрдирд╛рддреЗ рд╣реИрдВ:

 chmod +x /root/cloudflare-update.sh 

4. рдореБрдХреБрдЯ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, / etc / crontab рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЕрдВрдд рдореЗрдВ) рд╣рдо рд╣рд░ 12 рдорд┐рдирдЯ рдореЗрдВ рдкрддреЛрдВ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдп рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ:

 0 */12 * * * root /root/cloudflare-update.sh &> /dev/null 

рд╡рд╣ рд╕рдм рд╣реИ! рдЕрдм рдЖрдк рдХреЗрд╡рд▓ рдкреНрд░реЙрдХреНрд╕реА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЕрдкрдиреЗ рд╕рд░реНрд╡рд░ рдкрд░ 80 рдФрд░ 443 рдкреЛрд░реНрдЯ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдХрд┐рд╕реА рднреА рд╕рдордп, рд╕рд░реНрд╡рд░ рдкрд░ рдХреЗрд╡рд▓ рдкреНрд░реЙрдХреНрд╕реА рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдкрддреЛрдВ рдХреА рдЕрдиреБрдорддрд┐ рд╣реИред

Source: https://habr.com/ru/post/hi414837/


All Articles