рдЕрд╕реЗ рдШрдбрд▓реЗ рдХреА рдореА рд╡реНрдпрд╡рд╕рд╛рдпрд╛рдиреЗ рд╕рдВрдЧрдгрдХ рдкреНрд░рдгрд╛рд▓реА рдЖрдгрд┐ рдиреЗрдЯрд╡рд░реНрдХрдЪрд╛ рдкреНрд░рд╢рд╛рд╕рдХ рдЖрд╣реЗ (рдереЛрдбрдХреНрдпрд╛рдд: рд╕рд┐рд╕реНрдЯрдо рдкреНрд░рд╢рд╛рд╕рдХ), рдЖрдгрд┐ рдорд▓рд╛ 10 рд╡рд░реНрд╖рд╛рдВрд╣реВрди рдЕрдзрд┐рдХ рдХрд╛рд│ рдкреНрд░рд╛рдзреНрдпрд╛рдкрдХрд╛рдВрдирд╛ рд╕рд╛рдВрдЧрдгреНрдпрд╛рдЪреА рд╕рдВрдзреА рдорд┐рд│рд╛рд▓реА. [рдЕрддреНрдпрдВрдд] рд╕реБрд░рдХреНрд╖рд╛ рдЙрдкрд╛рдпрд╛рдВрдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рдкреНрд░рдгрд╛рд▓реАрдВрдЪреНрдпрд╛ рд╡рд┐рд╡рд┐рдз рдкреНрд░рдХрд╛рд░рдЪреНрдпрд╛ рдХреНрд░рд┐рдпрд╛рдХрд▓рд╛рдк. рдЕрд╕реЗрд╣реА рдШрдбрд▓реЗ рдХреА рдХрд╛рд╣реА рдХрд╛рд│рд╛рдкреВрд░реНрд╡реА рдорд▓рд╛ рддреЗ рдордиреЛрд░рдВрдЬрдХ рд╡рд╛рдЯрд▓реЗ dev
, рдореНрд╣рдгреВрди, рдореА рддреЗрдереВрди рдЬрд╛рдд рд╣реЛрддреЛ). рдкрд░рдВрддреБ рдореА рд╡рд┐рдХрд╛рд╕рд╛рдмрджреНрджрд▓ рдмреЛрд▓рдд рдирд╛рд╣реА, рдореА рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╛рдВрд╕рд╛рдареА рд╕реБрд░рдХреНрд╖рд┐рдд рдЖрдгрд┐ рдХрд╛рд░реНрдпрдХреНрд╖рдо рд╡рд╛рддрд╛рд╡рд░рдгрд╛рдмрджреНрджрд▓ рдмреЛрд▓рдд рдЖрд╣реЗ.
рдЖрд░реНрдерд┐рдХ рддрдВрддреНрд░рдЬреНрдЮрд╛рди (fintech) рдорд╛рд╣рд┐рддреА рд╕реБрд░рдХреНрд╖рд┐рддрддреЗрдЪреНрдпрд╛ рдкреБрдвреЗ рдЬрд╛ (рдЗрдВрдлреЛрд╕реЗрдХ) рдЖрдгрд┐ рдкрд╣рд┐рд▓рд╛ рджреБрд╕рд▒реНрдпрд╛рд╢рд┐рд╡рд╛рдп рдХрд╛рд░реНрдп рдХрд░реВ рд╢рдХрддреЛ, рдкрд░рдВрддреБ рдЬрд╛рд╕реНрдд рдХрд╛рд│ рдирд╛рд╣реА. рдореНрд╣рдгреВрдирдЪ рдорд▓рд╛ рдорд╛рдЭрд╛ рдЕрдиреБрднрд╡ рдЖрдгрд┐ рдореА рд╡рд╛рдкрд░рдд рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рд╕рд╛рдзрдирд╛рдВрдЪрд╛ рд╕рдВрдЪ рд╕рд╛рдорд╛рдпрд┐рдХ рдХрд░рд╛рдпрдЪрд╛ рдЖрд╣реЗ, рдЬреНрдпрд╛рдордзреНрдпреЗ рджреЛрдиреНрд╣реА рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдЖрд╣реЗрдд fintech, рдЖрдгрд┐ рдЗрдВрдлреЛрд╕реЗрдХ, рдЖрдгрд┐ рддреНрдпрд╛рдЪ рд╡реЗрд│реА, рдЖрдгрд┐ рд╡реНрдпрд╛рдкрдХ рдХрд┐рдВрд╡рд╛ рдкреВрд░реНрдгрдкрдгреЗ рднрд┐рдиреНрди рд╣реЗрддреВрд╕рд╛рдареА рджреЗрдЦреАрд▓ рд╡рд╛рдкрд░рд▓реЗ рдЬрд╛рдК рд╢рдХрддреЗ. рдпрд╛ рд▓реЗрдЦрд╛рдд рдореА рддреБрдореНрд╣рд╛рд▓рд╛ рдмрд┐рдЯрдХреЙрдЗрди рдмрджреНрджрд▓ рдЗрддрдХреЗрдЪ рдирд╛рд╣реА рддрд░ рдЖрд░реНрдерд┐рдХ (рдЖрдгрд┐ рдХреЗрд╡рд│ рдирд╛рд╣реА) рд╕реЗрд╡рд╛рдВрдЪреНрдпрд╛ рд╡рд┐рдХрд╛рд╕ рдЖрдгрд┐ рдСрдкрд░реЗрд╢рдирд╕рд╛рдареА рдкрд╛рдпрд╛рднреВрдд рд╕реБрд╡рд┐рдзрд╛ рдореЙрдбреЗрд▓рдмрджреНрджрд▓ рд╕рд╛рдВрдЧреЗрди - рдПрдХрд╛ рд╢рдмреНрджрд╛рдд, рдЬреНрдпрд╛ рд╕реЗрд╡рд╛ "B" рдорд╣рддреНрд╡рд╛рдЪреНрдпрд╛ рдЖрд╣реЗрдд. рд╣реЗ рдмрд┐рдЯрдХреЙрдЗрди рдПрдХреНрд╕рдЪреЗрдВрдЬ рдЖрдгрд┐ рдмрд┐рдЯрдХреЙрдЗрдирд╢реА рдХреЛрдгрддреНрдпрд╛рд╣реА рдкреНрд░рдХрд╛рд░реЗ рдХрдиреЗрдХреНрдЯ рдирд╕рд▓реЗрд▓реНрдпрд╛ рдЫреЛрдЯреНрдпрд╛ рдХрдВрдкрдиреАрдЪреНрдпрд╛ рд╕реЗрд╡рд╛рдВрдЪреНрдпрд╛ рд╕рд░реНрд╡рд╛рдд рд╕рд╛рдорд╛рдиреНрдп рдХреЙрд░реНрдкреЛрд░реЗрдЯ рдкреНрд░рд╛рдгреАрд╕рдВрдЧреНрд░рд╣рд╛рд▓рдпрд╛рд▓рд╛ рд▓рд╛рдЧреВ рд╣реЛрддреЗ.
рдореА рд╣реЗ рд▓рдХреНрд╖рд╛рдд рдШреЗрдК рдЗрдЪреНрдЫрд┐рддреЛ рдХреА рдореА рддрддреНрддреНрд╡рд╛рдВрдЪрд╛ рд╕рдорд░реНрдердХ рдЖрд╣реЗ "рд╣реЗ рдореВрд░реНрдЦ рд╕рд╛рдзреЗ рдареЗрд╡рд╛" ╨╕ "рдХрдореА рдЕрдзрд┐рдХ рдЖрд╣реЗ", рдореНрд╣рдгреВрди, рд▓реЗрдЦ рдЖрдгрд┐ рддреНрдпрд╛рдордзреНрдпреЗ рд╡рд░реНрдгрди рдХреЗрд▓реЗрд▓реЗ рджреЛрдиреНрд╣реА рдЧреБрдгрдзрд░реНрдо рдпрд╛ рддрддреНрддреНрд╡рд╛рдВрдмрджреНрджрд▓ рдЖрд╣реЗрдд.
рдХрд╛рд▓реНрдкрдирд┐рдХ рдкрд░рд┐рд╕реНрдерд┐рддреА: рдмрд┐рдЯрдХреЙрдЗрди рдПрдХреНрд╕рдЪреЗрдВрдЬрд░рдЪреЗ рдЙрджрд╛рд╣рд░рдг рд╡рд╛рдкрд░реВрди рд╕рд░реНрд╡рдХрд╛рд╣реА рдкрд╛рд╣реВ. рдЖрдореНрд╣реА рдмрд┐рдЯрдХреЙрдЗрдиреНрд╕ рдЖрдгрд┐ рдмреЕрдХрд╕рд╛рдареА рд░реВрдмрд▓, рдбреЙрд▓рд░реНрд╕, рдпреБрд░реЛрдЪреА рджреЗрд╡рд╛рдгрдШреЗрд╡рд╛рдг рд╕реБрд░реВ рдХрд░рдгреНрдпрд╛рдЪрд╛ рдирд┐рд░реНрдгрдп рдШреЗрддрд▓рд╛ рдЖрдгрд┐ рдЖрдордЪреНрдпрд╛рдХрдбреЗ рдЖрдзреАрдкрд╛рд╕реВрдирдЪ рдХрд╛рд░реНрдпрд░рдд рдЙрдкрд╛рдп рдЖрд╣реЗ, рдкрд░рдВрддреБ рдЗрддрд░ рдбрд┐рдЬрд┐рдЯрд▓ рдкреИрд╢рд╛рдВрд╕рд╛рдареА рдЬрд╕реЗ рдХреА рдХреНрдпреВрд╡реА рдЖрдгрд┐ рд╡реЗрдмрдордиреА, рдореНрд╣рдгрдЬреЗ. рдЖрдореНрд╣реА рд╕рд░реНрд╡ рдХрд╛рдпрджреЗрд╢реАрд░ рд╕рдорд╕реНрдпрд╛ рдмрдВрдж рдХреЗрд▓реНрдпрд╛ рдЖрд╣реЗрдд, рдЖрдордЪреНрдпрд╛рдХрдбреЗ рдПрдХ рддрдпрд╛рд░ рдЕрд░реНрдЬ рдЖрд╣реЗ рдЬреЛ рд░реВрдмрд▓, рдбреЙрд▓рд░ рдЖрдгрд┐ рдпреБрд░реЛ рдЖрдгрд┐ рдЗрддрд░ рдкреЗрдореЗрдВрдЯ рд╕рд┐рд╕реНрдЯрдорд╕рд╛рдареА рдкреЗрдореЗрдВрдЯ рдЧреЗрдЯрд╡реЗ рдореНрд╣рдгреВрди рдХрд╛рдо рдХрд░рддреЛ. рд╣реЗ рдЖрдордЪреНрдпрд╛ рдмрдБрдХ рдЦрд╛рддреНрдпрд╛рдВрд╢реА рдЬреЛрдбрд▓реЗрд▓реЗ рдЖрд╣реЗ рдЖрдгрд┐ рдЖрдордЪреНрдпрд╛ рдЕрдВрддрд┐рдо рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╛рдВрд╕рд╛рдареА рдХрд╛рд╣реА рдкреНрд░рдХрд╛рд░рдЪреЗ API рдЖрд╣реЗ. рдЖрдордЪреНрдпрд╛рдХрдбреЗ рдПрдХ рд╡реЗрдм рдНрдкреНрд▓рд┐рдХреЗрд╢рди рджреЗрдЦреАрд▓ рдЖрд╣реЗ рдЬреЗ рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдВрд╕рд╛рдареА рдПрдХреНрд╕рдЪреЗрдВрдЬрд░ рдореНрд╣рдгреВрди рдХрд╛рд░реНрдп рдХрд░рддреЗ, рддрд╕реЗрдЪ, рд╕рд╛рдорд╛рдиреНрдп qiwi рдХрд┐рдВрд╡рд╛ webmoney рдЦрд╛рддреЗ рд╕рд╛рд░рдЦреЗ - рдЦрд╛рддреЗ рддрдпрд╛рд░ рдХрд░рд╛, рдХрд╛рд░реНрдб рдЬреЛрдбрд╛ рдЗ. рд╣реЗ рдЖрдордЪреНрдпрд╛ рдЧреЗрдЯрд╡реЗ рдНрдкреНрд▓рд┐рдХреЗрд╢рдирд╢реА рд╕рдВрдкреНрд░реЗрд╖рдг рдХрд░рддреЗ, рдЬрд░реА рд╕реНрдерд╛рдирд┐рдХ рднрд╛рдЧрд╛рдд REST API рджреНрд╡рд╛рд░реЗ. рдЖрдгрд┐ рдореНрд╣рдгреВрди рдЖрдореНрд╣реА рдмрд┐рдЯрдХреЙрдЗрдиреНрд╕ рдХрдиреЗрдХреНрдЯ рдХрд░рдгреНрдпрд╛рдЪрд╛ рдЖрдгрд┐ рддреНрдпрд╛рдЪ рд╡реЗрд│реА рдкрд╛рдпрд╛рднреВрдд рд╕реБрд╡рд┐рдзрд╛ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдгреНрдпрд╛рдЪрд╛ рдирд┐рд░реНрдгрдп рдШреЗрддрд▓рд╛, рдХрд╛рд░рдг... рд╕реБрд░реБрд╡рд╛рддреАрд▓рд╛, рд╕рд░реНрд╡ рдХрд╛рд╣реА рдШрд╛рдИрдШрд╛рдИрдиреЗ рдСрдлрд┐рд╕рдордзреНрдпреЗ рдЯреЗрдмрд▓рдЦрд╛рд▓реА рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рд╡реНрд╣рд░реНрдЪреНрдпреБрдЕрд▓рдмреЙрдХреНрд╕реЗрд╕рд╡рд░ рдареЗрд╡рдгреНрдпрд╛рдд рдЖрд▓реЗ рд╣реЛрддреЗ... рд╕рд╛рдЗрдЯ рд╡рд╛рдкрд░рд▓реА рдЬрд╛рдК рд▓рд╛рдЧрд▓реА рдЖрдгрд┐ рдЖрдореНрд╣рд╛рд▓рд╛ рдЕрдкрдЯрд╛рдЗрдо рдЖрдгрд┐ рдХрд╛рд░реНрдпрдкреНрд░рджрд░реНрд╢рдирд╛рдЪреА рдЪрд┐рдВрддрд╛ рд╡рд╛рдЯреВ рд▓рд╛рдЧрд▓реА.
рддрд░, рдореБрдЦреНрдп рдЧреЛрд╖реНрдЯреАрд╕рд╣ рдкреНрд░рд╛рд░рдВрдн рдХрд░реВрдпрд╛ - рд╕рд░реНрд╡реНрд╣рд░ рдирд┐рд╡рдбрдгреЗ. рдХрд╛рд░рдг рдЖрдордЪреНрдпрд╛ рдЙрджрд╛рд╣рд░рдгрд╛рддреАрд▓ рд╡реНрдпрд╡рд╕рд╛рдп рд▓рд╣рд╛рди рдЖрд╣реЗ рдЖрдгрд┐ рдЖрдореНрд╣реА рдирд┐рд╡рдбрд▓реЗрд▓реНрдпрд╛ рд╣реЛрд╕реНрдЯрд╡рд░ (OVH) рд╡рд░ рдЖрдордЪрд╛ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдЖрд╣реЗ
рд╕рд░реНрд╡реНрд╣рд░ рд╕реНрдерд╛рдкрдирд╛
рдпреЗрдереЗ рд╕рд░реНрд╡ рдХрд╛рд╣реА рд╕реЛрдкреЗ рдЖрд╣реЗ. рдЖрдореНрд╣реА рдЖрдордЪреНрдпрд╛ рдЧрд░рдЬреЗрдиреБрд╕рд╛рд░ рд╣рд╛рд░реНрдбрд╡реЗрдЕрд░ рдирд┐рд╡рдбрддреЛ. рдирдВрддрд░ FreeBSD рдкреНрд░рддрд┐рдорд╛ рдирд┐рд╡рдбрд╛. рдмрд░рдВ, рдХрд┐рдВрд╡рд╛ рдЖрдореНрд╣реА (рджреБрд╕рд▒реНрдпрд╛ рд╣реЛрд╕реНрдЯрд░рдЪреНрдпрд╛ рдмрд╛рдмрддреАрдд рдЖрдгрд┐ рдЖрдордЪреНрдпрд╛ рд╕реНрд╡рддрдГрдЪреНрдпрд╛ рд╣рд╛рд░реНрдбрд╡реЗрдЕрд░рдЪреНрдпрд╛ рдмрд╛рдмрддреАрдд) IPMI рджреНрд╡рд╛рд░реЗ рдХрд┐рдВрд╡рд╛ рдореЙрдирд┐рдЯрд░рдиреЗ рдХрдиреЗрдХреНрдЯ рдХрд░рддреЛ рдЖрдгрд┐ .iso FreeBSD рдЗрдореЗрдЬ рдбрд╛рдЙрдирд▓реЛрдбрдордзреНрдпреЗ рдлреАрдб рдХрд░рддреЛ. рдСрд░реНрдХреЗрд╕реНрдЯреНрд░рд▓ рд╕реЗрдЯрдЕрдкрд╕рд╛рдареА рдореА рд╡рд╛рдкрд░рддреЛ
рд╕рд┐рд╕реНрдЯрдордЪреА рд╕реНрдерд╛рдкрдирд╛ рдорд╛рдирдХ рдкрджреНрдзрддреАрдиреЗ рд╣реЛрддреЗ, рдореА рдпрд╛рд╡рд░ рд▓рдХреНрд╖ рджреЗрдгрд╛рд░ рдирд╛рд╣реА, рдореА рдлрдХреНрдд рд▓рдХреНрд╖рд╛рдд рдареЗрд╡реЗрди рдХреА рдСрдкрд░реЗрд╢рди рд╕реБрд░реВ рдХрд░рдгреНрдпрд╛рдкреВрд░реНрд╡реА рдпрд╛рдХрдбреЗ рд▓рдХреНрд╖ рджреЗрдгреЗ рдпреЛрдЧреНрдп рдЖрд╣реЗ рд╕рддрдд рд╡рд╛рдврдд рдЬрд╛рдгрд╛рд░реА рддреЗ рдСрдлрд░ рдХрд░рдгрд╛рд░реЗ рдкрд░реНрдпрд╛рдп bsdinstaller
рдЗрдиреНрд╕реНрдЯреЙрд▓реЗрд╢рдирдЪреНрдпрд╛ рд╢реЗрд╡рдЯреА (рдЬрд░ рддреБрдореНрд╣реА рд╕рд┐рд╕реНрдЯрдо рд╕реНрд╡рддрдГ рдЗрдиреНрд╕реНрдЯреЙрд▓ рдХреЗрд▓реЗ рдЕрд╕реЗрд▓):
рдЖрд╣реЗрдд
рдЖрдзреАрдЪ рд╕реНрдерд╛рдкрд┐рдд рдХреЗрд▓реЗрд▓реНрдпрд╛ рд╕рд┐рд╕реНрдЯрдорд╡рд░ рд╡рд░ рдирдореВрдж рдХреЗрд▓реЗрд▓реЗ рдкреЕрд░рд╛рдореАрдЯрд░реНрд╕ рд╕рдХреНрд╖рдо рдХрд░рдгреЗ рджреЗрдЦреАрд▓ рд╢рдХреНрдп рдЖрд╣реЗ. рд╣реЗ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рддреБрдореНрд╣рд╛рд▓рд╛ рдмреВрдЯрд▓реЛрдбрд░ рдлрд╛рдЗрд▓ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдгреЗ рдЖрдгрд┐ рдХрд░реНрдирд▓ рдкреЕрд░рд╛рдореАрдЯрд░реНрд╕ рд╕рдХреНрд╖рдо рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ. *ee рд╣рд╛ BSD рдордзреНрдпреЗ рдЕрд╕рд╛ рд╕рдВрдкрд╛рджрдХ рдЖрд╣реЗ
# ee /etc/rc.conf
...
#sec hard
clear_tmp_enable="YES"
syslogd_flags="-ss"
sendmail_enable="NONE"
# ee /etc/sysctl.conf
...
#sec hard
security.bsd.see_other_uids=0
security.bsd.see_other_gids=0
security.bsd.unprivileged_read_msgbuf=0
security.bsd.unprivileged_proc_debug=0
kern.randompid=$(jot -r 1 9999)
security.bsd.stack_guard_page=1
рддреБрдореНтАНрд╣реА рддреБрдордЪреНтАНрдпрд╛рдХрдбреЗ рд╕рд┐рд╕реНтАНрдЯрдордЪреА рдирд╡реАрдирддрдо рдЖрд╡реГрддреНрддреА рд╕реНтАНрдерд╛рдкрд┐рдд рдХреЗрд▓реА рдЕрд╕рд▓реНтАНрдпрд╛рдЪреА рджреЗрдЦреАрд▓ рдЦрд╛рддреНрд░реА рдХрд░рд╛рд╡реА, рдЖрдгрд┐
рдордЧ рдЖрдореНрд╣реА рдХреЙрдиреНрдлрд┐рдЧрд░ рдХрд░рддреЛ aide
, рд╕рд┐рд╕реНрдЯрдо рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдлрд╛рдЗрд▓реНрд╕рдЪреНрдпрд╛ рд╕реНрдерд┐рддреАрдЪреЗ рдирд┐рд░реАрдХреНрд╖рдг рдХрд░рдгреЗ. рдЖрдкрдг рдЕрдзрд┐рдХ рддрдкрд╢реАрд▓рд╡рд╛рд░ рд╡рд╛рдЪреВ рд╢рдХрддрд╛
pkg install aide
рдЖрдгрд┐ рдЖрдордЪрд╛ рдХреНрд░реЙрдиреНрдЯреЕрдм рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рд╛
crontab -e
06 01 * * 0-6 /root/chkaide.sh
#! /bin/sh
#chkaide.sh
MYDATE=`date +%Y-%m-%d`
MYFILENAME="Aide-"$MYDATE.txt
/bin/echo "Aide check !! `date`" > /tmp/$MYFILENAME
/usr/local/bin/aide --check > /tmp/myAide.txt
/bin/cat /tmp/myAide.txt|/usr/bin/grep -v failed >> /tmp/$MYFILENAME
/bin/echo "**************************************" >> /tmp/$MYFILENAME
/usr/bin/tail -20 /tmp/myAide.txt >> /tmp/$MYFILENAME
/bin/echo "****************DONE******************" >> /tmp/$MYFILENAME
рдЖрдореНрд╣реА рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдХрд░рддреЛ
sysrc auditd_enable=YES
# service auditd start
рдпрд╛ рдкреНрд░рдХрд░рдгрд╛рдЪреЗ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рдХрд╕реЗ рдХрд░рд╛рд╡реЗ рдпрд╛рдЪреЗ рдЙрддреНрддрдо рдкреНрд░рдХрд╛рд░реЗ рд╡рд░реНрдгрди рдХреЗрд▓реЗ рдЖрд╣реЗ
рдЖрддрд╛ рдЖрдореНрд╣реА рд░реАрдмреВрдЯ рдХрд░рддреЛ рдЖрдгрд┐ рд╕рд░реНрд╡реНрд╣рд░рд╡рд░реАрд▓ рд╕реЙрдлреНрдЯрд╡реЗрдЕрд░рд╡рд░ рдЬрд╛рдК. рдкреНрд░рддреНрдпреЗрдХ рд╕рд░реНрд╡реНрд╣рд░ рдХрдВрдЯреЗрдирд░ рдХрд┐рдВрд╡рд╛ рдкреВрд░реНрдг рдЖрднрд╛рд╕реА рдорд╢реАрдирд╕рд╛рдареА рд╣рд╛рдпрдкрд░рд╡рд╛рдЗрдЬрд░ рдЖрд╣реЗ. рдореНрд╣рдгреВрди, рдЬрд░ рдЖрдореНрд╣реА рдкреВрд░реНрдг рд╡реНрд╣рд░реНрдЪреНрдпреБрдЕрд▓рд╛рдпрдЭреЗрд╢рди рд╡рд╛рдкрд░рдгреНрдпрд╛рдЪреА рдпреЛрдЬрдирд╛ рдЖрдЦрд▓реА рдЕрд╕реЗрд▓ рддрд░ рдкреНрд░реЛрд╕реЗрд╕рд░ VT-x рдЖрдгрд┐ EPT рд▓рд╛ рд╕рдорд░реНрдерди рджреЗрддреЛ рд╣реЗ рдорд╣рддреНрд╡рд╛рдЪреЗ рдЖрд╣реЗ.
рдореА рд╡рд╛рдкрд░рддреЛ рдХрдВрдЯреЗрдирд░ рдЖрдгрд┐ рдЖрднрд╛рд╕реА рдорд╢реАрди рд╡реНрдпрд╡рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА
рдХрдВрдЯреЗрдирд░? рдкреБрдиреНрд╣рд╛ рдбреЙрдХрд░ рдХреА рдХрд╛рдп?
рдкрдг рдирд╛рд╣реА. cbsd
рд╣реЗ рдХрдВрдЯреЗрдирд░ рдСрд░реНрдХреЗрд╕реНрдЯреНрд░реЗрдЯ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдЬреНрдпрд╛рд▓рд╛ рд╕реЗрд▓ рдореНрд╣рдгрддрд╛рдд.
рд╡рд┐рд╡рд┐рдз рдЙрджреНрджреЗрд╢рд╛рдВрд╕рд╛рдареА рдкрд╛рдпрд╛рднреВрдд рд╕реБрд╡рд┐рдзрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдкрд┐рдВрдЬрд░рд╛ рд╣рд╛ рдПрдХ рдЕрддреНрдпрдВрдд рдкреНрд░рднрд╛рд╡реА рдЙрдкрд╛рдп рдЖрд╣реЗ, рдЬреЗрдереЗ рд╡реИрдпрдХреНрддрд┐рдХ рд╕реЗрд╡рд╛ рдХрд┐рдВрд╡рд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдВрдЪреЗ рдкреВрд░реНрдг рдкреГрдердХреНрдХрд░рдг рд╢реЗрд╡рдЯреА рдЖрд╡рд╢реНрдпрдХ рдЕрд╕рддреЗ. рдореВрд▓рдд:, рд╣рд╛ рд╣реЛрд╕реНрдЯ рд╕рд┐рд╕реНрдЯрдордЪрд╛ рдХреНрд▓реЛрди рдЖрд╣реЗ, рдкрд░рдВрддреБ рддреНрдпрд╛рд▓рд╛ рд╕рдВрдкреВрд░реНрдг рд╣рд╛рд░реНрдбрд╡реЗрдЕрд░ рд╡реНрд╣рд░реНрдЪреНрдпреБрдЕрд▓рд╛рдпрдЭреЗрд╢рдирдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╛рд╣реА. рдЖрдгрд┐ рдпрд╛рдмрджреНрджрд▓ рдзрдиреНрдпрд╡рд╛рдж, рд╕рдВрд╕рд╛рдзрдиреЗ "рдЕрддрд┐рдереА OS" рд╡рд░ рдЦрд░реНрдЪ рдХреЗрд▓реА рдЬрд╛рдд рдирд╛рд╣реАрдд, рдкрд░рдВрддреБ рдХреЗрд╡рд│ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХреЗрд▓реНрдпрд╛ рдЬрд╛рдд рдЖрд╣реЗрдд. рдЬреЗрд╡реНрд╣рд╛ рд╕реЗрд▓рдЪрд╛ рд╡рд╛рдкрд░ рдЕрдВрддрд░реНрдЧрдд рдЧрд░рдЬрд╛рдВрд╕рд╛рдареА рдХреЗрд▓рд╛ рдЬрд╛рддреЛ, рддреЗрд╡реНрд╣рд╛ рд╕рдВрд╕рд╛рдзрдирд╛рдЪреНрдпрд╛ рдЗрд╖реНрдЯрддрдо рд╡рд╛рдкрд░рд╛рд╕рд╛рдареА рд╣рд╛ рдПрдХ рдЕрддрд┐рд╢рдп рд╕реЛрдпреАрд╕реНрдХрд░ рдЙрдкрд╛рдп рдЖрд╣реЗ - рдПрдХрд╛ рд╣рд╛рд░реНрдбрд╡реЗрдЕрд░ рд╕рд░реНрд╡реНрд╣рд░рд╡рд░реАрд▓ рд╕реЗрд▓рдЪрд╛ рдПрдХ рд╕рдореВрд╣ рдкреНрд░рддреНрдпреЗрдХрдЬрдг рдЖрд╡рд╢реНрдпрдХ рдЕрд╕рд▓реНрдпрд╛рд╕ рд╕рдВрдкреВрд░реНрдг рд╕рд░реНрд╡реНрд╣рд░ рд╕рдВрд╕рд╛рдзрдирд╛рдЪрд╛ рд╡реИрдпрдХреНрддрд┐рдХрд░рд┐рддреНрдпрд╛ рд╡рд╛рдкрд░ рдХрд░реВ рд╢рдХрддреЛ. рд╣реЗ рд▓рдХреНрд╖рд╛рдд рдШреЗрддрд╛, рд╕рд╛рдорд╛рдиреНрдпрддрдГ рднрд┐рдиреНрди рдЙрдкрд╕реЗрд╡рд╛рдВрдирд╛ рдЕрддрд┐рд░рд┐рдХреНрдд рдЖрд╡рд╢реНрдпрдХ рдЕрд╕рддреЗ. рд╡реЗрдЧрд╡реЗрдЧрд│реНрдпрд╛ рд╡реЗрд│реА рд╕рдВрд╕рд╛рдзрдиреЗ, рддреБрдореНрд╣реА рд╕рд░реНрд╡реНрд╣рд░рдордзреАрд▓ рд╕реЗрд▓рдЪреЗ рдпреЛрдЧреНрдп рдирд┐рдпреЛрдЬрди рдЖрдгрд┐ рд╕рдорддреЛрд▓ рд╕рд╛рдзрд▓реНрдпрд╛рд╕ рддреБрдореНрд╣реА рдПрдХрд╛ рд╕рд░реНрд╡реНрд╣рд░рд╡рд░реВрди рдЬрд╛рд╕реНрддреАрдд рдЬрд╛рд╕реНрдд рдХрд╛рдордЧрд┐рд░реА рдХрд╛рдвреВ рд╢рдХрддрд╛. рдЖрд╡рд╢реНрдпрдХ рдЕрд╕рд▓реНрдпрд╛рд╕, рд╕реЗрд▓ рд╡рд╛рдкрд░рд▓реЗрд▓реНрдпрд╛ рд╕рдВрд╕рд╛рдзрдирд╛рд╡рд░ рдирд┐рд░реНрдмрдВрдз рджреЗрдЦреАрд▓ рджрд┐рд▓реЗ рдЬрд╛рдК рд╢рдХрддрд╛рдд.
рдкреВрд░реНрдг рдЖрднрд╛рд╕реАрдХрд░рдгрд╛рдмрджреНрджрд▓ рдХрд╛рдп?
рдорд▓рд╛ рдорд╛рд╣реАрдд, cbsd
рдХрд╛рдорд╛рдЪреЗ рд╕рдорд░реНрдерди рдХрд░рддреЗ bhyve
рдЖрдгрд┐ XEN рд╣рд╛рдпрдкрд░рд╡рд╛рдЗрдЬрд░. рдореА рджреБрд╕рд░рд╛ рдХрдзреАрд╣реА рд╡рд╛рдкрд░рд▓рд╛ рдирд╛рд╣реА, рдкрд░рдВрддреБ рдкрд╣рд┐рд▓рд╛ рддреБрд▓рдиреЗрдиреЗ рдирд╡реАрди рдЖрд╣реЗ bhyve
рдЦрд╛рд▓реАрд▓ рдЙрджрд╛рд╣рд░рдгрд╛рдд.
рд╣реЛрд╕реНрдЯ рд╡рд╛рддрд╛рд╡рд░рдг рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдгреЗ рдЖрдгрд┐ рдХреЙрдиреНрдлрд┐рдЧрд░ рдХрд░рдгреЗ
рдЖрдореНрд╣реА рдПрдлрдПрд╕ рд╡рд╛рдкрд░рддреЛ
gpart add -t freebsd-zfs /dev/ada0
/dev/ada0p4 added!
рдЙрд░реНрд╡рд░рд┐рдд рдЬрд╛рдЧреЗрдд рдбрд┐рд╕реНрдХ рд╡рд┐рднрд╛рдЬрди рдЬреЛрдбрд╛
geli init /dev/ada0p4
рдЖрдордЪрд╛ рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди рдкрд╛рд╕рд╡рд░реНрдб рдЯрд╛рдХрд╛
geli attach /dev/ada0p4
рдЖрдореНрд╣реА рдкреБрдиреНрд╣рд╛ рдкрд╛рд╕рд╡рд░реНрдб рдЯрд╛рдХрддреЛ рдЖрдгрд┐ рдЖрдордЪреНрдпрд╛рдХрдбреЗ рдПрдХ рдбрд┐рд╡реНрд╣рд╛рдЗрд╕ рдЖрд╣реЗ /dev/ada0p4.eli - рд╣реА рдЖрдордЪреА рдПрдирдХреНрд░рд┐рдкреНрдЯреЗрдб рдЬрд╛рдЧрд╛ рдЖрд╣реЗ. рдордЧ рдЖрдкрдг рддреЗрдЪ /dev/ada1 рдЖрдгрд┐ рдЕтАНреЕрд░реЗрдордзреАрд▓ рдЙрд░реНрд╡рд░рд┐рдд рдбрд┐рд╕реНрдХрд╕рд╛рдареА рдкреБрдирд░рд╛рд╡реГрддреНрддреА рдХрд░реВ. рдЖрдгрд┐ рдЖрдореНрд╣реА рдПрдХ рдирд╡реАрди рддрдпрд╛рд░ рдХрд░рддреЛ
zpool create vms mirror /dev/ada0p4.eli /dev/ada1p4.eli /dev/ada3p4.eli
- рдмрд░рдВ, рдЖрдордЪреНрдпрд╛рдХрдбреЗ рдХрд┐рдорд╛рди рд▓рдврд╛рдК рдХрд┐рдЯ рддрдпрд╛рд░ рдЖрд╣реЗ. рддреАрдирдкреИрдХреА рдПрдХ рдЕрдпрд╢рд╕реНрд╡реА рдЭрд╛рд▓реНрдпрд╛рд╕ рдбрд┐рд╕реНрдХрдЪрд╛ рдорд┐рд░рд░ рдХреЗрд▓реЗрд▓рд╛ рдЕреЕрд░реЗ.
рдирд╡реАрди "рдкреВрд▓" рд╡рд░ рдбреЗрдЯрд╛рд╕реЗрдЯ рддрдпрд╛рд░ рдХрд░рдгреЗ
zfs create vms/jails
pkg install cbsd
- рдЖрдореНрд╣реА рдПрдХ рдЯреАрдо рд▓рд╛рдБрдЪ рдХреЗрд▓реА рдЖрдгрд┐ рдЖрдордЪреНрдпрд╛ рд╕реЗрд▓рд╕рд╛рдареА рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рд╕реЗрдЯ рдХреЗрд▓реЗ.
рдирдВрддрд░ cbsd
рд╕реНрдерд╛рдкрд┐рдд, рддреЗ рдЖрд░рдВрдн рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ:
# env workdir="/vms/jails" /usr/local/cbsd/sudoexec/initenv
рдмрд░рдВ, рдЖрдореНрд╣реА рдЕрдиреЗрдХ рдкреНрд░рд╢реНрдирд╛рдВрдЪреА рдЙрддреНрддрд░реЗ рджреЗрддреЛ, рдмрд╣реБрддреЗрдХ рдбреАрдлреЙрд▓реНрдЯ рдЙрддреНрддрд░рд╛рдВрд╕рд╣.
*рдЬрд░ рддреБрдореНрд╣реА рдПрдирдХреНрд░рд┐рдкреНрд╢рди рд╡рд╛рдкрд░рдд рдЕрд╕рд╛рд▓, рддрд░ рдбрд┐рдорди рд╣реЗ рдорд╣рддреНрд╡рд╛рдЪреЗ рдЖрд╣реЗ cbsdd
рдЬреЛрдкрд░реНрдпрдВрдд рддреБрдореНрд╣реА рдбрд┐рд╕реНрдХреНрд╕ рд╕реНрд╡рд╣рд╕реНрддреЗ рдХрд┐рдВрд╡рд╛ рдЖрдкреЛрдЖрдк рдбрд┐рдХреНрд░рд┐рдкреНрдЯ рдХрд░рдд рдирд╛рд╣реА рддреЛрдкрд░реНрдпрдВрдд рдЖрдкреЛрдЖрдк рд╕реБрд░реВ рд╣реЛрдд рдирд╛рд╣реА (рдЖрдордЪреНрдпрд╛ рдЙрджрд╛рд╣рд░рдгрд╛рдд рд╣реЗ zabbix рджреНрд╡рд╛рд░реЗ рдХреЗрд▓реЗ рдЬрд╛рддреЗ)
**рдореА рджреЗрдЦреАрд▓ рдкрд╛рд╕реВрди NAT рд╡рд╛рдкрд░рдд рдирд╛рд╣реА cbsd
, рдЖрдгрд┐ рдореА рддреЗ рд╕реНрд╡рддрдГ рдХреЙрдиреНрдлрд┐рдЧрд░ рдХреЗрд▓реЗ рдЖрд╣реЗ pf
.
# sysrc pf_enable=YES
# ee /etc/pf.conf
IF_PUBLIC="em0"
IP_PUBLIC="1.23.34.56"
JAIL_IP_POOL="192.168.0.0/24"
#WHITE_CL="{ 127.0.0.1 }"
icmp_types="echoreq"
set limit { states 20000, frags 20000, src-nodes 20000 }
set skip on lo0
scrub in all
#NAT for jails
nat pass on $IF_PUBLIC from $JAIL_IP_POOL to any -> $IP_PUBLIC
## Bitcoin network port forward
IP_JAIL="192.168.0.1"
PORT_JAIL="{8333}"
rdr pass on $IF_PUBLIC proto tcp from any to $IP_PUBLIC port $PORT_JAIL -> $IP_JAIL
# service pf start
# pfctl -f /etc/pf.conf
рдлрд╛рдпрд░рд╡реЙрд▓ рдкреЙрд▓рд┐рд╕реА рд╕реЗрдЯ рдХрд░рдгреЗ рд╣рд╛ рджреЗрдЦреАрд▓ рдПрдХ рд╡реЗрдЧрд│рд╛ рд╡рд┐рд╖рдп рдЖрд╣реЗ, рдореНрд╣рдгреВрди рдореА рд╕рд░реНрд╡ рдмреНрд▓реЙрдХ рдкреЙрд▓рд┐рд╕реА рд╕реЗрдЯ рдХрд░рдгреЗ рдЖрдгрд┐ рд╢реНрд╡реЗрддрд╕реВрдЪреА рд╕реЗрдЯ рдХрд░рдгреЗ рдпрд╛рдд рдЦреЛрд▓рд╡рд░ рдЬрд╛рдгрд╛рд░ рдирд╛рд╣реА, рддреБрдореНрд╣реА рддреЗ рд╡рд╛рдЪреВрди рдХрд░реВ рд╢рдХрддрд╛
рдмрд░рдВ... рдЖрдореНрд╣реА cbsd рд╕реНрдерд╛рдкрд┐рдд рдХреЗрд▓реЗ рдЖрд╣реЗ, рдЖрдордЪрд╛ рдкрд╣рд┐рд▓рд╛ рд╡рд░реНрдХрд╣реЙрд░реНрд╕ рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рдЪреА рд╡реЗрд│ рдЖрд▓реА рдЖрд╣реЗ - рдкрд┐рдВрдЬрд░рд╛ рдЕрд╕рд▓реЗрд▓рд╛ рдмрд┐рдЯрдХреЙрдЗрди рд░рд╛рдХреНрд╖рд╕!
cbsd jconstruct-tui
рдпреЗрдереЗ рдЖрдкрдг рд╕реЗрд▓ рдирд┐рд░реНрдорд┐рддреА рд╕рдВрд╡рд╛рдж рдкрд╛рд╣рддреЛ. рд╕рд░реНрд╡ рдореВрд▓реНрдпреЗ рд╕реЗрдЯ рдХреЗрд▓реНрдпрд╛рдирдВрддрд░, рдЪрд▓рд╛ рддрдпрд╛рд░ рдХрд░реВрдпрд╛!
рддреБрдордЪрд╛ рдкрд╣рд┐рд▓рд╛ рд╕реЗрд▓ рддрдпрд╛рд░ рдХрд░рддрд╛рдирд╛, рддреБрдореНрд╣реА рд╕реЗрд▓рдЪрд╛ рдЖрдзрд╛рд░ рдореНрд╣рдгреВрди рдХрд╛рдп рд╡рд╛рдкрд░рд╛рдпрдЪреЗ рддреЗ рдирд┐рд╡рдбрд▓реЗ рдкрд╛рд╣рд┐рдЬреЗ. рдореА рдХрдорд╛рдВрдбрд╕рд╣ рдлреНрд░реАрдмреАрдПрд╕рдбреА рд░реЗрдкреЙрдЬрд┐рдЯрд░реАрдордзреВрди рд╡рд┐рддрд░рдг рдирд┐рд╡рдбрддреЛ repo
. рд╣реА рдирд┐рд╡рдб рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЖрд╡реГрддреНрддреАрдЪрд╛ рдкрд╣рд┐рд▓рд╛ рд╕реЗрд▓ рддрдпрд╛рд░ рдХрд░рддрд╛рдирд╛рдЪ рдХреЗрд▓реА рдЬрд╛рддреЗ (рддреБрдореНрд╣реА рд╣реЛрд╕реНрдЯ рдЖрд╡реГрддреНрддреАрдкреЗрдХреНрд╖рд╛ рдЬреБрдиреНрдпрд╛ рдХреЛрдгрддреНрдпрд╛рд╣реА рдЖрд╡реГрддреНрддреАрдЪреЗ рд╕реЗрд▓ рд╣реЛрд╕реНрдЯ рдХрд░реВ рд╢рдХрддрд╛).
рд╕рд░реНрд╡рдХрд╛рд╣реА рд╕реНрдерд╛рдкрд┐рдд рдХреЗрд▓реНрдпрд╛рдирдВрддрд░, рдЖрдореНрд╣реА рдкрд┐рдВрдЬрд░рд╛ рд▓реЙрдиреНрдЪ рдХрд░рддреЛ!
# cbsd jstart bitcoind
рдкрд░рдВрддреБ рдЖрдкрд▓реНрдпрд╛рд▓рд╛ рдкрд┐рдВрдЬрд▒реНрдпрд╛рдд рд╕реЙрдлреНрдЯрд╡реЗрдЕрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рд╛рд╡реЗ рд▓рд╛рдЧреЗрд▓.
# jls
JID IP Address Hostname Path
1 192.168.0.1 bitcoind.space.com /zroot/jails/jails/bitcoind
jexec bitcoind
рд╕реЗрд▓ рдХрдиреНрд╕реЛрд▓рдордзреНрдпреЗ рдЬрд╛рдгреНрдпрд╛рд╕рд╛рдареА
рдЖрдгрд┐ рдЖрдзреАрдЪ рд╕реЗрд▓рдЪреНрдпрд╛ рдЖрдд рдЖрдореНрд╣реА рд╕реЙрдлреНрдЯрд╡реЗрдЕрд░ рддреНрдпрд╛рдЪреНрдпрд╛ рдЕрд╡рд▓рдВрдмрдирд╛рд╕рд╣ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЛ (рдЖрдордЪреА рд╣реЛрд╕реНрдЯ рд╕рд┐рд╕реНрдЯрдо рд╕реНрд╡рдЪреНрдЫ рд░рд╛рд╣рддреЗ)
bitcoind:/@[15:25] # pkg install bitcoin-daemon bitcoin-utils
bitcoind:/@[15:30] # sysrc bitcoind_enable=YES
bitcoind:/@[15:30] # service bitcoind start
рдкрд┐рдВрдЬрд▒реНрдпрд╛рдд рдмрд┐рдЯрдХреЙрдЗрди рдЖрд╣реЗ, рдкрд░рдВрддреБ рдЖрдореНрд╣рд╛рд▓рд╛ рдирд┐рдирд╛рд╡реАрдкрдгрд╛рдЪреА рдЧрд░рдЬ рдЖрд╣реЗ рдХрд╛рд░рдг рдЖрдореНрд╣рд╛рд▓рд╛ TOP рдиреЗрдЯрд╡рд░реНрдХрджреНрд╡рд╛рд░реЗ рдХрд╛рд╣реА рдкрд┐рдВрдЬрд▒реНрдпрд╛рдВрд╢реА рдХрдиреЗрдХреНрдЯ рдХрд░рд╛рдпрдЪреЗ рдЖрд╣реЗ. рд╕рд░реНрд╡рд╕рд╛рдзрд╛рд░рдгрдкрдгреЗ, рдЖрдореНрд╣реА рд╕рдВрд╢рдпрд╛рд╕реНрдкрдж рд╕реЙрдлреНрдЯрд╡реЗрдЕрд░рд╕рд╣ рдмрд╣реБрддреЗрдХ рд╕реЗрд▓ рдХреЗрд╡рд│ рдкреНрд░реЙрдХреНрд╕реАрджреНрд╡рд╛рд░реЗ рдЪрд╛рд▓рд╡рд┐рдгреНрдпрд╛рдЪреА рдпреЛрдЬрдирд╛ рдХрд░рддреЛ. рдирд╛ рдзрдиреНрдпрд╡рд╛рдж pf
рддреБрдореНрд╣реА рд╕реНрдерд╛рдирд┐рдХ рдиреЗрдЯрд╡рд░реНрдХрд╡рд░реАрд▓ IP рдкрддреНрддреНрдпрд╛рдВрдЪреНрдпрд╛ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╢реНрд░реЗрдгреАрд╕рд╛рдареА NAT рдЕрдХреНрд╖рдо рдХрд░реВ рд╢рдХрддрд╛ рдЖрдгрд┐ NAT рд▓рд╛ рдлрдХреНрдд рдЖрдордЪреНрдпрд╛ TOR рдиреЛрдбрд╕рд╛рдареА рдЕрдиреБрдорддреА рджреЗрдК рд╢рдХрддрд╛. рдЕрд╢рд╛рдкреНрд░рдХрд╛рд░реЗ, рдЬрд░реА рдорд╛рд▓рд╡реЗрдЕрд░ рд╕реЗрд▓рдордзреНрдпреЗ рдЖрд▓рд╛ рддрд░реАрд╣реА, рддреЛ рдмрд╣реБрдзрд╛ рдмрд╛рд╣реЗрд░реАрд▓ рдЬрдЧрд╛рд╢реА рд╕рдВрд╡рд╛рдж рд╕рд╛рдзрдгрд╛рд░ рдирд╛рд╣реА рдЖрдгрд┐ рдЬрд░ рддрд╕реЗ рдЭрд╛рд▓реЗ рддрд░ рддреЗ рдЖрдордЪреНрдпрд╛ рд╕рд░реНрд╡реНрд╣рд░рдЪрд╛ IP рдЙрдШрдб рдХрд░рдгрд╛рд░ рдирд╛рд╣реА. рдореНрд╣рдгреВрди, рдЖрдореНрд╣реА тАЬ.onionтАЭ рд╕реЗрд╡рд╛ рдореНрд╣рдгреВрди рдЖрдгрд┐ рд╡реИрдпрдХреНрддрд┐рдХ рд╕реЗрд▓рдордзреНрдпреЗ рдЗрдВрдЯрд░рдиреЗрдЯ рдНрдХреНрд╕реЗрд╕ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдкреНрд░реЙрдХреНрд╕реА рдореНрд╣рдгреВрди рд╕реЗрд╡рд╛ тАЬрдлреЙрд░рд╡рд░реНрдбтАЭ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рджреБрд╕рд░рд╛ рд╕реЗрд▓ рддрдпрд╛рд░ рдХрд░рддреЛ.
# cbsd jsconstruct-tui
# cbsd jstart tor
# jexec tor
tor:/@[15:38] # pkg install tor
tor:/@[15:38] # sysrc tor_enable=YES
tor:/@[15:38] # ee /usr/local/etc/tor/torrc
рд╕реНрдерд╛рдирд┐рдХ рдкрддреНрддреНрдпрд╛рд╡рд░ рдРрдХрдгреНрдпрд╛рд╕рд╛рдареА рд╕реЗрдЯ рдХрд░рд╛ (рд╕рд░реНрд╡ рд╕реЗрд▓рд╕рд╛рдареА рдЙрдкрд▓рдмреНрдз)
SOCKSPort 192.168.0.2:9050
рдкреВрд░реНрдг рдЖрдирдВрджрд╛рд╕рд╛рдареА рдЖрдгрдЦреА рдХрд╛рдп рд╣рд╡реЗ? рд╣реЛрдп, рдЖрдореНрд╣рд╛рд▓рд╛ рдЖрдордЪреНрдпрд╛ рд╡реЗрдмрд╕рд╛рдареА рдПрдХ рд╕реЗрд╡рд╛ рд╣рд╡реА рдЖрд╣реЗ, рдХрджрд╛рдЪрд┐рдд рдПрдХрд╛рдкреЗрдХреНрд╖рд╛ рдЬрд╛рд╕реНрдд. рдЪрд▓рд╛ nginx рд▓рд╛рдБрдЪ рдХрд░реВ, рдЬреЗ рд░рд┐рд╡реНрд╣рд░реНрд╕-рдкреНрд░реЙрдХреНрд╕реА рдореНрд╣рдгреВрди рдХрд╛рдо рдХрд░реЗрд▓ рдЖрдгрд┐ Let's Encrypt рдкреНрд░рдорд╛рдгрдкрддреНрд░рд╛рдВрдЪреЗ рдиреВрддрдиреАрдХрд░рдг рдХрд░рдгреНрдпрд╛рдЪреА рдХрд╛рд│рдЬреА рдШреЗрдИрд▓
# cbsd jsconstruct-tui
# cbsd jstart nginx-rev
# jexec nginx-rev
nginx-rev:/@[15:47] # pkg install nginx py36-certbot
рдЖрдгрд┐ рдореНрд╣рдгреВрди рдЖрдореНрд╣реА 150 MB рдЕрд╡рд▓рдВрдмрд┐рддреНрд╡ рдПрдХрд╛ рдкрд┐рдВрдЬрд▒реНрдпрд╛рдд рдареЗрд╡рд▓реЗ. рдЖрдгрд┐ рдпрдЬрдорд╛рди рдЕрдЬреВрдирд╣реА рд╕реНрд╡рдЪреНрдЫ рдЖрд╣реЗ.
рдЪрд▓рд╛ рдирдВрддрд░ nginx рд╕реЗрдЯ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдкрд░рдд рдпреЗрдК, рдЖрдореНрд╣рд╛рд▓рд╛ рдЖрдордЪреНрдпрд╛ рдкреЗрдореЗрдВрдЯ рдЧреЗрдЯрд╡реЗрд╕рд╛рдареА рдиреЛрдбрдЬ рдЖрдгрд┐ рд░рд╕реНрдЯ рдЖрдгрд┐ рд╡реЗрдм рдНрдкреНрд▓рд┐рдХреЗрд╢рдирд╕рд╛рдареА рдЖрдгрдЦреА рджреЛрди рд╕реЗрд▓ рд╡рд╛рдврд╡рдгреНрдпрд╛рдЪреА рдЧрд░рдЬ рдЖрд╣реЗ, рдЬреЗ рдХрд╛рд╣реА рдХрд╛рд░рдгрд╛рд╕реНрддрд╡ Apache рдЖрдгрд┐ PHP рдордзреНрдпреЗ рдЖрд╣реЗ рдЖрдгрд┐ рдирдВрддрд░рдЪреНрдпрд╛рд╕рд╛рдареА MySQL рдбреЗрдЯрд╛рдмреЗрд╕ рджреЗрдЦреАрд▓ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ.
# cbsd jsconstruct-tui
# cbsd jstart paygw
# jexec paygw
paygw:/@[15:55] # pkg install git node npm
paygw:/@[15:55] # curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
...рдЖрдгрд┐ рдЖрдгрдЦреА 380 MB рдкреЕрдХреЗрдЬ рд╡реЗрдЧрд│реЗ рдХреЗрд▓реЗ
рдкреБрдвреЗ, рдЖрдореНрд╣реА рдЖрдордЪреЗ рдНрдкреНрд▓рд┐рдХреЗрд╢рди git рд╕рд╣ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рддреЛ рдЖрдгрд┐ рддреЗ рд▓рд╛рдБрдЪ рдХрд░рддреЛ.
# cbsd jsconstruct-tui
# cbsd jstart webapp
# jexec webapp
webapp:/@[16:02] # pkg install mariadb104-server apache24 php74 mod_php74 php74-pdo_mysql
450 MB рдкреЕрдХреЗрдЬреЗрд╕. рдкрд┐рдВрдЬрд▒реНрдпрд╛рдд
рдпреЗрдереЗ рдЖрдореНрд╣реА рдбреЗрд╡реНрд╣рд▓рдкрд░рд▓рд╛ SSH рджреНрд╡рд╛рд░реЗ рдереЗрдЯ рд╕реЗрд▓рдордзреНрдпреЗ рдкреНрд░рд╡реЗрд╢ рджреЗрддреЛ, рддреЗ рддреЗрдереЗ рд╕рд░реНрд╡рдХрд╛рд╣реА рд╕реНрд╡рддрдГ рдХрд░рддреАрд▓:
webapp:/@[16:02] # ee /etc/ssh/sshd_config
Port 2267
тАФ рд╕реЗрд▓рдЪреЗ SSH рдкреЛрд░реНрдЯ рдХреЛрдгрддреНрдпрд╛рд╣реА рдЕрдирд┐рдпрдВрддреНрд░рд┐рдд рдкреЛрд░реНрдЯрдордзреНрдпреЗ рдмрджрд▓рд╛
webapp:/@[16:02] # sysrc sshd_enable=YES
webapp:/@[16:02] # service sshd start
рдмрд░рдВ, рд╕реЗрд╡рд╛ рдЪрд╛рд▓реВ рдЖрд╣реЗ, рдлрдХреНрдд рдирд┐рдпрдо рдЬреЛрдбрдгреЗ рдмрд╛рдХреА рдЖрд╣реЗ pf
рдлрд╛рдпрд░рд╡реЙрд▓
рдЖрдкрд▓реНрдпрд╛ рд╕реЗрд▓рдордзреНрдпреЗ рдХрд╛рдп IP рдЖрд╣реЗ рдЖрдгрд┐ рдЖрдкрд▓реЗ "рд╕реНрдерд╛рдирд┐рдХ рдХреНрд╖реЗрддреНрд░" рд╕рд╛рдорд╛рдиреНрдпрддрдГ рдХрд╕реЗ рджрд┐рд╕рддреЗ рддреЗ рдкрд╛рд╣реВ.
# jls
JID IP Address Hostname Path
1 192.168.0.1 bitcoind.space.com /zroot/jails/jails/bitcoind
2 192.168.0.2 tor.space.com /zroot/jails/jails/tor
3 192.168.0.3 nginx-rev.space.com /zroot/jails/jails/nginx-rev
4 192.168.0.4 paygw.space.com /zroot/jails/jails/paygw
5 192.168.0.5 webapp.my.domain /zroot/jails/jails/webapp
рдЖрдгрд┐ рдПрдХ рдирд┐рдпрдо рдЬреЛрдбрд╛
# ee /etc/pf.conf
## SSH for web-Devs
IP_JAIL="192.168.0.5"
PORT_JAIL="{ 2267 }"
rdr pass on $IF_PUBLIC proto tcp from any to $IP_PUBLIC port $PORT_JAIL -> $IP_JAIL
рдмрд░рдВ, рдЖрдореНрд╣реА рдЗрдереЗ рдЖрд▓реЛ рдЕрд╕рд▓реНрдпрд╛рдиреЗ, рд░рд┐рд╡реНрд╣рд░реНрд╕-рдкреНрд░реЙрдХреНрд╕реАрд╕рд╛рдареА рдПрдХ рдирд┐рдпрдо рджреЗрдЦреАрд▓ рдЬреЛрдбреВрдпрд╛:
## web-ports for nginx-rev
IP_JAIL="192.168.0.3"
PORT_JAIL="{ 80, 443 }"
rdr pass on $IF_PUBLIC proto tcp from any to $IP_PUBLIC port $PORT_JAIL -> $IP_JAIL
# pfctl -f /etc/pf.conf
рдмрд░рдВ, рдЖрддрд╛ рдмрд┐рдЯрдХреЙрдЗрдиреНрд╕рдмрджреНрджрд▓ рдереЛрдбреЗрд╕реЗ
рдЖрдордЪреНрдпрд╛рдХрдбреЗ рдПрдХ рд╡реЗрдм рдНрдкреНрд▓рд┐рдХреЗрд╢рди рдЖрд╣реЗ рдЬреЗ рдмрд╛рд╣реЗрд░реВрди рдЙрдШрдб рдЖрд╣реЗ рдЖрдгрд┐ рддреЗ рдЖрдордЪреНрдпрд╛ рдкреЗрдореЗрдВрдЯ рдЧреЗрдЯрд╡реЗрд╢реА рд╕реНрдерд╛рдирд┐рдХ рдкрд╛рддрд│реАрд╡рд░ рдмреЛрд▓рддреЗ. рдЖрддрд╛ рдЖрдкрд▓реНрдпрд╛рд▓рд╛ рдмрд┐рдЯрдХреЙрдЗрди рдиреЗрдЯрд╡рд░реНрдХрд╢реА рд╕рдВрд╡рд╛рдж рд╕рд╛рдзрдгреНрдпрд╛рд╕рд╛рдареА рдПрдХ рдХрд╛рд░реНрдпрд░рдд рд╡рд╛рддрд╛рд╡рд░рдг рддрдпрд╛рд░ рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ - рдиреЛрдб bitcoind
рд╣рд╛ рдлрдХреНрдд рдПрдХ рдбрд┐рдорди рдЖрд╣реЗ рдЬреЛ рдмреНрд▓реЙрдХрдЪреЗрдирдЪреА рд╕реНрдерд╛рдирд┐рдХ рдкреНрд░рдд рдЕрджреНрдпрдпрд╛рд╡рдд рдареЗрд╡рддреЛ. рдпрд╛ рдбрд┐рдордирдордзреНрдпреЗ RPC рдЖрдгрд┐ рд╡реЙрд▓реЗрдЯ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдЖрд╣реЗ, рдкрд░рдВрддреБ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╡рд┐рдХрд╛рд╕рд╛рд╕рд╛рдареА рдЕрдзрд┐рдХ рд╕реЛрдпреАрд╕реНрдХрд░ "рд░реЕрдкрд░" рдЖрд╣реЗрдд. рд╕реБрд░реБрд╡рд╛рддреАрд▓рд╛, рдЖрдореНрд╣реА рдареЗрд╡рдгреНрдпрд╛рдЪрд╛ рдирд┐рд░реНрдгрдп рдШреЗрддрд▓рд╛ electrum
CLI рд╡реЙрд▓реЗрдЯ рдЖрд╣реЗ.
рд▓реЕрдкрдЯреЙрдк рдЖрддреНрддрд╛ рдЖрдореНрд╣реА рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд╕рд░реНрд╡реНрд╣рд░рд╕рд╣ рдЗрд▓реЗрдХреНрдЯреНрд░рдо рд╡рд╛рдкрд░реВ, рдЖрдгрд┐ рдирдВрддрд░ рдЖрдореНрд╣реА рддреЗ рджреБрд╕рд░реНрдпрд╛ рд╕реЗрд▓рдордзреНрдпреЗ рд╡рд╛рдврд╡реВ
# cbsd jsconstruct-tui
# cbsd jstart electrum
# jexec electrum
electrum:/@[8:45] # pkg install py36-electrum
рдЖрдордЪреНрдпрд╛ рдкрд┐рдВрдЬрд▒реНрдпрд╛рдд рдЖрдгрдЦреА 700 MB рд╕реЙрдлреНрдЯрд╡реЗрдЕрд░
electrum:/@[8:53] # adduser
Username: wallet
Full name:
Uid (Leave empty for default):
Login group [wallet]:
Login group is wallet. Invite wallet into other groups? []:
Login class [default]:
Shell (sh csh tcsh nologin) [sh]: tcsh
Home directory [/home/wallet]:
Home directory permissions (Leave empty for default):
Use password-based authentication? [yes]: no
Lock out the account after creation? [no]:
Username : wallet
Password : <disabled>
Full Name :
Uid : 1001
Class :
Groups : wallet
Home : /home/wallet
Home Mode :
Shell : /bin/tcsh
Locked : no
OK? (yes/no): yes
adduser: INFO: Successfully added (wallet) to the user database.
Add another user? (yes/no): no
Goodbye!
electrum:/@[8:53] # su wallet
electrum:/@[8:53] # su wallet
wallet@electrum:/ % electrum-3.6 create
{
"msg": "Please keep your seed in a safe place; if you lose it, you will not be able to restore your wallet.",
"path": "/usr/home/wallet/.electrum/wallets/default_wallet",
"seed": "jealous win pig material ribbon young punch visual okay cactus random bird"
}
рдЖрддрд╛ рдЖрдореНрд╣реА рдПрдХ рдкрд╛рдХреАрдЯ рддрдпрд╛рд░ рдХреЗрд▓реЗ рдЖрд╣реЗ.
wallet@electrum:/ % electrum-3.6 listaddresses
[
"18WEhbjvMLGRMfwudzUrUd25U5C7uZYkzE",
"14XHSejhxsZNDRtk4eFbqAX3L8rftzwQQU",
"1KQXaN8RXiCN1ne9iYngUWAr6KJ6d4pPas",
...
"1KeVcAwEYhk29qEyAfPwcBgF5mMMoy4qjw",
"18VaUuSeBr6T2GwpSHYF3XyNgLyLCt1SWk"
]
wallet@electrum:/ % electrum-3.6 help
рдЖрдордЪреНрдпрд╛рдХрдбреЗ рдСрди-рдЪреЗрди рдЖрддрд╛рдкрд╛рд╕реВрди рдХреЗрд╡рд│ рдорд░реНрдпрд╛рджрд┐рдд рд▓реЛрдХрдЪ рд╡реЙрд▓реЗрдЯрд╢реА рдХрдиреЗрдХреНрдЯ рд╣реЛрдК рд╢рдХрддреАрд▓. рдмрд╛рд╣реЗрд░реВрди рдпрд╛ рд╕реЗрд▓рдордзреНрдпреЗ рдкреНрд░рд╡реЗрд╢ рдЙрдШрдбреВ рдирдпреЗ рдореНрд╣рдгреВрди, SSH рджреНрд╡рд╛рд░реЗ рдХрдиреЗрдХреНрд╢рди TOP (VPN рдЪреА рд╡рд┐рдХреЗрдВрджреНрд░рд┐рдд рдЖрд╡реГрддреНрддреА) рджреНрд╡рд╛рд░реЗ рд╣реЛрддреАрд▓. рдЖрдореНрд╣реА рд╕реЗрд▓рдордзреНрдпреЗ SSH рд▓рд╛рдБрдЪ рдХрд░рддреЛ, рдкрд░рдВрддреБ рд╣реЛрд╕реНрдЯрд╡рд░ рдЖрдордЪреНрдпрд╛ pf.conf рд▓рд╛ рд╕реНрдкрд░реНрд╢ рдХрд░реВ рдирдХрд╛.
electrum:/@[9:00] # sysrc sshd_enable=YES
electrum:/@[9:00] # service sshd start
рдЖрддрд╛ рд╡реЙрд▓реЗрдЯрдЪреНрдпрд╛ рдЗрдВрдЯрд░рдиреЗрдЯ рдкреНрд░рд╡реЗрд╢рд╛рд╕рд╣ рд╕реЗрд▓ рдмрдВрдж рдХрд░реВрдпрд╛. NATEd рдирд╕рд▓реЗрд▓реНрдпрд╛ рджреБрд╕рд░реНтАНрдпрд╛ рд╕рдмрдиреЗрдЯ рд╕реНрдкреЗрд╕рдЪрд╛ IP рдкрддреНрддрд╛ рджреЗрдК. рдЖрдзреА рдмрджрд▓реВрдпрд╛ /etc/pf.conf
рдпрдЬрдорд╛рди рд╡рд░
# ee /etc/pf.conf
JAIL_IP_POOL="192.168.0.0/24"
рддреЗ рдмрджрд▓реВрдпрд╛ JAIL_IP_POOL="192.168.0.0/25"
, рдЕрд╢рд╛ рдкреНрд░рдХрд╛рд░реЗ рд╕рд░реНрд╡ рдкрддреНрддреЗ 192.168.0.126-255 рдпрд╛рдВрдирд╛ рдЗрдВрдЯрд░рдиреЗрдЯрд╡рд░ рдереЗрдЯ рдкреНрд░рд╡реЗрд╢ рдорд┐рд│рдгрд╛рд░ рдирд╛рд╣реА. рдПрдХ рдкреНрд░рдХрд╛рд░рдЪреЗ рд╕реЙрдлреНрдЯрд╡реЗрдЕрд░ "рдПрдЕрд░-рдЧреЕрдк" рдиреЗрдЯрд╡рд░реНрдХ. рдЖрдгрд┐ NAT рдирд┐рдпрдо рддрд╕рд╛рдЪ рдЖрд╣реЗ
nat pass on $IF_PUBLIC from $JAIL_IP_POOL to any -> $IP_PUBLIC
рдирд┐рдпрдорд╛рдВрдЪреЗ рдУрд╡реНрд╣рд░рд▓реЛрдбрд┐рдВрдЧ
# pfctl -f /etc/pf.conf
рдЖрддрд╛ рдЖрдкрд▓рд╛ рд╕реЗрд▓ рдШреЗрдК
# cbsd jconfig jname=electrum
jset mode=quiet jname=electrum ip4_addr="192.168.0.200"
Remove old IP: /sbin/ifconfig em0 inet 192.168.0.6 -alias
Setup new IP: /sbin/ifconfig em0 inet 192.168.0.200 alias
ip4_addr: 192.168.0.200
рд╣рдореНрдо, рдкрдг рдЖрддрд╛ рд╕рд┐рд╕реНрдЯреАрдо рд╕реНрд╡рддрдГрдЪ рдЖрдордЪреНрдпрд╛рд╕рд╛рдареА рдХрд╛рдо рдХрд░рдгреЗ рдерд╛рдВрдмрд╡реЗрд▓. рддрдерд╛рдкрд┐, рдЖрдореНрд╣реА рд╕рд┐рд╕реНрдЯрдо рдкреНрд░реЙрдХреНрд╕реА рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реВ рд╢рдХрддреЛ. рдкрдг рдПрдХ рдЧреЛрд╖реНрдЯ рдЖрд╣реЗ, TOR рд╡рд░ рддреА SOCKS5 рдкреНрд░реЙрдХреНрд╕реА рдЖрд╣реЗ, рдЖрдгрд┐ рд╕реЛрдпреАрд╕рд╛рдареА рдЖрдореНрд╣рд╛рд▓рд╛ HTTP рдкреНрд░реЙрдХреНрд╕реА рджреЗрдЦреАрд▓ рд╣рд╡реА рдЖрд╣реЗ.
# cbsd jsconstruct-tui
# cbsd jstart polipo
# jexec polipo
polipo:/@[9:28] # pkg install polipo
polipo:/@[9:28] # ee /usr/local/etc/polipo/config
socksParentProxy = "192.168.0.2:9050"
socksProxyType = socks5
polipo:/@[9:42] # sysrc polipo_enable=YES
polipo:/@[9:43] # service polipo start
рдмрд░рдВ, рдЖрддрд╛ рдЖрдордЪреНрдпрд╛ рд╕рд┐рд╕реНрдЯрдордордзреНрдпреЗ рджреЛрди рдкреНрд░реЙрдХреНрд╕реА рд╕рд░реНрд╡реНрд╣рд░ рдЖрд╣реЗрдд рдЖрдгрд┐ рджреЛрдиреНрд╣реА TOR рджреНрд╡рд╛рд░реЗ рдЖрдЙрдЯрдкреБрдЯ: socks5://192.168.0.2:9050 рдЖрдгрд┐
рдЖрддрд╛ рдЖрдореНрд╣реА рдЖрдордЪреЗ рд╡реЙрд▓реЗрдЯ рд╡рд╛рддрд╛рд╡рд░рдг рдХреЙрдиреНрдлрд┐рдЧрд░ рдХрд░реВ рд╢рдХрддреЛ
# jexec electrum
electrum:/@[9:45] # su wallet
wallet@electrum:/ % ee ~/.cshrc
#in the end of file proxy config
setenv http_proxy http://192.168.0.6:8123
setenv https_proxy http://192.168.0.6:8123
рдмрд░рдВ, рдЖрддрд╛ рд╢реЗрд▓ рдкреНрд░реЙрдХреНрд╕реА рдЕрдВрддрд░реНрдЧрдд рдХрд╛рд░реНрдп рдХрд░реЗрд▓. рдЬрд░ рдЖрдкрд▓реНрдпрд╛рд▓рд╛ рдкреЕрдХреЗрдЬреЗрд╕ рдЗрдиреНрд╕реНрдЯреЙрд▓ рдХрд░рд╛рдпрдЪреЗ рдЕрд╕рддреАрд▓ рддрд░ рдЖрдкрдг рддреНрдпрд╛рдд рдЬреЛрдбрд▓реЗ рдкрд╛рд╣рд┐рдЬреЗ /usr/local/etc/pkg.conf
рдкрд┐рдВрдЬрд▒реНрдпрд╛рдЪреНрдпрд╛ рдореБрд│рд╛рдЦрд╛рд▓реА
pkg_env: {
http_proxy: "http://my_proxy_ip:8123",
}
рдмрд░рдВ, рдЖрддрд╛ рд╡реЙрд▓реЗрдЯ рд╕реЗрд▓рдордзреНрдпреЗ рдЖрдордЪреНрдпрд╛ SSH рд╕реЗрд╡реЗрдЪрд╛ рдкрддреНрддрд╛ рдореНрд╣рдгреВрди TOR рд▓рдкрд▓реЗрд▓реА рд╕реЗрд╡рд╛ рдЬреЛрдбрдгреНрдпрд╛рдЪреА рд╡реЗрд│ рдЖрд▓реА рдЖрд╣реЗ.
# jexec tor
tor:/@[9:59] # ee /usr/local/etc/tor/torrc
HiddenServiceDir /var/db/tor/electrum/
HiddenServicePort 22 192.168.0.200:22
tor:/@[10:01] # mkdir /var/db/tor/electrum
tor:/@[10:01] # chown -R _tor:_tor /var/db/tor/electrum
tor:/@[10:01] # chmod 700 /var/db/tor/electrum
tor:/@[10:03] # service tor restart
tor:/@[10:04] # cat /var/db/tor/electrum/hostname
mdjus4gmduhofwcso57b3zl3ufoitguh2knitjco5cmgrokpreuxumad.onion
рд╣рд╛ рдЖрдордЪрд╛ рдХрдиреЗрдХреНрд╢рди рдкрддреНрддрд╛ рдЖрд╣реЗ. рдЪрд▓рд╛ рд╕реНрдерд╛рдирд┐рдХ рдорд╢реАрдирд╡рд░реВрди рддрдкрд╛рд╕реВрдпрд╛. рдкрд░рдВрддреБ рдкреНрд░рдердо рдЖрдореНрд╣рд╛рд▓рд╛ рдЖрдордЪреА SSH рдХреА рдЬреЛрдбрдгреНрдпрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЖрд╣реЗ:
wallet@electrum:/ % mkdir ~/.ssh
wallet@electrum:/ % ee ~/.ssh/authorized_keys
ecdsa-sha2-nistp521 AAAAE2VjZHNhLXNoYTItbmlzdHA1MjEAAAAIbmlzdHA1MjEAAACFBAG9Fk2Lqi4GQ8EXZrsH3EgSrVIQPQaAlS38MmJLBabihv9KHIDGXH7r018hxqLNNGbaJWO/wrWk7sG4T0yLHAbdQAFsMYof9kjoyuG56z0XZ8qaD/X/AjrhLMsIoBbUNj0AzxjKNlPJL4NbHsFwbmxGulKS0PdAD5oLcTQi/VnNdU7iFw== user@local
рдмрд░рдВ, рд▓рд┐рдирдХреНрд╕ рдХреНрд▓рд╛рдпрдВрдЯ рдорд╢реАрдирд╡рд░реВрди
user@local ~$ nano ~/.ssh/config
#remote electrum wallet
Host remotebtc
User wallet
Port 22
Hostname mdjus4gmduhofwcso57b3zl3ufoitguh2knitjco5cmgrokpreuxumad.onion
ProxyCommand /bin/ncat --proxy localhost:9050 --proxy-type socks5 %h %p
рдЪрд▓рд╛ рдХрдиреЗрдХреНрдЯ рдХрд░реВрдпрд╛ (рд╣реЗ рдХрд╛рд░реНрдп рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рддреБрдореНрд╣рд╛рд▓рд╛ 9050 рд╡рд░ рдРрдХрдгрд╛рд░рд╛ рд╕реНрдерд╛рдирд┐рдХ TOR рдбрд┐рдорди рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ)
user@local ~$ ssh remotebtc
The authenticity of host 'mdjus4gmduhofwcso57b3zl3ufoitguh2knitjco5cmgrokpreuxumad.onion (<no hostip for proxy command>)' can't be established.
ECDSA key fingerprint is SHA256:iW8FKjhVF4yyOZB1z4sBkzyvCM+evQ9cCL/EuWm0Du4.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added 'mdjus4gmduhofwcso57b3zl3ufoitguh2knitjco5cmgrokpreuxumad.onion' (ECDSA) to the list of known hosts.
FreeBSD 12.1-RELEASE-p1 GENERIC
To save disk space in your home directory, compress files you rarely
use with "gzip filename".
-- Dru <[email protected]>
wallet@electrum:~ % logout
рдпрд╢!
рддреНрд╡рд░рд┐рдд рдЖрдгрд┐ рд╕реВрдХреНрд╖реНрдо-рдкреЗрдореЗрдВрдЯрд╕рд╣ рдХрд╛рд░реНрдп рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдЖрдореНрд╣рд╛рд▓рд╛ рдиреЛрдб рджреЗрдЦреАрд▓ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ c-lightning
рдХрд╛рдордХрд╛рдЬрд╛рд╕рд╛рдареА рдЖрд╡рд╢реНрдпрдХ bitcoind
рдкрдг рд╣реЛрдп.
*рд╡реЗрдЧрд╡реЗрдЧрд│реНрдпрд╛ рднрд╛рд╖рд╛рдВрдордзреНрдпреЗ рд▓рд╛рдЗрдЯрдирд┐рдВрдЧ рдиреЗрдЯрд╡рд░реНрдХ рдкреНрд░реЛрдЯреЛрдХреЙрд▓рдЪреА рд╡рд┐рд╡рд┐рдз рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рдЖрд╣реЗрдд. рдЖрдореНрд╣реА рдЪрд╛рдЪрдгреА рдХреЗрд▓реЗрд▓реНрдпрд╛рдВрдкреИрдХреА, c-рд▓рд╛рдЗрдЯрдирд┐рдВрдЧ (C рдордзреНрдпреЗ рд▓рд┐рд╣рд┐рд▓реЗрд▓реЗ) рд╕рд░реНрд╡рд╛рдд рд╕реНрдерд┐рд░ рдЖрдгрд┐ рд╕рдВрд╕рд╛рдзрди-рдХрд╛рд░реНрдпрдХреНрд╖рдо рд╡рд╛рдЯрд▓реЗ
# cbsd jsconstruct-tui
# cbsd jstart cln
# jexec cln
lightning:/@[10:23] # adduser
Username: lightning
...
lightning:/@[10:24] # pkg install git
lightning:/@[10:23] # su lightning
cd ~ && git clone https://github.com/ElementsProject/lightning
lightning@lightning:~ % exit
lightning:/@[10:30] # cd /home/lightning/lightning/
lightning:/home/lightning/lightning@[10:31] # pkg install autoconf automake gettext git gmp gmake libtool python python3 sqlite3 libsodium py36-mako bash bitcoin-utils
lightning:/home/lightning/lightning@[10:34] # ./configure && gmake && gmake install
рдЖрд╡рд╢реНрдпрдХ рд╕рд░реНрд╡рдХрд╛рд╣реА рд╕рдВрдХрд▓рд┐рдд рдЖрдгрд┐ рд╕реНрдерд╛рдкрд┐рдд рдХреЗрд▓реЗрд▓реЗ рдЕрд╕рддрд╛рдирд╛, рдпрд╛рд╕рд╛рдареА рдПрдХ RPC рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рддрдпрд╛рд░ рдХрд░реВрдпрд╛ lightningd
╨▓ bitcoind
# jexec bitcoind
bitcoind:/@[10:36] # ee /usr/local/etc/bitcoin.conf
rpcbind=192.168.0.1
rpcuser=test
rpcpassword=test
#allow only c-lightning
rpcallowip=192.168.0.7/32
bitcoind:/@[10:39] # service bitcoind restart
рдЬрд░ рддреБрдореНрд╣реА рдЙрдкрдпреБрдХреНрддрддрд╛ рд▓рдХреНрд╖рд╛рдд рдШреЗрддрд▓реА рддрд░ рд╕реЗрд▓рдордзреАрд▓ рдорд╛рдЭреЗ рдЧреЛрдВрдзрд│рд▓реЗрд▓реЗ рд╕реНрд╡рд┐рдЪрд┐рдВрдЧ рдЗрддрдХреЗ рдЧреЛрдВрдзрд│рд▓реЗрд▓реЗ рдирд╛рд╣реА tmux
, рдЬреЗ рддреБрдореНрд╣рд╛рд▓рд╛ рдПрдХрд╛ рд╕рддреНрд░рд╛рдд рдЕрдиреЗрдХ рдЯрд░реНрдорд┐рдирд▓ рдЙрдк-рд╕рддреНрд░ рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рд╕ рдЕрдиреБрдорддреА рджреЗрддреЗ. рдЕреЕрдирд╛рд▓реЙрдЧ: screen
рддреНрдпрд╛рдореБрд│реЗ, рдЖрдореНрд╣рд╛рд▓рд╛ рдЖрдордЪреНрдпрд╛ рдиреЛрдбрдЪрд╛ рдЦрд░рд╛ IP рдЙрдШрдб рдХрд░рд╛рдпрдЪрд╛ рдирд╛рд╣реА рдЖрдгрд┐ рдЖрдореНрд╣реА рд╕рд░реНрд╡ рдЖрд░реНрдерд┐рдХ рд╡реНрдпрд╡рд╣рд╛рд░ TOP рджреНрд╡рд╛рд░реЗ рдХрд░реВ рдЗрдЪреНрдЫрд┐рддреЛ. рддреНрдпрд╛рдореБрд│реЗ рджреБрд╕рд▒реНрдпрд╛ .рдХрд╛рдВрджреНрдпрд╛рдЪреА рдЧрд░рдЬ рдирд╛рд╣реА.
# jexec tor
tor:/@[9:59] # ee /usr/local/etc/tor/torrc
HiddenServiceDir /var/db/tor/cln/
HiddenServicePort 9735 192.168.0.7:9735
tor:/@[10:01] # mkdir /var/db/tor/cln
tor:/@[10:01] # chown -R _tor:_tor /var/db/tor/cln
tor:/@[10:01] # chmod 700 /var/db/tor/cln
tor:/@[10:03] # service tor restart
tor:/@[10:04] # cat /var/db/tor/cln/hostname
en5wbkavnytti334jc5uzaudkansypfs6aguv6kech4hbzpcz2ove3yd.onion
рдЖрддрд╛ c-lightning рд╕рд╛рдареА рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдмрдирд╡реВ
lightning:/home/lightning/lightning@[10:31] # su lightning
lightning@lightning:~ % mkdir .lightning
lightning@lightning:~ % ee .lightning/config
alias=My-LN-Node
bind-addr=192.168.0.7:9735
rgb=ff0000
announce-addr=en5wbkavnytti334jc5uzaudkansypfs6aguv6kech4hbzpcz2ove3yd.onion:9735
network=bitcoin
log-level=info
fee-base=0
fee-per-satoshi=1
proxy=192.168.0.2:9050
log-file=/home/lightning/.lightning/c-lightning.log
min-capacity-sat=200000
# sparko plugin
# https://github.com/fiatjaf/lightningd-gjson-rpc/tree/master/cmd/sparko
sparko-host=192.168.0.7
sparko-port=9737
sparko-tls-path=sparko-tls
#sparko-login=mywalletusername:mywalletpassword
#sparko-keys=masterkey;secretread:+listchannels,+listnodes;secretwrite:+invoice,+listinvoices,+delinvoice,+decodepay,+waitpay,+waitinvoice
sparko-keys=masterkey;secretread:+listchannels,+listnodes;ultrawrite:+invoice,+listinvoices,+delinvoice,+decodepay,+waitpay,+waitinvoice
# for the example above the initialization logs (mixed with lightningd logs) should print something like
lightning@lightning:~ % mkdir .lightning/plugins
lightning@lightning:~ % cd .lightning/plugins/
lightning@lightning:~/.lightning/plugins:% fetch https://github.com/fiatjaf/sparko/releases/download/v0.2.1/sparko_full_freebsd_amd64
lightning@lightning:~/.lightning/plugins % mkdir ~/.lightning/sparko-tls
lightning@lightning:~/.lightning/sparko-tls % cd ~/.lightning/sparko-tls
lightning@lightning:~/.lightning/sparko-tls % openssl genrsa -out key.pem 2048
lightning@lightning:~/.lightning/sparko-tls % openssl req -new -x509 -sha256 -key key.pem -out cert.pem -days 3650
lightning@lightning:~/.lightning/plugins % chmod +x sparko_full_freebsd_amd64
lightning@lightning:~/.lightning/plugins % mv sparko_full_freebsd_amd64 sparko
lightning@lightning:~/.lightning/plugins % cd ~
рддреБрдореНрд╣рд╛рд▓рд╛ bitcoin-cli рд╕рд╛рдареА рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдлрд╛рдЗрд▓ рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рдЪреА рджреЗрдЦреАрд▓ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЖрд╣реЗ, рдПрдХ рдЙрдкрдпреБрдХреНрддрддрд╛ рдЬреА рдпрд╛рдВрдЪреНрдпрд╛рд╢реА рд╕рдВрд╡рд╛рдж рд╕рд╛рдзрддреЗ bitcoind
lightning@lightning:~ % mkdir .bitcoin
lightning@lightning:~ % ee .bitcoin/bitcoin.conf
rpcconnect=192.168.0.1
rpcuser=test
rpcpassword=test
рддрдкрд╛рд╕рд╛
lightning@lightning:~ % bitcoin-cli echo "test"
[
"test"
]
рдкреНрд░рдХреНрд╖реЗрдкрдг lightningd
lightning@lightning:~ % lightningd --daemon
рд╕реНрд╡рддрдГ lightningd
рдЖрдкрдг рдЙрдкрдпреБрдХреНрддрддрд╛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░реВ рд╢рдХрддрд╛ lightning-cli
, рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде:
lightning-cli newaddr
рдирд╡реАрди рдпреЗрдгрд╛рд▒реНрдпрд╛ рдкреЗрдореЗрдВрдЯрд╕рд╛рдареА рдкрддреНрддрд╛ рдорд┐рд│рд╡рд╛
{
"address": "bc1q2n2ffq3lplhme8jufcxahfrnfhruwjgx3c78pv",
"bech32": "bc1q2n2ffq3lplhme8jufcxahfrnfhruwjgx3c78pv"
}
lightning-cli withdraw bc1jufcxahfrnfhruwjgx3cq2n2ffq3lplhme878pv all
рд╡реЙрд▓реЗрдЯрдордзреАрд▓ рд╕рд░реНрд╡ рдкреИрд╕реЗ рдкрддреНрддреНрдпрд╛рд╡рд░ рдкрд╛рдард╡рд╛ (рд╕рд░реНрд╡ рдСрди-рдЪреЗрди рдкрддреНрддреЗ)
рдСрдл-рдЪреЗрди рдСрдкрд░реЗрд╢рдиреНрд╕рд╕рд╛рдареА рджреЗрдЦреАрд▓ рдЖрджреЗрд╢ lightning-cli invoice
, lightning-cli listinvoices
, lightning-cli pay
рдЗ.
рдмрд░рдВ, рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╛рд╕рд╣ рд╕рдВрдкреНрд░реЗрд╖рдгрд╛рд╕рд╛рдареА рдЖрдордЪреНрдпрд╛рдХрдбреЗ рдПрдХ REST Api рдЖрд╣реЗ
curl -k https://192.168.0.7:9737/rpc -d '{"method": "pay", "params": ["lnbc..."]}' -H 'X-Access masterkey'
рдЪрд▓рд╛ рдкрд░рд┐рдгрд╛рдорд╛рдВрдЪреА рдмреЗрд░реАрдЬ рдХрд░реВрдпрд╛
# jls
JID IP Address Hostname Path
1 192.168.0.1 bitcoind.space.com /zroot/jails/jails/bitcoind
2 192.168.0.2 tor.space.com /zroot/jails/jails/tor
3 192.168.0.3 nginx-rev.space.com /zroot/jails/jails/nginx-rev
4 192.168.0.4 paygw.space.com /zroot/jails/jails/paygw
5 192.168.0.5 webapp.my.domain /zroot/jails/jails/webapp
7 192.168.0.200 electrum.space.com /zroot/jails/jails/electrum
8 192.168.0.6 polipo.space.com /zroot/jails/jails/polipo
9 192.168.0.7 lightning.space.com /zroot/jails/jails/cln
рдЖрдордЪреНрдпрд╛рдХрдбреЗ рдХрдВрдЯреЗрдирд░рдЪрд╛ рдПрдХ рд╕рдВрдЪ рдЖрд╣реЗ, рдкреНрд░рддреНрдпреЗрдХрд╛рдЪрд╛ рд╕реНрд╡рддрдГрдЪрд╛ рд╕реНрддрд░ рдЖрдгрд┐ рд╕реНрдерд╛рдирд┐рдХ рдиреЗрдЯрд╡рд░реНрдХрд╡рд░реВрди рдкреНрд░рд╡реЗрд╢ рдЖрд╣реЗ.
# zfs list
NAME USED AVAIL REFER MOUNTPOINT
zroot 279G 1.48T 88K /zroot
zroot/ROOT 1.89G 1.48T 88K none
zroot/ROOT/default 1.89G 17.6G 1.89G /
zroot/home 88K 1.48T 88K /home
zroot/jails 277G 1.48T 404M /zroot/jails
zroot/jails/bitcoind 190G 1.48T 190G /zroot/jails/jails-data/bitcoind-data
zroot/jails/cln 653M 1.48T 653M /zroot/jails/jails-data/cln-data
zroot/jails/electrum 703M 1.48T 703M /zroot/jails/jails-data/electrum-data
zroot/jails/nginx-rev 190M 1.48T 190M /zroot/jails/jails-data/nginx-rev-data
zroot/jails/paygw 82.4G 1.48T 82.4G /zroot/jails/jails-data/paygw-data
zroot/jails/polipo 57.6M 1.48T 57.6M /zroot/jails/jails-data/polipo-data
zroot/jails/tor 81.5M 1.48T 81.5M /zroot/jails/jails-data/tor-data
zroot/jails/webapp 360M 1.48T 360M /zroot/jails/jails-data/webapp-data
рддреБрдореНрд╣реА рдмрдШреВ рд╢рдХрддрд╛, рдмрд┐рдЯрдХреЙрдЗрдВрдб рд╕рд░реНрд╡ 190 GB рдЬрд╛рдЧрд╛ рдШреЗрддреЗ. рдЖрдореНрд╣рд╛рд▓рд╛ рдЪрд╛рдЪрдгреАрд╕рд╛рдареА рджреБрд╕рд░реНрдпрд╛ рдиреЛрдбрдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЕрд╕рд▓реНрдпрд╛рд╕ рдХрд╛рдп? рдЗрдереЗрдЪ ZFS рдЙрдкрдпреЛрдЧреА рдкрдбрддреЗ. рдорджрддреАрдиреЗ cbsd jclone old=bitcoind new=bitcoind-clone host_hostname=clonedbtc.space.com
рддреБрдореНрд╣реА рд╕реНрдиреЕрдкрд╢реЙрдЯ рддрдпрд╛рд░ рдХрд░реВ рд╢рдХрддрд╛ рдЖрдгрд┐ рдпрд╛ рд╕реНрдиреЕрдкрд╢реЙрдЯрд▓рд╛ рдирд╡реАрди рд╕реЗрд▓ рд╕рдВрд▓рдЧреНрди рдХрд░реВ рд╢рдХрддрд╛. рдирд╡реАрди рд╕реЗрд▓рдЪреА рд╕реНрд╡рддрдГрдЪреА рдЬрд╛рдЧрд╛ рдЕрд╕реЗрд▓, рдкрд░рдВрддреБ рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдордордзреНрдпреЗ рдлрдХреНрдд рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рддреА рдЖрдгрд┐ рдореВрд│рдордзреАрд▓ рдлрд░рдХ рд╡рд┐рдЪрд╛рд░рд╛рдд рдШреЗрддрд▓рд╛ рдЬрд╛рдИрд▓ (рдЖрдореНрд╣реА рдХрд┐рдорд╛рди 190 GB рд╡рд╛рдЪрд╡реВ)
рдкреНрд░рддреНрдпреЗрдХ рд╕реЗрд▓рдЪрд╛ рд╕реНрд╡рддрдГрдЪрд╛ рд╕реНрд╡рддрдВрддреНрд░ ZFS рдбреЗрдЯрд╛рд╕реЗрдЯ рдЖрд╣реЗ рдЖрдгрд┐ рд╣реЗ рдЕрддреНрдпрдВрдд рд╕реЛрдпреАрдЪреЗ рдЖрд╣реЗ.
рдпрдЬрдорд╛рдирд╛рдЪреНрдпрд╛ рд░рд┐рдореЛрдЯ рдореЙрдирд┐рдЯрд░рд┐рдВрдЧрдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рджреЗрдЦреАрд▓ рд▓рдХреНрд╖рд╛рдд рдШреЗрдгреНрдпрд╛рд╕рд╛рд░рдЦреЗ рдЖрд╣реЗ, рдпрд╛ рд╣реЗрддреВрдВрд╕рд╛рдареА рдЖрдордЪреНрдпрд╛рдХрдбреЗ рдЖрд╣реЗ
рдмреА - рд╕реБрд░рдХреНрд╖рд╛
рд╕реБрд░рдХреНрд╖рд┐рддрддреЗрдмрд╛рдмрдд, рдкрд╛рдпрд╛рднреВрдд рд╕реБрд╡рд┐рдзрд╛рдВрдЪреНрдпрд╛ рд╕рдВрджрд░реНрднрд╛рдд рдореБрдЦреНрдп рддрддреНрддреНрд╡рд╛рдВрдкрд╛рд╕реВрди рд╕реБрд░реБрд╡рд╛рдд рдХрд░реВрдпрд╛:
рдЧреБрдкреНрддрддрд╛ - UNIX рд╕рд╛рд░рдЦреА рдкреНрд░рдгрд╛рд▓реАрдЪреА рдорд╛рдирдХ рд╕рд╛рдзрдиреЗ рдпрд╛ рддрддреНрддреНрд╡рд╛рдЪреА рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддрд╛рдд. рдЖрдореНрд╣реА рд╕рд┐рд╕реНрдЯрдордЪреНрдпрд╛ рдкреНрд░рддреНрдпреЗрдХ рддрд╛рд░реНрдХрд┐рдХрджреГрд╖реНрдЯреНрдпрд╛ рд╕реНрд╡рддрдВрддреНрд░ рдШрдЯрдХ - рд╕реЗрд▓рдордзреНрдпреЗ рддрд╛рд░реНрдХрд┐рдХрджреГрд╖реНрдЯреНрдпрд╛ рд╡рд┐рднрдХреНрдд рдкреНрд░рд╡реЗрд╢ рдХрд░рддреЛ. рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдВрдЪреНрдпрд╛ рд╡реИрдпрдХреНрддрд┐рдХ рдХреА рд╡рд╛рдкрд░реВрди рдорд╛рдирдХ рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рдкреНрд░рдорд╛рдгреАрдХрд░рдгрд╛рджреНрд╡рд╛рд░реЗ рдкреНрд░рд╡реЗрд╢ рдкреНрд░рджрд╛рди рдХреЗрд▓рд╛ рдЬрд╛рддреЛ. рд╕реЗрд▓рдордзреАрд▓ рдЖрдгрд┐ рд╢реЗрд╡рдЯрдкрд░реНрдпрдВрдд рд╕рд░реНрд╡ рд╕рдВрдкреНрд░реЗрд╖рдг рдПрдирдХреНрд░рд┐рдкреНрдЯреЗрдб рд╕реНрд╡рд░реВрдкрд╛рдд рд╣реЛрддреЗ. рдбрд┐рд╕реНрдХ рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рдирдмрджреНрджрд▓ рдзрдиреНрдпрд╡рд╛рдж, рдбрд┐рд╕реНрдХ рдмрджрд▓рддрд╛рдирд╛ рдХрд┐рдВрд╡рд╛ рджреБрд╕рд░реНтАНрдпрд╛ рд╕рд░реНрд╡реНрд╣рд░рд╡рд░ рд╕реНрдерд▓рд╛рдВрддрд░рд┐рдд рдХрд░рддрд╛рдирд╛ рдЖрдореНрд╣рд╛рд▓рд╛ рдбреЗрдЯрд╛рдЪреНрдпрд╛ рд╕реБрд░рдХреНрд╖рд┐рддрддреЗрдмрджреНрджрд▓ рдХрд╛рд│рдЬреА рдХрд░рдгреНрдпрд╛рдЪреА рдЧрд░рдЬ рдирд╛рд╣реА. рдпрдЬрдорд╛рди рдкреНрд░рдгрд╛рд▓реАрдордзреНрдпреЗ рдкреНрд░рд╡реЗрд╢ рд╣рд╛ рдПрдХрдореЗрд╡ рдЧрдВрднреАрд░ рдкреНрд░рд╡реЗрд╢ рдЖрд╣реЗ, рдХрд╛рд░рдг рдЕрд╕рд╛ рдкреНрд░рд╡реЗрд╢ рд╕рд╛рдорд╛рдиреНрдпрддрдГ рдХрдВрдЯреЗрдирд░рдордзреАрд▓ рдбреЗрдЯрд╛рдордзреНрдпреЗ рдкреНрд░рд╡реЗрд╢ рдкреНрд░рджрд╛рди рдХрд░рддреЛ.
рдЕрдЦрдВрдбрддрд╛ тАЬрдпрд╛ рддрддреНрддреНрд╡рд╛рдЪреА рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рд╡рд┐рд╡рд┐рдз рд╕реНрддрд░рд╛рдВрд╡рд░ рд╣реЛрддреЗ. рд╕рд░реНрд╡рдкреНрд░рдердо, рд╣реЗ рд▓рдХреНрд╖рд╛рдд рдШреЗрдгреЗ рдорд╣рддреНрддреНрд╡рд╛рдЪреЗ рдЖрд╣реЗ рдХреА рд╕рд░реНрд╡реНрд╣рд░ рд╣рд╛рд░реНрдбрд╡реЗрдЕрд░, ECC рдореЗрдорд░реА, ZFS рдЖрдзреАрдкрд╛рд╕реВрдирдЪ тАЬрдЖрдЙрдЯ рдСрдл рдж рдмреЙрдХреНрд╕тАЭ рдорд╛рд╣рд┐рддреА рдмрд┐рдЯреНрд╕рдЪреНрдпрд╛ рдкрд╛рддрд│реАрд╡рд░ рдбреЗрдЯрд╛ рдЕрдЦрдВрдбрддреЗрдЪреА рдХрд╛рд│рдЬреА рдШреЗрддреЗ. рдЭрдЯрдкрдЯ рд╕реНрдиреЕрдкрд╢реЙрдЯреНрд╕ рддреБрдореНрд╣рд╛рд▓рд╛ рдлреНрд▓рд╛рдпрд╡рд░ рдХрдзреАрд╣реА рдмреЕрдХрдЕрдк рдШреЗрдгреНрдпрд╛рд╕ рдЕрдиреБрдорддреА рджреЗрддрд╛рдд. рд╕реЛрдпреАрд╕реНрдХрд░ рд╕реЗрд▓ рдирд┐рд░реНрдпрд╛рдд/рдЖрдпрд╛рдд рд╕рд╛рдзрдиреЗ рд╕реЗрд▓ рдкреНрд░рддрд┐рдХреГрддреА рд╕реЛрдкреЗ рдХрд░рддрд╛рдд.
рдЙрдкрд▓рдмреНрдзрддрд╛ - рд╣реЗ рдЖрдзреАрдЪ рдРрдЪреНрдЫрд┐рдХ рдЖрд╣реЗ. рддреБрдордЪреА рдкреНрд░рд╕рд┐рджреНрдзреА рдХрд┐рддреА рдЖрд╣реЗ рдЖрдгрд┐ рддреБрдордЪреНрдпрд╛рдХрдбреЗ рджреНрд╡реЗрд╖ рдХрд░рдгрд╛рд░реЗ рдЖрд╣реЗрдд рдпрд╛рд╡рд░ рдЕрд╡рд▓рдВрдмреВрди рдЖрд╣реЗ. рдЖрдордЪреНрдпрд╛ рдЙрджрд╛рд╣рд░рдгрд╛рдордзреНрдпреЗ, рдЖрдореНрд╣реА рдЦрд╛рддреНрд░реА рдХреЗрд▓реА рдХреА рд╡реЙрд▓реЗрдЯ рдХреЗрд╡рд│ TOP рдиреЗрдЯрд╡рд░реНрдХрд╡рд░реВрди рдкреНрд░рд╡реЗрд╢ рдХрд░рдгреНрдпрд╛рдпреЛрдЧреНрдп рдЖрд╣реЗ. рдЖрд╡рд╢реНрдпрдХ рдЕрд╕рд▓реНрдпрд╛рд╕, рдЖрдкрдг рдлрд╛рдпрд░рд╡реЙрд▓рд╡рд░реАрд▓ рд╕рд░реНрд╡ рдХрд╛рд╣реА рдЕрд╡рд░реЛрдзрд┐рдд рдХрд░реВ рд╢рдХрддрд╛ рдЖрдгрд┐ рд╕рд░реНрд╡реНрд╣рд░рд╡рд░ рдХреЗрд╡рд│ рдмреЛрдЧрджреНрдпрд╛рдВрдордзреВрди рдкреНрд░рд╡реЗрд╢ рдХрд░реВ рд╢рдХрддрд╛ (TOR рдХрд┐рдВрд╡рд╛ VPN рд╣реА рджреБрд╕рд░реА рдмрд╛рдм рдЖрд╣реЗ). рдЕрд╢рд╛ рдкреНрд░рдХрд╛рд░реЗ, рд╕рд░реНрд╡реНрд╣рд░ рд╢рдХреНрдп рддрд┐рддрдХреНрдпрд╛ рдмрд╛рд╣реЗрд░реАрд▓ рдЬрдЧрд╛рдкрд╛рд╕реВрди рдХрд╛рдкрд▓рд╛ рдЬрд╛рдИрд▓ рдЖрдгрд┐ рдХреЗрд╡рд│ рдЖрдкрдгрдЪ рддреНрдпрд╛рдЪреНрдпрд╛ рдЙрдкрд▓рдмреНрдзрддреЗрд╡рд░ рдкреНрд░рднрд╛рд╡ рдЯрд╛рдХреВ рд╢рдХрддреЛ.
рдирдХрд╛рд░рд╛рдЪреА рдЕрд╢рдХреНрдпрддрд╛ - рдЖрдгрд┐ рд╣реЗ рдкреБрдвреАрд▓ рдСрдкрд░реЗрд╢рди рдЖрдгрд┐ рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рдЕрдзрд┐рдХрд╛рд░, рдкреНрд░рд╡реЗрд╢ рдЗ. рд╕рд╛рдареА рдпреЛрдЧреНрдп рдзреЛрд░рдгрд╛рдВрдЪреЗ рдкрд╛рд▓рди рдпрд╛рд╡рд░ рдЕрд╡рд▓рдВрдмреВрди рдЖрд╣реЗ. рдкрд░рдВрддреБ рдпреЛрдЧреНрдп рдкрдзреНрджрддреАрдиреЗ, рд╕рд░реНрд╡ рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдВрдЪреНрдпрд╛ рдХреНрд░рд┐рдпрд╛рдВрдЪреЗ рдСрдбрд┐рдЯ рдХреЗрд▓реЗ рдЬрд╛рддреЗ рдЖрдгрд┐ рдХреНрд░рд┐рдкреНрдЯреЛрдЧреНрд░рд╛рдлрд┐рдХ рд╕реЛрд▓реНрдпреВрд╢рдиреНрд╕рдореБрд│реЗ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХреНрд░рд┐рдпрд╛ рдХреЛрдгреА рдЖрдгрд┐ рдХреЗрд╡реНрд╣рд╛ рдХреЗрд▓реНрдпрд╛ рд╣реЗ рдЕрд╕реНрдкрд╖реНрдЯрдкрдгреЗ рдУрд│рдЦрдгреЗ рд╢рдХреНрдп рдЖрд╣реЗ.
рдЕрд░реНрдерд╛рдд, рд╡рд░реНрдгрди рдХреЗрд▓реЗрд▓реЗ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рд╣реЗ рдиреЗрд╣рдореАрдЪ рдХрд╕реЗ рдЕрд╕рд╛рд╡реЗ рдпрд╛рдЪреЗ рдкрд░рд┐рдкреВрд░реНрдг рдЙрджрд╛рд╣рд░рдг рдирд╛рд╣реА, рддрд░ рддреЗ рдХрд╕реЗ рдЕрд╕реВ рд╢рдХрддреЗ рдпрд╛рдЪреЗ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдЖрд╣реЗ, рдЕрддрд┐рд╢рдп рд▓рд╡рдЪрд┐рдХ рд╕реНрдХреЗрд▓рд┐рдВрдЧ рдЖрдгрд┐ рд╕рд╛рдиреБрдХреВрд▓рд┐рдд рдХреНрд╖рдорддрд╛ рд░рд╛рдЦреВрди рдареЗрд╡рддреЗ.
рдкреВрд░реНрдг рдЖрднрд╛рд╕реАрдХрд░рдгрд╛рдмрджреНрджрд▓ рдХрд╛рдп?
рд╕реАрдмреАрдПрд╕рдбреА рд╡рд╛рдкрд░реВрди рдкреВрд░реНрдг рд╡реНрд╣рд░реНрдЪреНрдпреБрдЕрд▓рд╛рдпрдЭреЗрд╢рдирдмрджреНрджрд▓ рддреБрдореНрд╣реА рд╣реЗ рдХрд░реВ рд╢рдХрддрд╛ bhyve
рддреБрдореНрд╣рд╛рд▓рд╛ рдХрд╛рд╣реА рдХрд░реНрдирд▓ рдкрд░реНрдпрд╛рдп рд╕рдХреНрд╖рдо рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ.
# cat /etc/rc.conf
...
kld_list="vmm if_tap if_bridge nmdm"
...
# cat /boot/loader.conf
...
vmm_load="YES"
...
рддреНрдпрд╛рдореБрд│реЗ рддреБрдореНрд╣рд╛рд▓рд╛ рдЕрдЪрд╛рдирдХ рдбреЙрдХрд░ рд╕реБрд░реВ рдХрд░рд╛рдпрдЪрд╛ рдЕрд╕реЗрд▓ рддрд░ рдХрд╛рд╣реА рдбреЗрдмрд┐рдпрди рдЗрдиреНрд╕реНрдЯреЙрд▓ рдХрд░рд╛ рдЖрдгрд┐ рдЬрд╛!
рдЗрддрдХрдВрдЪ
рдорд╛рдЭрд╛ рдЕрдВрджрд╛рдЬ рдЖрд╣реЗ рдХреА рдорд▓рд╛ рдПрд╡рдвреЗрдЪ рд╢реЗрдЕрд░ рдХрд░рд╛рдпрдЪреЗ рд╣реЛрддреЗ. рдЬрд░ рддреБрдореНрд╣рд╛рд▓рд╛ рд▓реЗрдЦ рдЖрд╡рдбрд▓рд╛ рдЕрд╕реЗрд▓ рддрд░ рддреБрдореНрд╣реА рдорд▓рд╛ рдХрд╛рд╣реА рдмрд┐рдЯрдХреЙрдЗрди рдкрд╛рдард╡реВ рд╢рдХрддрд╛ -
рд╕реНрддреНрд░реЛрдд: www.habr.com