рдХреБрдЫ рд╣рдлрд╝реНрддреЗ рдкрд╣рд▓реЗ, рдореЗрд░реЗ рдЕрдЪреНрдЫреЗ рджреЛрд╕реНрдд (рдПрдХ рд╢рд╣рд░ рдореЗрдВ рдЕрдВрд╢рдХрд╛рд▓рд┐рдХ рд╕рд┐рд╕реНрдЯрдо рдкреНрд░рд╢рд╛рд╕рдХ, рд▓реЗрдХрд┐рди рдПрдХ рдмрд╣реБрдд рдмрдбрд╝реЗ рдкреНрд░рджрд╛рддрд╛ рдирд╣реАрдВ), Roskomnadzor рдХреЗ рд╕рд╣рдпреЛрдЧрд┐рдпреЛрдВ рдиреЗ рдмрд╣рд╛рдирд╛ рдХрд┐рдпрд╛ рдХрд┐ рдЖрдИрдкреА рджреНрд╡рд╛рд░рд╛, рдмреЗрд╢рдХ, рдЕрд╡рд░реБрджреНрдз рд╕рд╛рдЗрдЯреЛрдВ рдХреЛ рдмреНрд▓реЙрдХ рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди URL рдпрд╛ рдбреЛрдореЗрди рджреНрд╡рд╛рд░рд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ, рд▓реЗрдХрд┐рди рд╕рд╛рде рдПрдХ рдирд┐рд╖рд┐рджреНрдз рд╕рдВрд╕рд╛рдзрди рдХреЗ рдЖрдИрдкреА рдкрддреЗ рдХреЛ рдмрджрд▓рдирд╛, рдпрд╣ рдлрд┐рд░ рд╕реЗ рдЦреЛрд▓рдирд╛ рд╢реБрд░реВ рдХрд░ рджреЗрддрд╛ рд╣реИред рдПрдХ рджреЛрд╕реНрдд рдиреЗ рдореЗрд░реЗ рднрд╛рдЧреНрдп рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╢рд┐рдХрд╛рдпрдд рдХреА, рд╕рд╛рде рд╣реА рдпрд╣ рднреА рдХрд╣рд╛ рдХрд┐ рдХреБрдЦреНрдпрд╛рдд рдирдВрдмрд░ 139-рдПрдлрдЬреЗрдб рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд░рдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓ рд░рд╣рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдиреНрд╣реЗрдВ рдкрд╣рд▓реЗ рд╣реА рдПрдХ рдмрд╛рд░ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдЬреБрд░реНрдорд╛рдирд╛ рд▓рдЧрд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдкреНрд░рджрд╛рддрд╛ рдХреЗ рд▓рд┐рдП рдХрдиреЗрдХреНрд╢рди рдпреЛрдЬрдирд╛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИ:
- рд╕рднреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ (рд╕реНрдерд┐рд░ рдЖрдИрдкреА рдЦрд░реАрджрдиреЗ рд╡рд╛рд▓реЛрдВ рдХреЛ рдЫреЛрдбрд╝рдХрд░) NAT рдХреЗ рдкреАрдЫреЗ рд╣реИрдВ;
- NAT рдХреЛ рд╕рд╛рдорд╛рдиреНрдп рдбреЗрдмрд┐рдпрди рд╕реЗ рдХрдо рдкрд░ рд╕рд╛рдорд╛рдиреНрдп рдЕрдЧреНрд░реЗрд╖рдг рдХреЗ рд░реВрдк рдореЗрдВ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ;
- рдкреНрд░рддреНрдпреЗрдХ NAT рдореЗрдВ рдХрдо рд╕реЗ рдХрдо рдирд┐рдпрдорд┐рдд рд░реВрдк рд╕реЗ iptables рд╣реЛрддреЗ рд╣реИрдВ;
- рдЗрд╕рдХреЗ рджреЛ DNS рд╕рд░реНрд╡рд░ рдПрдХ рд╣реА рдбреЗрдмрд┐рдпрди рдФрд░ рдкрд╛рд╡рд░рдбрдПрдирдПрд╕ рдкрд░ рдЪрд▓ рд░рд╣реЗ рд╣реИрдВред
рдХреБрдЫ рд╡рд┐рдЪрд╛рд░ рдХреЗ рдмрд╛рдж, рд╕рд╛рде рд╣реА рдореЗрд░реЗ рдШреБрдЯрдиреЗ рдкрд░ рдкрд░рдд 7 рдХреЛ рдЫрд╛рдирдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, Google рдиреЗ рд╣рдореЗрдВ рдмрддрд╛рдпрд╛ рдХрд┐ рдЗрд╕ рддрд░рд╣ рдХреА рдЪреАрдЬреЗрдВ рдорд╣рдВрдЧреЗ рдЙрдкрдХрд░рдг рдХреА рдкреНрд░рдмрд▓рддрд╛ рд╣реИрдВ, рдФрд░ iptables рдХреЗ рд▓рд┐рдП l7- рдлрд╝рд┐рд▓реНрдЯрд░ рдиреЗ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рд╡рд┐рдХрд╛рд╕ рдХрд░рдирд╛ рдмрдВрдж рдХрд░ рджрд┐рдпрд╛ рд╣реИред рдЙрд╕рдХреЗ рдмрд╛рдж, рд╣рдо рдкрд░рджреЗ рдХреЗ рдкреАрдЫреЗ рдХреА рджрд┐рд╢рд╛ рдореЗрдВ рд╕реЛрдЪрдиреЗ рд▓рдЧреЗред рд╣рдо рдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рдиреЗ рднреА рдФрджреНрдпреЛрдЧрд┐рдХ рдкреИрдорд╛рдиреЗ рдкрд░ рд╡рд┐рджреНрд░реВрдк рдХреЗ рд╕рд╛рде рдХрд╛рдо рдирд╣реАрдВ рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдирдЧреАрдиреЗрдХреНрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдлреА рдкреНрд░рдпреЛрдЧ рдХрд┐рдП рдЧрдП рдереЗ - рдЗрдЧреЛрд░ рд╕рд┐рдпреЛрд╕реЗрд╡ рджреНрд╡рд╛рд░рд╛ рдПрдХ рдмрд╣реБрдд рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рдЙрддреНрдкрд╛рджред
рдХрд╛рд░реНрдп рдХреА рд╕рд╛рдорд╛рдиреНрдп рдпреЛрдЬрдирд╛ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╡рд┐рдХрд╕рд┐рдд рдХреА рдЧрдИ рдереА:
- NAT рдкрд░ iptables рд╕рднреА DNS рдкреНрд░рд╢реНрдиреЛрдВ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЙрдиреНрд╣реЗрдВ рд╣рдорд╛рд░реЗ DNS рд╕рд░реНрд╡рд░ рдкрд░ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ;
- DNS рд╕рд░реНрд╡рд░ рдЬрд╝реЛрди рдХреЛ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рд╕рдВрд╕рд╛рдзрдиреЛрдВ рд╕рд╣рд┐рдд, рдПрдХ рдкреБрдирд░рд╛рд╡рд░реНрддреА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд┐рдП рдмрд┐рдирд╛ рд░рдЦрддрд╛ рд╣реИ;
- рдЗрди рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдПрдХрд▓ рдкрддреЗ рд╡рд╛рд▓реЗ рдпреЗ рдХреНрд╖реЗрддреНрд░ рдирдЧрдиреЗрдХреНрд╕ рдХреЗ рд╕рд╛рде рд╕рд░реНрд╡рд░ рдкрддреЗ рдХреЛ рджрд░реНрд╢рд╛рддреЗ рд╣реИрдВред
рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ nginx рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдФрд░ рдирд┐рд╖рд┐рджреНрдз рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЗ рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреА рд╕реВрдЪреА рдХреЛ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП: Roskomnadzor рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЛ рджрд┐рди рдореЗрдВ 3 рдмрд╛рд░ рдЖрд╡реГрддреНрддрд┐ рдХрд╛ рд╕рдВрдХреЗрдд рдорд┐рд▓рддрд╛ рд╣реИред рдиреБрдХрд╕рд╛рди рднреА рд╕реНрдкрд╖реНрдЯ рд╣реИ: HTTPS рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкрд╣реБрдВрдЪ рдпрд╛ рддреЛ рд╕реАрдорд┐рдд рдпрд╛ рдЕрдиреБрдордд рд╣реЛрдЧреА, рд▓реЗрдХрд┐рди рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдкреНрд░рдорд╛рдг рдкрддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдЕрдиреНрдпрдерд╛ рд╣рдорд╛рд░реЗ рдирдЧреНрдиреЗрдХреНрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдпрд╛рддрд╛рдпрд╛рдд рдПрдиреНрдХреНрд░рд┐рдкреНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдФрд░ рдпрд╣ рдЕрдкрдиреЗ рдореБрдЦреНрдп рдХрд╛рд░реНрдп (рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ) рдХреЛ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реЛрдЧрд╛ред рджреВрд╕рд░реЗ рд╡рд┐рдХрд▓реНрдк рдореЗрдВ, рдЧрд▓рдд рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдХреЗ рд▓рд┐рдП рдХреНрд▓рд╛рдЗрдВрдЯ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХрд╛ рджреБрд░реБрдкрдпреЛрдЧ рдЕрдкрд░рд┐рд╣рд╛рд░реНрдп рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрджрд┐ Google рдбреЛрдореЗрди рдХреА рд╕реВрдЪреА рдХрд╛ рдкрддрд╛ рд▓реЙрдХ рдХреЗ рдЕрдВрддрд░реНрдЧрдд рдЖрддрд╛ рд╣реИ, рдФрд░ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЗ рдкрд╛рд╕ Google рдХреНрд░реЛрдо рд╕реНрдерд╛рдкрд┐рдд рд╣реИ, рддреЛ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛ рдЗрди рд╕рд╛рдЗрдЯреЛрдВ рдХреЛ рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ рдирд╣реАрдВ рдЬрд╛рдиреЗ рджреЗрдЧрд╛ред рд▓реЗрдХрд┐рди рдЕрдиреНрдп рд╕реАрдорд┐рдд рд╡рд┐рдХрд▓реНрдк рд╣рдо рд╕реАрдорд┐рдд рд╕рдордп рдХреЗ рд▓рд┐рдП рдЖрд╡рд┐рд╖реНрдХрд╛рд░ рдирд╣реАрдВ рдХрд░ рд╕рдХреЗред рддреЛ, рд╣рдореЗрдВ рдХреНрдпрд╛ рдорд┐рд▓рд╛:
- рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЬреЛ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рд╕рд╛рдЗрдЯреЛрдВ рдХреА рд╕реВрдЪреА рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рддреА рд╣реИ (рд╕рд╛рджреЗ XML рдЕрдиреБрд░реЛрдз рдХреЗ рдмрд╛рдж SOAP рд╕реЗрд╡рд╛ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд╛рди рдХреА рдЬрд╛рддреА рд╣реИред рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░рджрд╛рддрд╛ рдХреЗ рд▓рд┐рдП рдЕрджреНрд╡рд┐рддреАрдп рдкреНрд░рдорд╛рдг рдкрддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ)ред
- рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЬреЛ рдПрдХ DNS рд╕рд░реНрд╡рд░ рдореЗрдВ рдЬрд╝реЛрди рдХреА рд╕реВрдЪреА рд▓реЛрдб рдХрд░рддреА рд╣реИред
- рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЬреЛ рдирдЧреАрдиреЗрдХреНрд╕ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдмрдирд╛рддреА рд╣реИред
рдореИрдВ рдкрд╣рд▓реА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдирд╣реАрдВ рджреВрдВрдЧрд╛: рдкреНрд░рджрд╛рддрд╛ рд╕реНрд╡рдпрдВ рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдЬрд╛рдирдХрд╛рд░реА рдХреИрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХреА рдЬрд╛рдП, рдФрд░ рдЖрдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЗрд╕рдХрд╛ рдЦреБрд▓рд╛рд╕рд╛ рдХрд░рдиреЗ рдХреА рдЕрдиреБрд╢рдВрд╕рд╛ рдирд╣реАрдВ рдХреА рдЬрд╛рддреА рд╣реИред
рджреВрд╕рд░реА рд╕реНрдХреНрд░рд┐рдкреНрдЯ (SQL, PowerDNS рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП):
USE pdns; create temporary table if not exists dump( domain text ); TRUNCATE TABLE dump; load data local infile '/opt/zapret/dump.xml' into table dump LINES STARTING BY '<domain>' TERMINATED BY '</domain>' (@tmp) SET domain = ExtractValue(@tmp, '/'); create temporary table if not exists locked( domain varchar(767) primary key ); TRUNCATE TABLE locked; INSERT INTO locked SELECT DISTINCT domain FROM dump; create temporary table if not exists locked1( domain varchar(767) primary key ); TRUNCATE TABLE locked1; INSERT INTO locked1 SELECT * FROM locked; DELETE FROM l USING locked l INNER JOIN locked1 l1 ON l.domain=SUBSTR(l1.domain from 5); UPDATE locked SET domain=SUBSTR(LCASE(domain) FROM 5) WHERE LEFT(LCASE(domain), 4) = 'www.'; DELETE FROM locked WHERE domain LIKE '%youtube.com' OR domain LIKE '%google.com' OR domain LIKE '%google.ru'; create temporary table if not exists old_locked( id int, domain varchar(767) primary key ); TRUNCATE TABLE old_locked; INSERT INTO old_locked SELECT DISTINCT d.id, d.name as domain FROM domains d INNER JOIN records r ON d.id=r.domain_id WHERE r.content='1.2.3.4' AND d.name NOT LIKE '%provider.ru'; INSERT INTO domains (name, master, last_check, type, notified_serial, account) SELECT n.domain, NULL, NULL, 'NATIVE', NULL, NULL FROM locked n LEFT JOIN old_locked o ON n.domain=o.domain WHERE o.domain IS NULL; INSERT INTO records (domain_id, name, type, content, ttl, prio, change_date, ordername, auth) SELECT d.id AS domain_id, d.name, 'SOA' as type, 'ns.provider.ru dns.provider.ru 2014022701 28800 7200 604800 86400' as content, 86400 as ttl, 0 as prio, 1393508792 as change_date, '' as ordername, 1 as auth FROM domains d INNER JOIN locked l ON d.name=l.domain LEFT JOIN old_locked o ON d.name=o.domain WHERE o.domain IS NULL; INSERT INTO records (domain_id, name, type, content, ttl, prio, change_date, ordername, auth) SELECT d.id AS domain_id, CONCAT('*.', d.name), 'A' as type, '1.2.3.4' as content, 86400 as ttl, 0 as prio, 1393508820 as change_date, '' as ordername, 1 as auth FROM domains d INNER JOIN locked l ON d.name=l.domain LEFT JOIN old_locked o ON d.name=o.domain WHERE o.domain IS NULL; DELETE FROM r, d USING records r INNER JOIN domains d ON r.domain_id=d.id INNER JOIN old_locked o ON d.name=o.domain LEFT JOIN locked l ON o.domain=l.domain WHERE l.domain IS NULL;
рдЗрд╕ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдкрдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдирд╛ рдпрд╛рдж рд░рдЦрдирд╛ рдЪрд╛рд╣рд┐рдП
рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрд╛рд╡рд░рдбрд╛рдЙрди рдХреЛ рдЬрд╛рдЧрд░реВрдХ рдХрд░рдирд╛ред
рддреАрд╕рд░реА рд╕реНрдХреНрд░рд┐рдкреНрдЯ (рдПрдХ рдЕрд╡рд░реБрджреНрдз рд╕реВрдЪреА рдмрдирд╛рдирд╛):
<?php $xml = simplexml_load_file ('/opt/zapret/dump.xml'); $dirty = array(); $excl = array(); $excl[] = 'youtube.com'; $excl[] = 'google.ru'; $excl[] = 'google.com'; $excl[] = 'badsite.org'; foreach($xml as $node) { if( strlen( (string)$node->domain )>0 ) { $parsed = parse_url((string)$node->url); if( $parsed!=false ) { if( isset($parsed['path']) ) { if( isset($parsed['scheme']) ) $scheme = $parsed['scheme'] . "://"; else $scheme = "http://"; if( isset($parsed['port']) ) { $port = ':' . $parsed['port']; if( $scheme=="https://" ) $port = $port . " ssl"; } else { if( $scheme=="https://" ) $port = ":443 ssl"; else $port = ":80"; } $port = $port . ";"; $domain = (string)$node->domain; if( strcmp(strtolower(substr($domain, 0, 4)), 'www.') == 0 ) $domain = substr($domain, 4); if( isset($parsed['query']) ) $que = $parsed['query']; else $que = ''; $que = str_replace('\\E', '\\E\\\\E\\Q', $que); $que = '\\Q' . $que . '\\E'; if ( strcmp($que, '\\Q\\E')==0 ) $que = ''; $path = $parsed['path']; $path = str_replace('\\E', '\\E\\\\E\\Q', $path); if ( strcmp($path, '/')<>0 ) { $path = '\\Q' . $path . '\\E'; if ( strcmp($path, '\\Q\\E')==0 ) $path = ''; } $keys = preg_grep('/' . $domain . '/', $excl); if( count($keys)<1 ) $dirty[] = array('domain'=>$domain, 'url'=>(string)$node->url, 'loc'=>$path, 'query'=>$que, 'port'=>$port, 'scheme'=>$scheme); } } } }
рддреАрд╕рд░реА рд▓рд┐рдкрд┐ рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рд╣рдореЗрдВ nginx рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдорд┐рд▓рддрд╛ рд╣реИ, рдЬреЛ рдбреЛрдореЗрди рдирд╛рдо рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИред рдЗрд╕ рдШрдЯрдирд╛ рдореЗрдВ рдХрд┐ рдкрддреЗ рдХреЛ рдЕрд╡рд░реБрджреНрдз
рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдкрддрд╛
eais.rkn.gov.ru рдкрд░ рдмрд┐рдирд╛ рд╢рд░реНрдд рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рд┐рдд (301)
рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ - рдирд┐рд╖рд┐рджреНрдз рд╕рд╛рдЗрдЯреЛрдВ рдХреА рд░рдЬрд┐рд╕реНрдЯреНрд░реАред
рдПрдХ рддрд╛рд▓рд╛ рддреАрди рдкреНрд░рдХрд╛рд░ рдХрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ:
1. рд╕рдВрдкреВрд░реНрдг рдбреЛрдореЗрдиред рдРрд╕реА рд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдорд┐рд▓рддреА рд╣реИ:
server { listen 1.2.3.4:80; server_name badsite.org *.badsite.org; location ~* /* { return 301 http://eais.rkn.gov.ru/; }
2. рдбреЛрдореЗрди рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд URLред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╣рдореЗрдВ рдПрдХ рдФрд░ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдорд┐рд▓рддреА рд╣реИ:
server { listen 1.2.3.4:80; server_name badsite.hk *.badsite.hk; location ~* \Q/h/\E* { return 301 http://eais.rkn.gov.ru/; }
3. рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ URL рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢рд┐рд╖реНрдЯ рддрд░реНрдХ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, PHPBB рдореЗрдВ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреЛрд╕реНрдЯ):
server { listen 1.2.3.4:80; server_name badsite.com *.badsite.com; location ~* \Q/forum/viewforum.php\E* { if ($args ~* "\Qf=6\E*") { return 301 http://eais.rkn.gov.ru/; }
рдФрд░, рдЬрд╝рд╛рд╣рд┐рд░ рд╣реИ, рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдореЗрдВ рд╕рдВрдмрдВрдзрд┐рдд рдкрддреЗ рдХреЗ рд╕рднреА рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рдЕрдЧреНрд░реЗрд╖рд┐рдд рдХрд░рдирд╛ рд╣реИ (рдмрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ):
server { listen 1.2.3.4:80 default_server; location / { include /etc/nginx/proxy_params; if ($args = '') { proxy_pass $scheme://$host$uri; } if ($args != '') { proxy_pass $scheme://$host$uri?$args; } } } server { listen 1.2.3.4:443 ssl default_server; location / { include /etc/nginx/proxy_params; if ($args = '') { proxy_pass $scheme://$host$uri; } if ($args != '') { proxy_pass $scheme://$host$uri?$args; } } }
рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рдЬрдирд░реЗрдЯ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдЖрдкрдХреЛ рдХрд╣рдирд╛ рдЪрд╛рд╣рд┐рдП
рдЬреЛ рдирдЧреНрдиреЗрдХреНрд╕ рдХреЛ рдкреБрд░рд╛рдиреЗ рдкреВрд▓реЛрдВ рдХреЛ рдзреАрд░реЗ рд╕реЗ рдмреБрдЭрд╛рдиреЗ рдХреЗ рджреНрд╡рд╛рд░рд╛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рддрд╛ рд╣реИред
рдПрдХ рд╕рдкреНрддрд╛рд╣ рдкрд╣рд▓реЗ nginx рд╡рд╛рд▓реЗ рд╕рд┐рд╕реНрдЯрдо рдХрд╛ рдкрд░реАрдХреНрд╖рдг рд╢рдХреНрддрд┐ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЬрдм youtube.com рдХреА рдПрдХ рдХреНрд▓рд┐рдк рдХреЛ рдЗрд╕ рд╕реВрдЪреА рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рдерд╛ред рд╕реНрдореГрддрд┐ рдХреА рдЦрдкрдд рдореЗрдВ рд╡реГрджреНрдзрд┐ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдХреЛрдИ рджреБрд╖реНрдкреНрд░рднрд╛рд╡ рдирд╣реАрдВ рджреЗрдЦрд╛ рдЧрдпрд╛ред рд╣рдо рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЗ рд╕рд╛рде рд╕рдВрдкрд░реНрдХ рдХреЛ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдореЗрдореЛрд░реА рдЦрдкрдд рдХреЛ рджреВрд░ рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рд░рд╣реЗред рд▓реЗрдХрд┐рди рдпрд╣ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдирд╣реАрдВ рдерд╛, рдмреЗрд╢рдХ: youtube.com рдкрд░ рд╡реАрдбрд┐рдпреЛ рджреЗрдЦрдирд╛ рдФрд░ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдирд╛ рдЖрдо рддреМрд░ рдкрд░ рдХрд╛рдо рдХрд░рддрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдХрдИ рд╡реАрдбрд┐рдпреЛ https рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдиреНрдп рдкреГрд╖реНрдареЛрдВ рдореЗрдВ рдПрдореНрдмреЗрдб рдХрд┐рдП рдЧрдП рдереЗ, рдФрд░ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЙрдиреНрд╣реЗрдВ рдПрдХ рд╕реНрдкреВрдл рдкреНрд░рдорд╛рдг рдкрддреНрд░ рдХреЗ рд╕рд╛рде рдкреНрд░рджрд░реНрд╢рд┐рдд рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рдереЗред рдкреНрд░рджрд╛рддрд╛ рдХреЗ рдиреЗрддреГрддреНрд╡ рдХреЗ рд╡рд┐рд▓рдлреБрд▓ рдирд┐рд░реНрдгрдп рджреНрд╡рд╛рд░рд╛, рдбреЛрдореЗрди google.com, google.ru, youtube.com рдХреЛ рдЕрдкрд╡рд╛рджреЛрдВ рдХреА рд╕реВрдЪреА рдореЗрдВ рдбрд╛рд▓ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдФрд░ рд╕рд╛рдЗрдЯреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЛ "рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд рдЕрдкрд╡рд╛рджреЛрдВ" рдХреА рд╕реВрдЪреА рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛: рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд╡рд░реБрджреНрдз рдХрд░рдиреЗ рдХрд╛ рдПрдХ рд▓рдВрдмрд╛ рдирд┐рд░реНрдгрдп рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдЗрд╕ рд░рдЬрд┐рд╕реНрдЯреНрд░реА рдореЗрдВ рдЕрдирд▓реЛрдб рд╣реИ рдХреЗрд╡рд▓ рджреЛ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд URL рдХреЗ рд╕рд╛рдеред
рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдпрд╣ рд╕рдорд╛рдзрд╛рди рдПрдХ рдЫреЛрдЯреЗ рдкреНрд░рджрд╛рддрд╛ рдХреЗ рд▓рд┐рдП рдХрд╛рдлреА рдХрд╛рд░рдЧрд░ рд╕рд╛рдмрд┐рдд рд╣реЛрддрд╛ рд╣реИ рдЬреЛ рд╣рдорд╛рд░реЗ рд░реВрд╕реА рдХрд╛рдиреВрди рдХреА рдХрдард┐рди рдкрд░рд┐рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рдХрд╛рдо рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИред