<?xml version="1.0" encoding="utf-8" ?><rss version="2.0" xmlns:tt="http://teletype.in/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:media="http://search.yahoo.com/mrss/"><channel><title>Булат Абзалеев</title><generator>teletype.in</generator><description><![CDATA[Булат Абзалеев]]></description><image><url>https://img3.teletype.in/files/a6/dd/a6ddad1a-e976-41f7-bc74-b019aadc71ed.png</url><title>Булат Абзалеев</title><link>https://teletype.in/@lipid228</link></image><link>https://teletype.in/@lipid228?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=lipid228</link><atom:link rel="self" type="application/rss+xml" href="https://teletype.in/rss/lipid228?offset=0"></atom:link><atom:link rel="next" type="application/rss+xml" href="https://teletype.in/rss/lipid228?offset=10"></atom:link><atom:link rel="search" type="application/opensearchdescription+xml" title="Teletype" href="https://teletype.in/opensearch.xml"></atom:link><pubDate>Wed, 13 May 2026 15:49:13 GMT</pubDate><lastBuildDate>Wed, 13 May 2026 15:49:13 GMT</lastBuildDate><item><guid isPermaLink="true">https://teletype.in/@lipid228/demo</guid><link>https://teletype.in/@lipid228/demo?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=lipid228</link><comments>https://teletype.in/@lipid228/demo?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=lipid228#comments</comments><dc:creator>lipid228</dc:creator><title>bulat</title><pubDate>Sun, 26 Apr 2026 18:06:11 GMT</pubDate><description><![CDATA[МОДУЛЬ 1. ЗАДАНИЕ 1 и 4]]></description><content:encoded><![CDATA[
  <p id="Cw29"><u>МОДУЛЬ 1. ЗАДАНИЕ 1 и 4</u></p>
  <p id="jE5u">1.Назначаем имена и настраиваем конфигурационный файл, перезагружаем сеть</p>
  <h3 id="ISP">ISP</h3>
  <pre id="yl2a">auto ens33
iface ens33 inet dhcp

auto ens36
iface ens36 inet static
    address 172.16.1.1/28

auto ens37
iface ens37 inet static
    address 172.16.2.1/28
</pre>
  <hr />
  <h3 id="HQ-RTR">HQ-RTR</h3>
  <pre id="l8OC">auto ens33
iface ens33 inet static
    address 172.16.1.2/28
    gateway 172.16.1.1

auto ens36
iface ens36 inet manual

auto ens36.100
iface ens36.100 inet static
    address 192.168.0.1/27
    vlan-raw-device ens36

auto ens36.200
iface ens36.200 inet static
    address 192.168.0.33/28
    vlan-raw-device ens36

auto ens36.999
iface ens36.999 inet static
    address 192.168.0.49/29
    vlan-raw-device ens36
</pre>
  <hr />
  <h3 id="BR-RTR">BR-RTR</h3>
  <pre id="9pQk">auto ens33
iface ens33 inet static
    address 172.16.2.2/28
    gateway 172.16.2.1

auto ens36
iface ens36 inet static
    address 192.168.1.1/28
</pre>
  <hr />
  <h3 id="HQ-SRV">HQ-SRV</h3>
  <pre id="dYWn">auto ens33.100
iface ens33.100 inet static
    address 192.168.0.2/27
    gateway 192.168.0.1
    vlan-raw-device ens33
</pre>
  <hr />
  <h3 id="BR-SRV">BR-SRV</h3>
  <pre id="A6h6">auto ens33
iface ens33 inet static
    address 192.168.1.2/28
    gateway 192.168.1.1
</pre>
  <hr />
  <h3 id="HQ-CLI">HQ-CLI</h3>
  <pre id="YKVQ">auto ens33.200
iface ens33.200 inet dhcp
</pre>
  <p id="b9Uy">hostnamectl set-hostname isp.au-team.irpo; exec bash</p>
  <p id="0d2Z">hostnamectl set-hostname hq-rtr.au-team.irpo; exec bash</p>
  <p id="fZWO">hostnamectl set-hostname hq-srv.au-team.irpo; exec bash</p>
  <p id="SieZ">hostnamectl set-hostname hq-cli.au-team.irpo; exec bash</p>
  <p id="x85j">hostnamectl set-hostname br-rtr.au-team.irpo; exec bash</p>
  <p id="0bTk">hostnamectl set-hostname br-srv.au-team.irpo; exec bash</p>
  <p id="v8fe">На isp, hq-rtr, br-rtr в nano /etc/sysctl.conf убираем # в начале строки net. ipv4.ip_forward=1</p>
  <p id="8xoF">sudo sysctl -p</p>
  <p id="E9Qx">на hq: echo &quot;8021q&quot; | sudo tee -a /etc/modules</p>
  <p id="n3OB">domain au-team.irpo<br />search au-team.irpo<br />nameserver <a href="https://vk.com/away.php?to=https%3A%2F%2F192.168.0.2&utf=1" target="_blank">192.168.0.2</a><br />nameserver <a href="https://vk.com/away.php?to=https%3A%2F%2F8.8.8.8&utf=1" target="_blank">8.8.8.8</a></p>
  <p id="hLno"><u>ЗАДАНИЕ 2 и 8</u></p>
  <p id="csBf">ISP и роутеры:</p>
  <p id="UmsO">apt update &amp;&amp; apt install iptables iptables-persistent -y</p>
  <p id="02t3">sudo iptables -t nat -A POSTROUTING -o ens33 -j MASQUERADE</p>
  <p id="OLqW">sudo iptables-save &gt; /etc/iptables/rules.v4</p>
  <p id="dI6T"><u>ЗАДАНИЕ 3</u></p>
  <p id="3fS1">На серверах: sudo useradd sshuser -u 2026 -m -U</p>
  <p id="9Q2z">sudo passwd sshuser</p>
  <p id="sAjT">sudo usermod -aG sudo sshuser</p>
  <p id="tofs">sudo visudo</p>
  <p id="jOCC">sshuser ALL=(ALL) NOPASSWD: ALL</p>
  <p id="5oEH">На роутерах: sudo useradd net_admin -m -U</p>
  <p id="jPTl">sudo passwd net_admin</p>
  <p id="OkDG">sudo usermod -aG sudo net_admin</p>
  <p id="oPQ5">sudo visudo</p>
  <p id="afsY">net_admin ALL=(ALL) NOPASSWD: ALL</p>
  <p id="Oyar"><u>ЗАДАНИЕ 5</u></p>
  <p id="paMq">На серваках: apt install openssh-server -y</p>
  <p id="w7m0">nano /etc/ssh/sshd_config: Port 2026</p>
  <p id="EuGw">AllowUsers sshuser</p>
  <p id="9Qfi">MaxAuthTries 2</p>
  <p id="cVVp">Banner /etc/ssh/banner</p>
  <p id="dSeg">echo &quot;Authorized access only&quot; | sudo tee /etc/ssh/banner</p>
  <p id="xl53">systemctl restart sshd</p>
  <p id="JVMs"><u>ЗАДАНИЕ 6</u></p>
  <p id="jmtk">HQ-RTR nano /etc/modules (добавляем ip_gre)</p>
  <p id="vazW">sudo modprobe ip_gre</p>
  <p id="4kv1">nano /etc/network/interfaces</p>
  <p id="nzDP">auto gre1</p>
  <p id="LrUV">iface gre1 inet tunnel</p>
  <p id="tkNV">address 10.10.10.1</p>
  <p id="t9Nt">netmask 255.255.255.252</p>
  <p id="8UYt">mode gre</p>
  <p id="Pu5B">local 172.16.1.2</p>
  <p id="8xLt">endpoint 172.16.2.2</p>
  <p id="zW3b">ttl 255</p>
  <p id="I2Bm">post-up ip route add 192.168.1.0/28 via 10.10.10.2</p>
  <p id="1ldn">BR-RTR auto gre1</p>
  <p id="HxbL">iface gre1 inet tunnel</p>
  <p id="lBat">address 10.10.10.2</p>
  <p id="HXyn">netmask 255.255.255.252</p>
  <p id="k1th">mode gre</p>
  <p id="pgbt">local 172.16.2.2</p>
  <p id="2gXi">endpoint 172.16.1.2</p>
  <p id="x5Wi">ttl 255</p>
  <p id="wbuK">post-up ip route add 192.168.0.0/27 via 10.10.10.1</p>
  <p id="zNnc">post-up ip route add 192.168.0.32/28 via 10.10.10.1</p>
  <p id="2CfA">systemctl restart networking</p>
  <p id="JlN5"><u>ЗАДАНИЕ 7</u></p>
  <p id="L7eS">apt install frr -y</p>
  <p id="Kpxb">nano /etc/frr/daemons (Меняем ospfd=no на ospfd=yes.)</p>
  <p id="8acY">systemctl restart frr</p>
  <p id="r9Hs">sudo vtysh</p>
  <h3 id="HQ-RTR">HQ-RTR</h3>
  <pre id="bUQv">configure terminal
