chroot-тон баш тартуу керекпи же iproute2-ни түрмөгө көчүрүү керекпи?
Толук эмес түрмө жүктөөдө эмес, иштетилгенден кийин иштебей калат. Катуулоону бошотуу же экилик файлдарды жана китепканаларды жаңы тамырга көчүрүүнүн ортосунда тандаңыз.
Кызмат иштейт, кардар туташат, бирок сервер тарапта маршрут эч качан көрүнбөйт. Же демон иштебей коёт жана аткара албаган буйрукту атайт. Эки натыйжа тең адатта катуулоо колдонмосунан чогуу көчүрүлгөн бирдей үч сапка таянат: артыкчылыгы жок эсепке өтүү, топтон баш тартуу жана файл системасынын тамырын өзгөртүү. Үчөөнүн бир гана файлдарды жашырат жана бир гана маршруттоо таблицасын өзгөртүү укугун алып салат. Аларды бөлүү - кайсы сап керек экенин билүүнүн жолу.
Түрмө алып салган, бирок демонго дагы керек болгон нерселер
Тамырды өзгөртүү иштетилгенден кийин болот, ошондуктан демон мурун ачкандын баарын сактайт жана кийин ача тургандын баарын жоготот. Туташуу ушул учурдан кийин иштеткен ар кандай жардамчы жаңы тамырдын ичинде, жүктөгөн жалпы китепканалар менен бирге болушу керек. Конфигурация файлы жана сертификат менен курулган түрмөдө экөө тең жок.
Артыкчылыгы жок эсепке өтүү өзүнчө чектөө. Тамырдан баш тарткан процесс экилик файл так ошол жерде болсо да маршруттарды өзгөртө албашы же интерфейсти көтөрө албашы мүмкүн, ошондуктан эки бузулууну өзүнчө диагностикалоо керек.
Кандай оңдоо керек экенин үч шарт чечет
Биринчи шарт - курулушуңуз маршруттарды кантип орнотушу. Жаңы OpenVPN версиялары интерфейс менен маршруттоо таблицасын процесс ичинде конфигурациялайт, эски пакеттер жана жеке жөндөөлөр сырткы куралдарга же up жана down скрипттерине таянат. Журнал буйрукту атаса, иште сырткы курал бар жана түрмө аны жашырат. Журнал анын ордуна укук катасын көрсөтсө, маселе эсепте.
Экинчиси - техникалык тейлөө. Көчүрүлгөн экилик файлдары бар түрмөнү аларды берген пакет ар жаңырганда жаңыртуу керек, болбосо биринчи жаңыртуу артында сынган туннелди калтырат. Үчүнчүсү - белгилүү бир көзөмөл чын эле chroot талап кылабы; эгер талап чындыгында артыкчылыктарды бөлүү жөнүндө болсо, эсепти өзгөртүү эле жетиштүү болушу мүмкүн.
| Signal in the log | Other side of the boundary | Repair direction |
|---|---|---|
| Command not found after startup | Binary and its libraries absent inside the new root | Populate the jail, or drop the chroot line |
| Operation not permitted | Account lost the privilege to edit routes | Keep the account privileged, or pre-create routes elsewhere |
| No such device | Jail lacks the tun device node | Create the node inside, or open it before the root change |
Иштеген түрмөдө эмне болушу керек
Буйруктарды аткарган түрмөгө экилик файл, ал байланышкан ар бир китепкана жана демон кеч ачкан ар бир түзмөк түйүнү керек. Бөлүктөрдү көчүрүп, аларды VPN жок сынап көрүңүз:
ldd /usr/sbin/ip
chroot /etc/openvpn/jail /sbin/ip route show
chroot /etc/openvpn/jail /sbin/ip link set tun0 up
Биринчи буйрук көз карандылыктарды тизмелейт жана адамдар так ошону өткөрүп жиберет. Китепкана таба албаган көчүрүлгөн экилик файл жок экилик файлдан башка билдирүү менен иштебей калат жана экөө тең кардар тараптан окуганда OpenVPN бузулуусу сыяктуу көрүнөт. Буйрукту түрмөнүн ичинде кол менен аткаруу кызматты кайра иштетпей эле бузулууну кайталайт.
Конфигурацияны, сертификаттарды жана болсо CRLди да түрмөгө көчүрүңүз, анткени демон иштетилгенден кийин кайра окууну күткөн файл тамыр өзгөргөндөн кийин табылбайт. Эмнени көчүргөнүңүздү жазып коюңуз, анткени тармак пакетинин кийинки жаңыртуусу түпнускаларды алмаштырат жана түрмөнү эски көчүрмөдө калтырат.
Анын ордуна катуулоону азайтыңыз
Эгер түрмө колдонмо ошентип дегендиктен гана болсо, ошол бир сапты алып салып, эсеп чектөөлөрүн сактоо коргоого боло турган натыйжа. Демон файл системасын көрүүсүн сактайт жана маселеден кутулат, ал эми артыкчылыктын төмөндөшү узак жашаган процесстен тамырды дагы эле алып салат.
Эмне калганын жана эмне үчүн экенин жазыңыз. Көзөмөлдү эскертүүсүз унчукпай жоготкон конфигурация - катуулоонун ушинтип жылышы, ал эми кийинки аудит сап эмне үчүн жоголгонун сурайт.
Тандоодон мурун үч сапты бөлүңүз
Конфигурацияны көчүрүңүз, үч директиваны тең өчүрүңүз жана кардар туташаарын жана күтүлгөн маршруттар пайда болоорун ырастаңыз. Анан гана эсеп саптарын, андан кийин гана chroot-ту кайра күйгүзүңүз. Туннел сынган кадам чекти көрсөтөт, жана эч качан себеп болбогон түрмөнү кайра куруудан качасыз.
Ал кайра маршруттаганда, жогорураак деталдуулук деңгээли менен бир кардар сессиясын иштетиңиз жана буйрукту же иштебей калган укукту атаган сапты окуңуз. Ал сап кардар акырында билдирген тайм-ауттан кымбат.