router ospf
 passive-interface default
 network 192.168.0.0/27 area 0
 network 192.168.0.32/28 area 0
 network 192.168.0.48/29 area 0
 network 10.10.10.0/30 area 0
 area 0 authentication
 exit
interface gre1
 no ip ospf passive
 ip ospf authentication
 ip ospf authentication-key P@ssw0rd
 exit
exit
write
exit
</pre>
  <hr />
  <h3 id="BR-RTR">BR-RTR</h3>
  <pre id="QYin">configure terminal
router ospf
 passive-interface default
 network 192.168.1.0/28 area 0
 network 10.10.10.0/30 area 0
 area 0 authentication
 exit
interface gre1
 no ip ospf passive
 ip ospf authentication
 ip ospf authentication-key P@ssw0rd
 exit
exit
write
exit
</pre>
  <p id="woJj">systemctl restart frr</p>
  <p id="ONoQ"><u>ЗАДАНИЕ 9</u></p>
  <p id="R0oC">HQ-RTR: apt install isc-dhcp-server -y</p>
  <p id="VFqG">nano /etc/dhcp/dhcpd.conf</p>
  <p id="mYP3">Удаляем всё и пишем: subnet 192.168.0.32 netmask 255.255.255.240 {</p>
  <p id="xWNT">range 192.168.0.34 192.168.0.46;</p>
  <p id="ovV6">option domain-name-servers 192.168.0.2;</p>
  <p id="RTUZ">option domain-name &quot;au-team.irpo&quot;;</p>
  <p id="AUfA">option routers 192.168.0.33;</p>
  <p id="GXVC">option broadcast-address 192.168.0.47;</p>
  <p id="whfx">default-lease-time 600;</p>
  <p id="otTM">max-lease-time 7200;</p>
  <p id="ccaP">}</p>
  <p id="9w5f">sudo nano /etc/default/isc-dhcp-server добавляем INTERFACESv4=&quot;ens37.200&quot;</p>
  <p id="N2OZ">sudo dhcpd -t -cf /etc/dhcp/dhcpd.conf (проверка на ошибки)</p>
  <p id="HQBt">sudo systemctl restart isc-dhcp-server</p>
  <p id="uuVH">sudo systemctl enable isc-dhcp-server</p>
  <p id="rguv"><u>ЗАДАНИЕ 10</u></p>
  <p id="HK5F">apt install bind9 -y</p>
  <h3 id="HQ-SRV">HQ-SRV</h3>
  <h3 id="/etc/bind/named.conf.options">/etc/bind/named.conf.options</h3>
  <p id="M7Qm">text</p>
  <pre id="DqTI">options {
    directory &quot;/var/cache/bind&quot;;

    forwarders {
        77.88.8.7;
        77.88.8.3;  
    };
    
    allow-recursion {
        127.0.0.1;
        192.168.0.0/27;
        192.168.0.32/28;
        192.168.0.48/29;
        192.168.1.0/28;
    };

    allow-query {
        127.0.0.1;
        192.168.0.0/27;
        192.168.0.32/28;
        192.168.0.48/29;
        192.168.1.0/28;
    };

    listen-on {
        127.0.0.1;
        192.168.0.2;
    };

    dnssec-validation auto;
    recursion yes;
    listen-on-v6 { none; };
};
</pre>
  <h3 id="/etc/bind/named.conf.local">/etc/bind/named.conf.local</h3>
  <p id="Yssj">text</p>
  <pre id="U5fD">zone &quot;au-team.irpo&quot; {
    type master;
    file &quot;/var/lib/bind/db.au-team.irpo&quot;;
    allow-transfer { 192.168.1.2; };
};

zone &quot;0.168.192.in-addr.arpa&quot; {
    type master;
    file &quot;/var/lib/bind/db.0.168.192&quot;;
};

zone &quot;1.168.192.in-addr.arpa&quot; {
    type master;
    file &quot;/var/lib/bind/db.1.168.192&quot;;
};
</pre>
  <h3 id="HQ-SRV">HQ-SRV</h3>
  <h3 id="/var/lib/bind/db.au-team.irpo">/var/lib/bind/db.au-team.irpo</h3>
  <pre id="KwD4">$TTL    86400
@       IN      SOA     hq-srv.au-team.irpo. root.au-team.irpo. (
                              1         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                          86400 )       ; Negative Cache TTL
;
@       IN      NS      hq-srv.au-team.irpo.
hq-srv  IN      A       192.168.0.2
hq-rtr  IN      A       192.168.0.1
hq-cli  IN      A       192.168.0.34
br-rtr  IN      A       172.16.2.2
br-srv  IN      A       192.168.1.2
docker  IN      A       172.16.1.1  
web     IN      A       172.16.2.1
</pre>
  <h3 id="/var/lib/bind/db.0.168.192">/var/lib/bind/db.0.168.192</h3>
  <pre id="K7VX">$TTL    86400
@       IN      SOA     hq-srv.au-team.irpo. root.au-team.irpo. (
                              2         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                          86400 )       ; Negative Cache TTL
;
@       IN      NS      hq-srv.au-team.irpo.
1       IN      PTR     hq-rtr.au-team.irpo.
2       IN      PTR     hq-srv.au-team.irpo.
34      IN      PTR     hq-cli.au-team.irpo.
</pre>
  <h3 id="/var/lib/bind/db.1.168.192">/var/lib/bind/db.1.168.192</h3>
  <pre id="lTkn">$TTL    86400
@       IN      SOA     hq-srv.au-team.irpo. root.au-team.irpo. (
                              1         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                          86400 )       ; Negative Cache TTL
;
@       IN      NS      hq-srv.au-team.irpo.
1       IN      PTR     br-rtr.au-team.irpo.
2       IN      PTR     br-srv.au-team.irpo.
</pre>
  <p id="Cw5A">sudo named-checkconf</p>
  <p id="N9uU">sudo named-checkzone au-team.irpo /var/lib/bind/db.au-team.irpo</p>
  <p id="92U6">sudo named-checkzone 0.168.192.in-addr.arpa /var/lib/bind/db.0.168.192</p>
  <p id="URuO">sudo named-checkzone 1.168.192.in-addr.arpa /var/lib/bind/db.1.168.192</p>
  <p id="Z8Md">sudo systemctl restart bind9</p>
  <p id="rUyK"><u>ЗАДАНИЕ 11</u></p>
  <p id="JYhn">timedatectl set-timezone Europe/Moscow</p>
  <p id="X4N1">timedatectl</p>
  <p id="EYQg"><u>МОДУЛЬ 2. ЗАДАНИЕ 1</u></p>
  <p id="2wo2">HQ-SRV nano /etc/bind/named.conf.local в зону au-team.irpo добавляем allow-transfer { 192.168.1.2; };</p>
  <p id="R9dx">systemctl restart bind9</p>
  <p id="QGeL">BR-SRV apt install samba krb5-user winbind -y</p>
  <p id="BTV4">/etc/resolv.conf</p>
  <p id="npeL">domain au-team.irpo search au-team.irpo</p>
  <p id="Wuzo">nameserver 192.168.0.2 nameserver 192.168.1.2</p>
  <p id="9pk7">chattr +i /etc/resolv.conf</p>
  <p id="bi8G">nano /etc/krb5.conf</p>
  <p id="6leD">[libdefaults]</p>
  <p id="NX6M">default_realm = AU-TEAM.IRPO</p>
  <p id="5xjs">dns_lookup_realm = false</p>
  <p id="t2iM">dns_lookup_kdc = true</p>
  <p id="xYit">[realms]</p>
  <p id="Whl3">AU-TEAM.IRPO = {</p>
  <p id="KKMg">kdc = br-srv.au-team.irpo</p>
  <p id="w5im">admin_server = br-srv.au-team.irpo</p>
  <p id="MIGy">}</p>
  <p id="l0lV">[domain_realm]</p>
  <p id="vMEw">.au-team.irpo = AU-TEAM.IRPO</p>
  <p id="Cm2g">au-team.irpo = AU-TEAM.IRPO</p>
  <p id="fuf3">sudo mv /etc/samba/smb.conf /etc/samba/smb.conf.bak</p>
  <p id="UcA9">samba-tool domain provision --use-rfc2307 --interactive</p>
  <p id="15BP">systemctl stop smbd nmbd winbind</p>
  <p id="4f73">systemctl enable samba</p>
  <p id="Xsk8">systemctl start samba</p>
  <p id="2BiA">systemctl status samba</p>
  <p id="TsTC">samba-tool domain info 127.0.0.1</p>
  <p id="mU96">samba-tool domain info 192.168.1.2</p>
  <p id="KnNW">samba-tool user add hquser1 P@ssw0rd</p>
  <p id="crOA">samba-tool user add hquser2 P@ssw0rd</p>
  <p id="lG3l">samba-tool user add hquser3 P@ssw0rd</p>
  <p id="lVHv">samba-tool user add hquser4 P@ssw0rd</p>
  <p id="TkQq">samba-tool user add hquser5 P@ssw0rd</p>
  <p id="FeQ6">samba-tool group add hq</p>
  <p id="q5Sa">samba-tool group addmembers hq hquser1,hquser2,hquser3,hquser4,hquser5</p>
  <p id="9kwP">Проверка samba-tool group listmembers hq</p>
  <p id="fUv1">samba-tool user list</p>
  <p id="Jk58">HQ-SRV nano /var/lib/bind/db.au-team.irpo (serial увеличиваем на +1)</p>
  <p id="dI5v">@ IN NS br-srv.au-team.irpo.</p>
  <p id="U2pL">_ldap._tcp IN SRV 0 100 389 br-srv.au-team.irpo.</p>
  <p id="iLX9">_kerberos._tcp IN SRV 0 100 88 br-srv.au-team.irpo.</p>
  <p id="E2Nd">_kerberos._udp IN SRV 0 100 88 br-srv.au-team.irpo.</p>
  <p id="XI43">_kpasswd._tcp IN SRV 0 100 464 br-srv.au-team.irpo.</p>
  <p id="GIv6">_kpasswd._udp IN SRV 0 100 464 br-srv.au-team.irpo.</p>
  <p id="MDfB">named-checkzone au-team.irpo /var/lib/bind/db.au-team.irpo</p>
  <p id="iKAF">systemctl restart bind9</p>
  <p id="HRGQ">HQ-CLI /etc/resolv.conf nameserver 192.168.0.2 nameserver 192.168.1.2</p>
  <p id="qS3I">search au-team.irpo</p>
  <p id="lAmx">chattr +i /etc/resolv.conf</p>
  <p id="YYFV">apt install -y realmd sssd sssd-tools libnss-sss libpam-sss adcli samba-common-bin oddjob oddjob-mkhomedir packagekit</p>
  <p id="k4cB">sudo realm discover au-team.irpo</p>
  <p id="6me7">sudo realm join --user=Administrator au-team.irpo</p>
  <p id="N6Rk">nano /etc/sssd/sssd.conf</p>
  <p id="zy1m">В секцию [domain/au-team.irpo] добавить в конец:</p>
  <p id="nGHF">ad_server = br-srv.au-team.irpo</p>
  <p id="gHp4">ad_backup_server = br-srv.au-team.irpo</p>
  <p id="BO5n">ldap_user_extra_attrs = memberOf</p>
  <p id="QQ3m">systemctl restart sssd</p>
  <p id="K7vu">Проверка id hquser1@au-team.irpo</p>
  <p id="cjgD">nano /etc/sudoers.d/hq</p>
  <p id="Z740">%hq@au-team.irpo ALL=(ALL) NOPASSWD: /usr/bin/cat, /usr/bin/grep, /usr/bin/id</p>
  <p id="Cfi2">chmod 440 /etc/sudoers.d/hq</p>
  <p id="wWNE">visudo -c</p>
  <p id="mTr2">su hquser1@au-team.irpo</p>
  <p id="c3g2">sudo cat /etc/passwd <em># не запрашивает пароль sudo</em></p>
  <p id="TlRK">sudo apt update <em># запрещено</em></p>
  <p id="fvkQ">Проверка samba-tool group listmembers hq</p>
  <p id="BwB4">samba-tool computer list</p>
  <p id="TC69"><u>ЗАДАНИЕ 2</u><br />ДОБАВЛЯЕМ 2 ДИСКА<br />echo &quot;- - -&quot; | sudo tee /sys/class/scsi_host/host*/scan</p>
  <p id="Jxil">apt install mdadm -y</p>
  <p id="68B8">sudo mdadm --create --verbose /dev/md0 -l 0 -n 2 /dev/sdb /dev/sdc</p>
  <p id="mu7Z">sudo mdadm --detail --scan --verbose &gt;&gt; /etc/mdadm.conf</p>
  <p id="9sZT">sudo mkfs.ext4 /dev/md0</p>
  <p id="Qx9N">mkdir /raid</p>
  <p id="ciNX">mount /dev/md0 /raid</p>
  <p id="pnsP">Пишем команду blkid /dev/md0 узнаем UUID</p>
  <p id="L3FS">В /etc/fstab добавляем строку с этим UUID</p>
  <p id="1Zz3">UUID=a1b2c3d4-e5f6-7890-1234-567890abcdef /raid ext4 defaults 0 0</p>
  <p id="fqvd">Проверка ошибок: mount -a</p>
  <p id="ojfk"><u>ЗАДАНИЕ 3</u></p>
  <p id="FQd9">HQ-SRV: apt install nfs-kernel-server -y</p>
  <p id="Ykf9">mkdir -p /raid/nfs</p>
  <p id="ZJ4E">chmod -R 777 /raid/nfs</p>
  <p id="ExQT">nano /etc/exports</p>
  <p id="f5U0">/raid/nfs 192.168.0.32/28(rw,no_root_squash)</p>
  <p id="Mrsl">systemctl enable --now nfs-server</p>
  <p id="ZoKz">exportfs -arv</p>
  <p id="jZrL">HQ-CLI: apt install nfs-common -y</p>
  <p id="uAgb">mkdir -p /mnt/nfs</p>
  <p id="ZmSF">chmod 777 /mnt/nfs</p>
  <p id="La39">nano /etc/fstab</p>
  <p id="4C6m">192.168.0.2:/raid/nfs /mnt/nfs nfs defaults,vers=3,soft 0 0</p>
  <p id="rwZi">systemctl daemon-reload</p>
  <p id="UssX">mount -a</p>
  <p id="SLLx">Проверка: df -h</p>
  <p id="08Ku"><u>ЗАДАНИЕ 4</u></p>
  <p id="9v1G">На всех ВМ кромер HQ-RTR: apt install -y chrony</p>
  <p id="2h06">ISP: nano /etc/chrony/chrony.conf</p>
  <p id="ZOPb">Находим строку и добавляем (то что жирное): pool 2.debian.pool.ntp.org iburst <strong>prefer</strong></p>
  <p id="rggv"><strong>pool ru.pool.ntp.org iburst</strong></p>
  <p id="oJL9">И в конец файла: allow 172.16.2.2</p>
  <p id="5r6v">allow 172.16.1.2</p>
  <p id="aMz8">allow 192.168.0.0/24</p>
  <p id="GdGh">local stratum 5</p>
  <p id="yjDz">systemctl restart chrony</p>
  <p id="VXIA">На других ВМ в этом же файле комментируем (#) строку pool 2.debian.pool.ntp.org iburst</p>
  <p id="GGrQ">И добавляем на HQ-SRV, HQ-CLI server 172.16.1.1 iburst</p>
  <p id="YLQt">На BR-RTR, BR-SRV server 172.16.2.1 iburst</p>
  <p id="Q9Dr">systemctl restart chrony</p>
  <p id="XcHI">Проверка на клиентах: chronyc sources (Должен появиться ^*(но не ^ ?) 172.16.1.1.)</p>
  <p id="bINF">На IPS: chronyc clients должно появиться два IP.</p>
  <p id="GMkH"><u>ЗАДАНИЕ 5</u></p>
  <p id="CL5A">BR-SRV: apt install ansible sshpass -y</p>
  <p id="gR1n">mkdir -p /etc/ansible</p>
  <p id="xA7U">nano /etc/ansible/hosts</p>
  <p id="kZUo">[hq]</p>
  <p id="0Jnj">192.168.0.1 ansible_user=net_admin ansible_password=P@ssw0rd</p>
  <p id="rKMs">192.168.0.2 ansible_user=sshuser ansible_password=P@ssw0rd ansible_port=2026</p>
  <p id="bbcu">192.168.0.34 ansible_user=user ansible_password=root</p>
  <p id="OpaT">[br]</p>
  <p id="30ET">192.168.1.1 ansible_user=net_admin ansible_password=P@ssw0rd</p>
  <p id="vE53">nano /etc/ansible/ansible.cfg</p>
  <p id="eXXP">[defaults]</p>
  <p id="Z8qN">host_key_checking = False</p>
  <p id="UpAh">interpreter_python = auto_silent</p>
  <p id="j5gG">На других, кроме ISP: apt install -y openssh-server &amp;&amp; systemctl enable ssh &amp;&amp; systemctl start ssh</p>
  <p id="kE2X">Проверка: ansible all -m ping</p>
  <p id="0LKr"><u>ЗАДАНИЕ 6</u></p>
  <pre id="Yr8u">docker exec -it db mysql -u root -pP@ssw0rd -e &quot;SHOW DATABASES;&quot;
</pre>
  <p id="w1n4"># Чтобы получать с GitHub файлы добавил на BR-SRV /etc/resov.conf nameserver 8.8.8.8</p>
  <p id="Bypx">BR-SRV: добавляем Additional.iso на ВМ</p>
  <p id="EO34">apt install docker.io docker-compose -y</p>
  <p id="aSw0">systemctl enable --now docker</p>
  <p id="NOg7">mkdir -p /media/cdrom</p>
  <p id="S3KB">mount /dev/sr1 /media/cdrom # или /dev/sr0 — смотри lsblk</p>
  <p id="Cavk">/etc/fstab добавляем /dev/sr1 /media/cdrom iso9660 ro,user,auto 0 0</p>
  <p id="leQ2">docker load &lt; /media/cdrom/docker/site_latest.tar</p>
  <p id="FD7H">docker load &lt; /media/cdrom/docker/mariadb_latest.tar</p>
  <p id="2Nfg">docker image ls</p>
  <p id="Ih3L">Должны быть site:latest и mariadb:latest (или mariadb:10.11).</p>
  <p id="4GUA">Если образ называется mariadb:10.11, создаём тег latest:</p>
  <pre id="3uA1">docker tag mariadb:10.11 mariadb:latest
</pre>
  <p id="6BHC">nano web.yaml</p>
  <p id="BdN6">wget -O web.yaml <a href="https://raw.githubusercontent.com/lipid228/mama/94944851f9cf4145b13194dce7cf625940f7e781/web.yaml" target="_blank">https://raw.githubusercontent.com/lipid228/mama/94944851f9cf4145b13194dce7cf625940f7e781/web.yaml</a></p>
  <pre id="I6Rx">services:
  testapp:
    container_name: testapp
    image: site:latest
    restart: always
    ports:
      - &quot;8080:8000&quot;
    environment:
      DB_HOST: &quot;192.168.1.2&quot;
      DB_PORT: &quot;3306&quot;
      DB_NAME: testdb
      DB_USER: test
      DB_PASS: P@ssw0rd
      # DB_TYPE: maria   # если будет ошибка — удалить
    depends_on:
      - db

  db:
    container_name: db
    image: mariadb:latest
    restart: always
    ports:
      - &quot;3306:3306&quot;
    environment:
      MARIADB_DATABASE: testdb
      MARIADB_USER: test
      MARIADB_PASSWORD: P@ssw0rd
      MARIADB_ROOT_PASSWORD: rootpassword
    volumes:
      - db_data:/var/lib/mysql

volumes:
  db_data:
</pre>
  <p id="RZb2">docker-compose -f web.yaml up -d</p>
  <p id="c5YH">Проверка с HQ-CLI: http://192.168.1.2:8080</p>
  <pre id="ZKnm">docker restart testapp
</pre>
  <p id="JgAU"><u>ЗАДАНИЕ 7</u></p>
  <p id="32Y6">HQ-SRV: apt install apache2 php libapache2-mod-php php-mysql mariadb-server -y</p>
  <p id="cyeE">systemctl enable --now apache2 mariadb</p>
  <p id="mnyb">mysql_secure_installation (пароль root: P@ssw0rd, на все вопросы y)</p>
  <p id="ocQS">blkid /dev/sr1</p>
  <p id="WAVy">mkdir -p /media/iso</p>
  <p id="2pma">nano /etc/fstab</p>
  <p id="jWbY">Добавить: UUID=&quot;1899-12-30-00-00-00-00&quot; /media/iso iso9660 ro,user,auto 0 0</p>
  <p id="qymz">systemctl daemon-reload</p>
  <p id="Qzo6">mysql -u root -p</p>
  <p id="64vq">CREATE DATABASE webdb;</p>
  <p id="H0mE">CREATE USER &#x27;web&#x27;@&#x27;localhost&#x27; IDENTIFIED BY &#x27;P@ssw0rd&#x27;;</p>
  <p id="Upny">GRANT ALL PRIVILEGES ON webdb.* TO &#x27;web&#x27;@&#x27;localhost&#x27;;</p>
  <p id="hkm1">FLUSH PRIVILEGES;</p>
  <p id="PesZ">EXIT;</p>
  <p id="DT80">mysql webdb &lt; /media/iso/web/dump.sql</p>
  <p id="m4XC">cp /media/iso/web/index.php /var/www/html/</p>
  <p id="WZDA">cp /media/iso/web/logo.png /var/www/html/ 2&gt;/dev/null</p>
  <p id="zrTT">cp -r /media/iso/web/images /var/www/html/ 2&gt;/dev/null</p>
  <p id="YiGx">chown -R www-data:www-data /var/www/html/</p>
  <p id="6w4y">chmod -R 755 /var/www/html/</p>
  <p id="o8Hq">nano /var/www/html/index.php</p>
  <p id="6SfR">Заменяем на: $username = &quot;web&quot;;</p>
  <p id="LMyx">$password = &quot;P@ssw0rd&quot;;</p>
  <p id="bbfx">$dbname = &quot;webdb&quot;;</p>
  <p id="vq0d">Удаляем: rm /var/www/html/index.html</p>
  <p id="jfbV">systemctl restart apache2</p>
  <p id="B2s1">Проверка на клиенте: http://192.168.0.2</p>
  <p id="geTr"><u>ЗАДАНИЕ 8(сначала лучше сделать снапшот)</u></p>
  <p id="3c93">HQ-RTR: sudo iptables -t nat -A PREROUTING -p tcp -d 172.16.1.2 --dport 8080 -j DNAT --to-destination 192.168.0.2:80</p>
  <p id="pYKV">sudo iptables -t nat -A POSTROUTING -p tcp -d 192.168.0.2 --dport 80 -j SNAT --to-source 172.16.1.2</p>
  <p id="V54i">sudo iptables -t nat -A PREROUTING -p tcp -d 172.16.1.2 --dport 2026 -j DNAT --to-destination 192.168.0.2:2026</p>
  <p id="PGzX">sudo iptables -t nat -A POSTROUTING -p tcp -d 192.168.0.2 --dport 2026 -j SNAT --to-source 172.16.1.2</p>
  <p id="Vp6b">sudo iptables-save &gt; /etc/iptables/rules.v4</p>
  <p id="hm3Z">BR-RTR: sudo iptables -t nat -A PREROUTING -p tcp -d 172.16.2.2 --dport 8080 -j DNAT --to-destination 192.168.1.2:8080</p>
  <p id="uYaC">sudo iptables -t nat -A POSTROUTING -p tcp -d 192.168.1.2 --dport 8080 -j SNAT --to-source 172.16.2.2</p>
  <p id="kQm1">sudo iptables -t nat -A PREROUTING -p tcp -d 172.16.2.2 --dport 2026 -j DNAT --to-destination 192.168.1.2:2026</p>
  <p id="cgcB">sudo iptables -t nat -A POSTROUTING -p tcp -d 192.168.1.2 --dport 2026 -j SNAT --to-source 172.16.2.2</p>
  <p id="v8WX">sudo iptables-save &gt; /etc/iptables/rules.v4</p>
  <p id="xVIZ"><u>ЗАДАНИЕ 9</u></p>
  <p id="V3Zg">ISP: apt install nginx -y</p>
  <p id="1Vgy">systemctl enable --now nginx</p>
  <p id="4KhG">nano /etc/nginx/sites-available/proxy</p>
  <p id="soaR">server {</p>
  <p id="aI2a">listen 80;</p>
  <p id="BPSr">server_name web.au-team.irpo;</p>
  <p id="Y2gT">location / {</p>
  <p id="xLd4">proxy_pass http://172.16.1.2:8080;</p>
  <p id="dpFf">proxy_set_header Host $host;</p>
  <p id="SF3a">proxy_set_header X-Real-IP $remote_addr;</p>
  <p id="81Ai">}</p>
  <p id="kvzj">}</p>
  <p id="iwPR">server {</p>
  <p id="TgOb">listen 80;</p>
  <p id="Wmok">server_name docker.au-team.irpo;</p>
  <p id="bCyP">location / {</p>
  <p id="SgC5">proxy_pass http://172.16.2.2:8080;</p>
  <p id="9RSd">proxy_set_header Host $host;</p>
  <p id="EDIl">proxy_set_header X-Real-IP $remote_addr;</p>
  <p id="gMgr">}</p>
  <p id="w6TR">}</p>
  <p id="QX7F">ln -s /etc/nginx/sites-available/proxy /etc/nginx/sites-enabled/</p>
  <p id="34eV">rm /etc/nginx/sites-enabled/default</p>
  <p id="n2JQ">sudo nginx -t</p>
  <p id="Gdi8">systemctl restart nginx</p>
  <p id="WXjx">HQ-CLI: nano /etc/hosts</p>
  <p id="efTG">172.16.1.1 web.au-team.irpo</p>
  <p id="99uB">172.16.2.1 docker.au-team.irpo</p>
  <p id="u9Dt">Проверка: http://web.au-team.irpo</p>
  <p id="WbsX">http://docker.au-team.irpo</p>
  <h3 id="ЗАДАНИЕ-10"><u>ЗАДАНИЕ 10</u></h3>
  <h4 id="/var/lib/bind/db.0.168.192">/var/lib/bind/db.0.168.192</h4>
  <pre id="Mkzc">34      IN      PTR     hq-cli.au-team.irpo.
</pre>
  <p id="NuH9">ISP: apt install apache2-utils -y</p>
  <p id="TZC0">sudo htpasswd -c /etc/nginx/.htpasswd WEB</p>
  <p id="rArz">cat /etc/nginx/.htpasswd (Должна быть строка вида WEB:$apr1$...)</p>
  <p id="Ai1b">В sudo nano /etc/nginx/sites-available/proxy добавляем то что жирное</p>
  <p id="oPRO">server {</p>
  <p id="oCv1">listen 80;</p>
  <p id="0YQK">server_name web.au-team.irpo;</p>
  <p id="gij9"><strong> auth_basic &quot;Restricted area&quot;;</strong></p>
  <p id="e4Ms"><strong> auth_basic_user_file /etc/nginx/.htpasswd;</strong></p>
  <p id="iE9j">location / {</p>
  <p id="d1DZ">proxy_pass http://172.16.1.2:8080;</p>
  <p id="nNOY">proxy_set_header Host $host;</p>
  <p id="nVam">proxy_set_header X-Real-IP $remote_addr;</p>
  <p id="9QHm">}</p>
  <p id="VDGt">}</p>
  <p id="rSpK">sudo nginx -t</p>
  <p id="Xf0s">sudo systemctl restart nginx</p>
  <p id="rkoN">HQ-CLI: проверка Открой http://web.au-team.irpo — должно появиться окно авторизации.</p>
  <p id="0hcP">Логин: WEB</p>
  <p id="GYCS">Пароль: P@ssw0rd</p>
  <p id="aIeR"><u>ЗАДАНИЕ 11</u></p>
  <p id="r8IA">HQ-SRV: sudo nano /etc/bind/named.conf.options</p>
  <p id="IR8K">Найди строку:</p>
  <p id="TSZI">dnssec-validation auto;</p>
  <p id="WrqE">и замени на:</p>
  <p id="AQ29">dnssec-validation no;</p>
  <p id="UPkh">sudo systemctl restart bind9</p>
  <p id="0qc4">HQ-CLI: apt install curl -y</p>
  <p id="hEZy">sudo chattr -i /etc/resolv.conf</p>
  <p id="AtVm">В файл /etc/resolv.conf добавляем строки: nameserver 77.88.8.8</p>
  <p id="09c8">nameserver 77.88.8.1</p>
  <p id="rVHB">ping yandex.ru , если пинг есть, то</p>
  <p id="fWdd">curl -s https://repo.yandex.ru/yandex-browser/YANDEX-BROWSER-KEY.GPG | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/yandex-browser.gpg</p>
  <p id="kXXA">echo &quot;deb [arch=amd64] https://repo.yandex.ru/yandex-browser/deb stable main&quot; | sudo tee /etc/apt/sources.list.d/yandex-browser.list</p>
  <p id="pvxU">sudo apt update</p>
  <p id="3ecI">sudo apt install yandex-browser-stable -y</p>
  <p id="4KWW"><u>МОДУЛЬ 3. ЗАДАНИЕ 1</u></p>
  <p id="Csq1">BR-SRV: Сначала переделываем задание 6 модуля 2.</p>
  <p id="JHUa">blkid /dev/sr0</p>
  <p id="ekpL">blkid /dev/sr1</p>
  <p id="DkcU">Вывод: /dev/sr0: BLOCK_SIZE=&quot;2048&quot; UUID=&quot;1899-12-30-00-00-00-00&quot; LABEL=&quot;Additional.iso&quot; TYPE=&quot;iso9660&quot;</p>
  <p id="ZZN6">/dev/sr1: BLOCK_SIZE=&quot;2048&quot; UUID=&quot;2025-01-11-10-58-01-00&quot; LABEL=&quot;Debian 12.9.0 amd64 n&quot; TYPE=&quot;iso9660&quot; PTUUID=&quot;28ebc189&quot; PTTYPE=&quot;dos&quot;</p>
  <p id="B1IR">В /etc/fstab заменяем строки с /dev/sr0 и /dev/sr1 на (главное сверить UUID):</p>
  <p id="PUHR">UUID=&quot;1899-12-30-00-00-00-00&quot; /media/additional iso9660 ro,user,auto 0 0</p>
  <p id="pKPz">UUID=&quot;2025-01-11-10-58-01-00&quot; /media/debian iso9660 ro,user,auto 0 0</p>
  <p id="832d">Потом mkdir -p /media/additional /media/debian</p>
  <p id="Jk8x">mount -a</p>
  <p id="BYM3">В nano /root/import_users.sh вставляем скрипт:</p>
  <pre id="05pC">wget -O import_users.sh https://raw.githubusercontent.com/lipid228/mama/94944851f9cf4145b13194dce7cf625940f7e781/import_users.sh
</pre>
  <p id="wgWE">Пишем chmod +x /root/import_users.sh</p>
  <p id="lsDu">/root/import_users.sh</p>
  <p id="z55A">Проверка на HQ-CLI:</p>
  <p id="YmK8">Берем любого пользователя и пробуем в него войти, например:</p>
  <p id="5OUv">su stuart.york@au-team.irpo</p>
  <p id="khqy"><u>ЗАДАНИЕ 3</u></p>
  <p id="bov6">HQ-RTR: apt install libreswan -y</p>
  <p id="3h5a">nano /etc/ipsec.d/hqrtr.conf</p>
  <p id="WiNK">conn IPsec-HQ-RTR-to-BR-RTR</p>
  <p id="RVgb">auto=start</p>
  <p id="tVBW">type=tunnel</p>
  <p id="Nsg8">authby=secret</p>
  <p id="C18q">left=172.16.1.2</p>
  <p id="lvak">right=172.16.2.2</p>
  <p id="xwUo">leftprotoport=gre</p>
  <p id="skcC">rightprotoport=gre</p>
  <p id="rXKH">pfs=no</p>
  <p id="1g5X">nano /etc/ipsec.d/hqrtr.secrets добавляем</p>
  <p id="Lnnk">172.16.1.2 172.16.2.2 : PSK &quot;P@ssw0rd&quot;</p>
  <p id="bBlU">systemctl enable --now ipsec</p>
  <p id="SRMc">sudo ipsec restart</p>
  <p id="D3tw">BR-RTR: apt install libreswan -y</p>
  <p id="3gx7">nano /etc/ipsec.d/brrtr.conf</p>
  <p id="GmEo">conn IPsec-BR-RTR-to-HQ-RTR</p>
  <p id="NrTa">auto=start</p>
  <p id="kRGv">type=tunnel</p>
  <p id="BsZ4">authby=secret</p>
  <p id="4XfX">left=172.16.2.2</p>
  <p id="calT">right=172.16.1.2</p>
  <p id="nFpH">leftprotoport=gre</p>
  <p id="22Cm">rightprotoport=gre</p>
  <p id="DmKS">pfs=no</p>
  <p id="1KSv">nano /etc/ipsec.d/brrtr.secrets добавляем 172.16.2.2 172.16.1.2 : PSK &quot;P@ssw0rd&quot;</p>
  <p id="YX5x">systemctl enable --now ipsec</p>
  <p id="9lAl">sudo ipsec restart</p>
  <p id="WLRH">Проверка:</p>
  <p id="ZZYj">на hq-rtr команда tcpdump -i ens33 -n esp (если не скачан-скачать)</p>
  <p id="r4le">На br-srv пингуем ping 192.168.0.2</p>
  <p id="onkM">На Роутере должны появиться такие строки:</p>
  <p id="YTRE">20:44:02.835163 IP 172.16.1.2 &gt; 172.16.2.2: ESP(spi=0x46dd7216,seq=0x10), length 144</p>
  <p id="XX9c"><u>ЗАДАНИЕ 5</u></p>
  <p id="OIMA">apt install cups cups-pdf -y</p>
  <p id="4kWd">systemctl enable --now cups</p>
  <p id="iQBs">sudo cupsctl --share-printers --remote-any</p>
  <p id="BzGu">systemctl restart cups</p>
  <p id="sH6w">http://192.168.0.2:631</p>
  <p id="E7gd">lpstat -d</p>
  <p id="s6VF"><u>ЗАДАНИЕ 6</u></p>
  <p id="UXLb"><strong>HQ-SRV:</strong> apt install rsyslog -y</p>
  <p id="2Nej">nano /etc/rsyslog.conf</p>
  <p id="7s0I">Расскомментировать module(load=&quot;imtcp&quot;)</p>
  <p id="Mk6x">input(type=&quot;imtcp&quot; port=&quot;514&quot;)</p>
  <p id="u1jU">Закоментировать #module(load=&quot;imuxsock&quot;)</p>
  <p id="x7SQ">#module(load=&quot;imklog&quot;)</p>
  <p id="sErr">#module(load=&quot;immark&quot;)</p>
  <p id="mzJu">В конец файла $template RemoteLogs, &quot;/opt/%HOSTNAME%/rsyslog.log&quot;</p>
  <p id="QoQS">*.* ?RemoteLogs</p>
  <p id="1t1M">&amp; stop</p>
  <p id="nAiW">systemctl enable --now rsyslog</p>
  <p id="ps2I">systemctl restart rsyslog</p>
  <p id="ccmm"><strong>HQ-RTR, BR-RTR, BR-SRV </strong>apt install rsyslog -y</p>
  <p id="Ipxr">nano /etc/rsyslog.conf</p>
  <p id="cxZU">Раскомментировать module(load=&quot;imuxsock&quot;)</p>
  <p id="8aia">module(load=&quot;imklog&quot;)</p>
  <p id="dAk9">module(load=&quot;immark&quot;)</p>
  <p id="O5zT">*.warning @@192.168.0.2:514</p>
  <p id="CvDX">systemctl enable --now rsyslog</p>
  <p id="ixnr">systemctl restart rsyslog</p>
  <p id="NirO">На клиенте: logger -p user.info &quot;Test info message&quot;</p>
  <p id="7Krr">logger -p user.warning &quot;Test warning message&quot;</p>
  <p id="5cR3">logger -p user.error &quot;Test error message&quot;</p>
  <p id="4h8Z">HQ-SRV: cat /opt/hq-rtr/rsyslog.log</p>
  <p id="KemE">cat /opt/br-rtr/rsyslog.log</p>
  <p id="0rAB">cat /opt/br-srv/rsyslog.log</p>
  <p id="uINs"><u>ЗАДАНИЕ 7</u></p>
  <p id="6h7n">HQ-SRV: apt update &amp;&amp; apt install prometheus -y</p>
  <p id="oxhT">systemctl enable --now prometheus</p>
  <p id="Y6JI">http://192.168.0.2:9090</p>
  <p id="gDlt">HQ-SRV: apt install prometheus-node-exporter -y</p>
  <p id="FNqu">systemctl enable --now prometheus-node-exporte</p>
  <p id="i3bE">http://192.168.0.2:9100/metrics</p>
  <p id="8Ltu">BR-SRV: apt update &amp;&amp; apt install prometheus-node-exporter -y</p>
  <p id="W4cR">systemctl enable --now prometheus-node-exporter</p>
  <p id="zd36">HQ-SRV: nano /etc/prometheus/prometheus.yml</p>
  <pre id="1ZAH">  - job_name: &#x27;HQ-SRV&#x27;
    static_configs:
      - targets: [&#x27;192.168.0.2:9100&#x27;]

  - job_name: &#x27;BR-SRV&#x27;
    static_configs:
      - targets: [&#x27;192.168.1.2:9100&#x27;]
</pre>
  <p id="X83i">systemctl restart prometheus</p>
  <p id="tcC5"><a href="http://192.168.0.2:9090/" target="_blank">http://192.168.0.2:9090</a> (таргеты)</p>
  <p id="7NRH">wget https://dl.grafana.com/oss/release/grafana_10.2.2_amd64.deb</p>
  <p id="iDtS">export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin</p>
  <p id="WmEE">dpkg -i grafana_10.2.2_amd64.deb</p>
  <p id="pOyR">apt -f install -y</p>
  <p id="lPc5">systemctl enable --now grafana-server</p>
  <p id="6JL0">systemctl status grafana-server</p>
  <p id="Pk53"><a href="http://192.168.0.2:3000/" target="_blank">http://192.168.0.2:3000</a></p>
  <p id="zEVc">https://grafana.com/grafana/dashboards/1860-node-exporter-full/?tab=revisions</p>
  <p id="NfF0"><strong>Настройка Grafana</strong></p>
  <p id="N10Q">1. Войти: admin / admin → сменить на admin / P@ssw0rd</p>
  <p id="xJd8">2. <strong>Add data source</strong> → Prometheus → URL: http://192.168.0.2:9090 → Save &amp; Test</p>
  <p id="5idM">3. <strong>Import dashboard</strong> → ID: <strong>1860</strong> → Select Prometheus → Import</p>
  <p id="4Cmg">echo &quot;192.168.0.2 mon.au-team.irpo&quot; &gt;&gt; /etc/hosts</p>
  <p id="PND5"><a href="http://mon.au-team.irpo:3000/" target="_blank">http://mon.au-team.irpo:3000</a> (дальше интуитивно по сайту я у мамы сисадмин )</p>
  <p id="ZGVf"><strong>Выбор программного обеспечения</strong></p>
  <ul id="Mtv1">
    <li id="MJiO"><strong>Prometheus</strong> — система сбора и хранения метрик. Выбрана за популярность, гибкость и интеграцию с Grafana.</li>
    <li id="SKhK"><strong>Node Exporter</strong> — экспортёр системных метрик (CPU, память, диск). Установлен на каждом сервере.</li>
    <li id="dS1A"><strong>Grafana</strong> — система визуализации. Выбрана за удобные дашборды и поддержку Prometheus.</li>
  </ul>
  <p id="c2ts"><strong>Основные параметры</strong></p>
  <ul id="PsHN">
    <li id="8AUz"><strong>Prometheus</strong> — порт <strong>9090</strong></li>
    <li id="J5Yi"><strong>Node Exporter</strong> — порт <strong>9100</strong> на каждом сервере</li>
    <li id="pj7Z"><strong>Grafana</strong> — порт <strong>3000</strong></li>
  </ul>
  <p id="sbH9"><strong>Доступ</strong></p>
  <ul id="oTU8">
    <li id="ahKf">Веб-интерфейс Grafana: http://mon.au-team.irpo:3000</li>
    <li id="x3YE">Логин: admin</li>
    <li id="ik35">Пароль: P@ssw0rd</li>
  </ul>
  <p id="3mnD"><u>ЗАДАНИЕ 8</u></p>
  <p id="xaIT">BR-SRV: cp /mnt/playbook/get_hostname_address.yml /etc/ansible/</p>
  <p id="1P4X">chmod u+rwx /etc/ansible/get_hostname_address.yml</p>
  <p id="JMAR">nano /etc/ansible/get_hostname_address.yml</p>
  <pre id="3vKd">- name: Инвентаризация
  hosts: HQ-SRV, HQ-CLI
  tasks:
    - name: получение данных с хоста
      delegate_to: localhost
      copy:
        dest: /etc/ansible/PC-INFO/{{ ansible_hostname }}.yml
        content: |
          Hostname: {{ ansible_hostname }}
          IP_Address: {{ ansible_default_ipv4.address }}
</pre>
  <p id="QP6h">nano /etc/ansible/hosts</p>
  <p id="tDpt">[hq]</p>
  <p id="dC8i">HQ-RTR ansible_host=192.168.0.1 ansible_user=net_admin ansible_password=P@ssw0rd</p>
  <p id="7Mw7">HQ-SRV ansible_host=192.168.0.2 ansible_user=sshuser ansible_password=P@ssw0rd ansible_port=2026</p>
  <p id="qExq">HQ-CLI ansible_host=192.168.0.34 ansible_user=user ansible_password=root</p>
  <p id="bEnP">[br]</p>
  <p id="pZON">BR-RTR ansible_host=192.168.1.1 ansible_user=net_admin ansible_password=P@ssw0rd</p>
  <p id="JrIk">mkdir /etc/ansible/PC-INFO</p>
  <p id="OUrt">cd /etc/ansible</p>
  <p id="rT24">ansible-playbook get_hostname_address.yml</p>
  <p id="tLgg"><u>ЗАДАНИЕ 9</u></p>
  <p id="oyph">HQ-SRV:nano /etc/rsyslog.conf</p>
  <p id="elYK">module(load=&quot;imjournal&quot; StateFile=&quot;imjournal.state&quot; RateLimit.Interval=&quot;0&quot; RateLimit.Burst=&quot;0&quot;)</p>
  <p id="aL9d">/etc/ssh/sshd_config добавляем LogLevel VERBOSE</p>
  <p id="N5Vv">apt install fail2ban -y</p>
  <p id="QOHw">nano /etc/fail2ban/jail.local</p>
  <p id="5OiL">[sshd]</p>
  <p id="l88o">enabled = true</p>
  <p id="eQNR">filter = sshd</p>
  <p id="29Aj">action = iptables[name=SSH, port=2026, protocol=tcp]</p>
  <p id="uqkM">logpath = /var/log/auth.log</p>
  <p id="I0Nw">findtime = 300</p>
  <p id="yOIr">maxretry = 3</p>
  <p id="5Wft">bantime = 60</p>
  <p id="KR44">systemctl enable --now fail2ban</p>
  <p id="ZTlx">systemctl restart fail2ban</p>
  <p id="hlOK">systemctl status fail2ban</p>
  <p id="YZny">fail2ban-client status sshd</p>
  <p id="cdzM"><u>ЗАДАНИЕ 2</u></p>
  <p id="xs0f">ISP: sudo apt install openssh-server -y</p>
  <p id="bQK8">sudo systemctl enable --now ssh</p>
  <p id="4mv6">на всякий:</p>
  <p id="jZ1i">sudo iptables -I INPUT -p tcp --dport 22 -j ACCEPT</p>
  <p id="P603">sudo iptables-save &gt; /etc/iptables/rules.v4</p>
  <p id="3YWA">HQ-SRV: cd ~</p>
  <p id="JeZW">openssl req -newkey rsa:4096 -nodes -keyout ca.key -x509 -days 30 -out ca.crt</p>
  <p id="2Q4q">Country Name: RU</p>
  <p id="Hc5O">State: Tatarstan</p>
  <p id="lgXq">Locality: Kazan</p>
  <p id="WqLc">Organization: AU-Team</p>
  <p id="TC6c">Organizational Unit: IRPO</p>
  <p id="nfJw">Common Name: AU-Team CA</p>
  <p id="doDp">openssl genrsa -out web.key 4096</p>
  <p id="riXO">openssl req -key web.key -new -out web.csr</p>
  <p id="j8ZN">Country Name: RU</p>
  <p id="H86u">State: Tatarstan</p>
  <p id="JqZS">Locality: Kazan</p>
  <p id="Zdv5">Organization: AU-Team</p>
  <p id="hafc">Organizational Unit: IRPO</p>
  <p id="LIdK">Common Name: *.au-team.irpo</p>
  <p id="zt2M">Email: (Enter)</p>
  <p id="rufC">A challenge password: (Enter)</p>
  <p id="H0bC">Nano openssl.cnf</p>
  <p id="30Og">[req]</p>
  <p id="nrAY">req_extensions = req_ext</p>
  <p id="6iBQ">[req_ext]</p>
  <p id="RZQj">subjectAltName = DNS:web.au-team.irpo, DNS:docker.au-team.irpo</p>
  <p id="YSr8">extendedKeyUsage = serverAuth</p>
  <p id="i9GL">keyUsage = digitalSignature</p>
  <p id="cXzJ">openssl x509 -req -in web.csr -CA ca.crt -CAkey ca.key -CAcreateserial \</p>
  <p id="7HLK">-out web.crt -days 30 -sha256 -extfile openssl.cnf -extensions req_ext</p>
  <p id="KCv2">ls -l web.*</p>
  <p id="NIDo">scp web.crt web.key user@172.16.1.1:/home/user/</p>
  <p id="JkqA">ssh user@172.16.1.1</p>
  <p id="xro2">sudo mv /home/user/web.crt /etc/nginx/</p>
  <p id="mthn">sudo mv /home/user/web.key /etc/nginx/</p>
  <p id="5Xd7">sudo nano /etc/nginx/sites-available/proxy</p>
  <pre id="GQWh">server {
    listen 80;
    server_name web.au-team.irpo;
    return 301 https://$host$request_uri;
}

server {
    listen 80;
    server_name docker.au-team.irpo;
    return 301 https://$host$request_uri;
}

server {
    listen 443 ssl;
    server_name web.au-team.irpo;

    ssl_certificate /etc/nginx/web.crt;
    ssl_certificate_key /etc/nginx/web.key;

    auth_basic &quot;Restricted area&quot;;
    auth_basic_user_file /etc/nginx/.htpasswd;

    location / {
        proxy_pass http://172.16.1.2:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

server {
    listen 443 ssl;
    server_name docker.au-team.irpo;

    ssl_certificate /etc/nginx/web.crt;
    ssl_certificate_key /etc/nginx/web.key;

    location / {
        proxy_pass http://172.16.2.2:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}
</pre>
  <p id="qjFv">sudo nginx -t</p>
  <p id="dm0L">sudo systemctl restart nginx</p>
  <p id="sf1o">HQ-SRV: scp ca.crt user@192.168.0.34:/home/user/</p>
  <p id="0luR">ssh user@192.168.0.34 -p 2026</p>
  <p id="p56P">sudo cp /home/user/ca.crt /usr/local/share/ca-certificates/</p>
  <p id="3I0y">sudo update-ca-certificates</p>
  <p id="ysnd">trust list | grep &quot;AU-Team&quot;</p>
  <p id="H3aU">Делаем импорт в Яндексе.Готово.</p>
  <p id="srD2">Задание 4. Межсетевой экран на HQ-RTR и BR-RTR</p>
  <p id="wFOj">Требования:</p>
  <p id="tH0m">Разрешить из интернета (ISP): HTTP, HTTPS, DNS, NTP, ICMP</p>
  <p id="gcME">Всё остальное — DROP</p>
  <p id="sGvz">Где выполняем</p>
  <p id="piJ6">Роутер Интерфейс в сторону ISP</p>
  <p id="uyzc">HQ-RTR ens33 (IP 172.16.1.2)</p>
  <p id="kYJR">BR-RTR ens33 (IP 172.16.2.2)</p>
  <p id="fMrW">1. Базовая политика</p>
  <p id="CmBQ">Сначала запрещаем весь FORWARD по умолчанию, но разрешаем уже установленные соединения.</p>
  <p id="4Nfk">На HQ-RTR и BR-RTR (команды одинаковые)</p>
  <p id="McQk">bash</p>
  <p id="73Sn"># Политика по умолчанию — DROP для FORWARD</p>
  <p id="QY4Z">sudo iptables -P FORWARD DROP</p>
  <p id="03Lv"># Разрешаем уже установленные соединения (чтобы не рвать ответы)</p>
  <p id="DOHA">sudo iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT</p>
  <p id="oEzE">2. Разрешаем нужные протоколы</p>
  <p id="FUuL">Разрешаем новые соединения с интерфейса ens33 (со стороны ISP) на указанные порты.</p>
  <p id="G5Ij">HTTP (80) и HTTPS (443)</p>
  <p id="C7Y6">bash</p>
  <p id="2flx">sudo iptables -A FORWARD -i ens33 -p tcp -m multiport --dports 80,443 -m state --state NEW -j ACCEPT</p>
  <p id="SY2G">DNS (53, TCP и UDP)</p>
  <p id="AKs1">bash</p>
  <p id="lq1v">sudo iptables -A FORWARD -i ens33 -p udp --dport 53 -m state --state NEW -j ACCEPT</p>
  <p id="nVOq">sudo iptables -A FORWARD -i ens33 -p tcp --dport 53 -m state --state NEW -j ACCEPT</p>
  <p id="WiIV">NTP (123, UDP)</p>
  <p id="aXF1">bash</p>
  <p id="HwbI">sudo iptables -A FORWARD -i ens33 -p udp --dport 123 -m state --state NEW -j ACCEPT</p>
  <p id="xpzl">ICMP (ping)</p>
  <p id="8YFr">bash</p>
  <p id="BdzQ">sudo iptables -A FORWARD -i ens33 -p icmp --icmp-type echo-request -m state --state NEW -j ACCEPT</p>
  <p id="R1Es">3. (Опционально) SSH для управления</p>
  <p id="a7KW">Если нужно подключаться к роутеру извне — можно разрешить SSH. В задании не требуется, но для удобства можно добавить.</p>
  <p id="4QVR">bash</p>
  <p id="bg2k">sudo iptables -A FORWARD -i ens33 -p tcp --dport 22 -m state --state NEW -j ACCEPT</p>
  <p id="K9eB">4. Сохранение правил</p>
  <p id="DOjq">bash</p>
  <p id="7mz7">sudo iptables-save &gt; /etc/iptables/rules.v4</p>
  <p id="uEzb">5. Проверка</p>
  <p id="bb0w">Посмотреть все правила FORWARD:</p>
  <p id="nhtz">bash</p>
  <p id="391W">sudo iptables -L FORWARD -n -v</p>
  <p id="Jdo3">Должно быть примерно так (порядок может отличаться):</p>
  <p id="xXRU">text</p>
  <p id="zyav">Chain FORWARD (policy DROP)</p>
  <p id="Vyz7">target prot opt source destination</p>
  <p id="Y1Lw">ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED</p>
  <p id="HQnt">ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 multiport dports 80,443 state NEW</p>
  <p id="kNLG">ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 dpt:53 state NEW</p>
  <p id="evhy">ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 dpt:53 state NEW</p>
  <p id="G7eh">ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 dpt:123 state NEW</p>
  <p id="oh47">ACCEPT icmp -- 0.0.0.0/0 0.0.0.0/0 icmptype 8 state NEW</p>
  <p id="5KnX">6. Тестирование</p>
  <p id="7Bcy">С любой машины извне (например, с ISP или HQ-CLI) проверь:</p>
  <p id="lpRU">bash</p>
  <p id="8iBQ"># Должно работать</p>
  <p id="oSet">ping 172.16.1.2</p>
  <p id="3NfM">curl http://172.16.1.2:8080</p>
  <p id="uRK7">curl https://172.16.1.2:443 # если HTTPS настроен</p>
  <p id="pLz8">nslookup yandex.ru 172.16.1.2 # DNS</p>
  <p id="X3nz"># Не должно работать (например, telnet на 23 порт)</p>
  <p id="PhdZ">telnet 172.16.1.2 23 # зависнет или сразу отказ</p>
  <p id="l7KI">На всякий: </p>
  <p id="Zexo">#!/bin/bash<br /><br />FILE=&quot;/media/additional/Users.csv&quot;<br /><br />while IFS=&#x27;;&#x27; read -r firstname lastname role phone ou street zip city country password; do<br />    samba-tool user add &quot;$firstname.$lastname&quot; &quot;$(echo &quot;$password&quot; | tr -d &#x27;[:space:]&#x27;)&quot; \<br />     --given-name=&quot;$firstname&quot; --surname=&quot;$lastname&quot; --job-title=&quot;$role&quot; --telephone-number=&quot;$phone&quot; --department=&quot;$ou&quot; \<br />     --description=&quot;$zip,$country,$city,$(echo $street | tr -dc &#x27;[[:print:]]&#x27;)&quot;<br />done &lt; &lt;(tail -n +2 &quot;$FILE&quot;)</p>
  <p id="22Dw"># Вы уже скачали файл в /home/isp/, поэтому:<br />chmod +x /home/isp/import_users.sh</p>
  <p id="Vqrh"># Запуск:<br />/home/isp/import_users.sh</p>

]]></content:encoded></item></channel></rss>