เชชเชพเช‚เชœเชฐเชพเชฎเชพเช‚ เชฌเชฟเชŸเช•เซ‹เชˆเชจ?

เชเชตเซเช‚ เชฌเชจเซเชฏเซเช‚ เช•เซ‡ เชตเซเชฏเชตเชธเชพเชฏเซ‡ เชนเซเช‚ เช•เซ‹เชฎเซเชชเซเชฏเซเชŸเชฐ เชธเชฟเชธเซเชŸเชฎเซเชธ เช…เชจเซ‡ เชจเซ‡เชŸเชตเชฐเซเช•เซเชธเชจเซ‹ เชเชกเชฎเชฟเชจเชฟเชธเซเชŸเซเชฐเซ‡เชŸเชฐ เช›เซเช‚ (เชŸเซ‚เช‚เช•เชฎเชพเช‚: เชธเชฟเชธเซเชŸเชฎ เชเชกเชฎเชฟเชจเชฟเชธเซเชŸเซเชฐเซ‡เชŸเชฐ), เช…เชจเซ‡ เชฎเชจเซ‡ เชชเซเชฐเซ‹.เชจเซ‡ 10 เชตเชฐเซเชทเชฅเซ€ เชฅเซ‹เชกเชพ เชตเชงเซ เชธเชฎเชฏ เชฎเชพเชŸเซ‡ เช•เชนเซ‡เชตเชพเชจเซ€ เชคเช• เชฎเชณเซ€. [เช†เชคเซเชฏเช‚เชคเชฟเช•] เชธเซเชฐเช•เซเชทเชพ เชฎเชพเชชเชฆเช‚เชกเซ‹เชจเซ€ เชœเชฐเซ‚เชฐ เชนเซ‹เชฏ เชคเซ‡ เชธเชนเชฟเชค เชตเชฟเชตเชฟเชง เชชเซเชฐเช•เชพเชฐเชจเซ€ เชธเชฟเชธเซเชŸเชฎเซ‹เชจเซ€ เชชเซเชฐเชตเซƒเชคเซเชคเชฟเช“. เชเชตเซเช‚ เชชเชฃ เชฌเชจเซเชฏเซเช‚ เช•เซ‡ เชฅเซ‹เชกเชพ เชธเชฎเชฏ เชชเชนเซ‡เชฒเชพ เชฎเชจเซ‡ เชคเซ‡ เชฐเชธเชชเซเชฐเชฆ เชฒเชพเช—เซเชฏเซเช‚ เชฌเชฟเชŸเช•เซ‹เช‡เชจ, เช…เชจเซ‡ เชฎเชพเชคเซเชฐ เชคเซ‡เชจเซ‹ เช‰เชชเชฏเซ‹เช— เชœ เช•เชฐเซเชฏเซ‹ เชจเชฅเซ€, เชชเชฐเช‚เชคเซ เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพเชจเชพ เชฆเซƒเชทเซเชŸเชฟเช•เซ‹เชฃเชฅเซ€ เชฌเชฟเชŸเช•เซ‹เช‡เชจ เชจเซ‡เชŸเชตเชฐเซเช• (เช‰เชฐเซเชซเซ‡ p2p) เชธเชพเชฅเซ‡ เชธเซเชตเชคเช‚เชคเซเชฐ เชฐเซ€เชคเซ‡ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เช•เชพเชฎ เช•เชฐเชตเซเช‚ เชคเซ‡ เชถเซ€เช–เชตเชพ เชฎเชพเชŸเซ‡ เช˜เชฃเซ€ เชฎเชพเช‡เช•เซเชฐเซ‹-เชธเซ‡เชตเชพเช“ เชชเชฃ เชถเชฐเซ‚ เช•เชฐเซ€ เช›เซ‡ (เชนเซเช‚ เช…เชฒเชฌเชคเซเชค เชคเซ‡เชฎเชพเช‚เชฅเซ€ เชเช• เช›เซเช‚. dev, เชคเซ‡เชฅเซ€, เชนเซเช‚ เชคเซเชฏเชพเช‚เชฅเซ€ เชชเชธเชพเชฐ เชฅเชคเซ‹ เชนเชคเซ‹). เชชเชฐเช‚เชคเซ เชนเซเช‚ เชตเชฟเช•เชพเชธ เชตเชฟเชถเซ‡ เชตเชพเชค เชจเชฅเซ€ เช•เชฐเซ€ เชฐเชนเซเชฏเซ‹, เชนเซเช‚ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ เชฎเชพเชŸเซ‡ เชธเชฒเชพเชฎเชค เช…เชจเซ‡ เช•เชพเชฐเซเชฏเช•เซเชทเชฎ เชตเชพเชคเชพเชตเชฐเชฃ เชตเชฟเชถเซ‡ เชตเชพเชค เช•เชฐเซ€ เชฐเชนเซเชฏเซ‹ เช›เซเช‚.

เชจเชพเชฃเชพเช•เซ€เชฏ เชŸเซ‡เช•เชจเซ‹เชฒเซ‹เชœเซ€ (fintech) เชฎเชพเชนเชฟเชคเซ€ เชธเซเชฐเช•เซเชทเชพเชจเซ€ เชฌเชพเชœเซเชฎเชพเช‚ เชœเชพเช“ (เช‡เชจเซเชซเซ‹เชธเซ‡เช•) เช…เชจเซ‡ เชชเซเชฐเชฅเชฎ เชฌเซ€เชœเชพ เชตเชฟเชจเชพ เช•เชพเชฎ เช•เชฐเซ€ เชถเช•เซ‡ เช›เซ‡, เชชเชฐเช‚เชคเซ เชฒเชพเช‚เชฌเชพ เชธเชฎเชฏ เชธเซเชงเซ€ เชจเชนเซ€เช‚. เชคเซ‡เชฅเซ€ เชœ เชนเซเช‚ เชฎเชพเชฐเซ‹ เช…เชจเซเชญเชต เช…เชจเซ‡ เชนเซเช‚ เชœเซ‡ เชธเชพเชงเชจเซ‹เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซเช‚ เช›เซเช‚ เชคเซ‡เชจเซ‹ เชธเชฎเซ‚เชน เชถเซ‡เชฐ เช•เชฐเชตเชพ เชฎเชพเช‚เช—เซ เช›เซเช‚, เชœเซ‡เชฎเชพเช‚ เชฌเช‚เชจเซ‡เชจเซ‹ เชธเชฎเชพเชตเซ‡เชถ เชฅเชพเชฏ เช›เซ‡ fintech, เช…เชจเซ‡ เช‡เชจเซเชซเซ‹เชธเซ‡เช•, เช…เชจเซ‡ เชคเซ‡ เชœ เชธเชฎเชฏเซ‡, เช…เชจเซ‡ เชคเซ‡เชจเซ‹ เช‰เชชเชฏเซ‹เช— เชตเซเชฏเชพเชชเช• เช…เชฅเชตเชพ เชธเช‚เชชเซ‚เชฐเซเชฃเชชเชฃเซ‡ เช…เชฒเช— เชนเซ‡เชคเซ เชฎเชพเชŸเซ‡ เชชเชฃ เชฅเชˆ เชถเช•เซ‡ เช›เซ‡. เช† เชฒเซ‡เช–เชฎเชพเช‚ เชนเซเช‚ เชคเชฎเชจเซ‡ เชฌเชฟเชŸเช•เซ‹เช‡เชจ เชตเชฟเชถเซ‡ เชเชŸเชฒเซเช‚ เชจเชนเซ€เช‚, เชชเชฐเช‚เชคเซ เชจเชพเชฃเชพเช•เซ€เชฏ (เช…เชจเซ‡ เชฎเชพเชคเซเชฐ เชจเชนเซ€เช‚) เชธเซ‡เชตเชพเช“เชจเชพ เชตเชฟเช•เชพเชธ เช…เชจเซ‡ เชธเช‚เชšเชพเชฒเชจ เชฎเชพเชŸเซ‡เชจเชพ เชฎเชพเชณเช–เชพเช•เซ€เชฏ เชฎเซ‹เชกเชฒ เชตเชฟเชถเซ‡ เช•เชนเซ€เชถ - เชเช• เชถเชฌเซเชฆเชฎเชพเช‚, เชคเซ‡ เชธเซ‡เชตเชพเช“ เชœเซเชฏเชพเช‚ "B" เชฎเชนเชคเซเชตเชชเซ‚เชฐเซเชฃ เช›เซ‡. เช† เชฌเชฟเชŸเช•เซ‹เชˆเชจ เชเช•เซเชธเชšเซ‡เชจเซเชœ เช…เชจเซ‡ เชฌเชฟเชŸเช•เซ‹เชˆเชจ เชธเชพเชฅเซ‡ เช•เซ‹เชˆเชชเชฃ เชฐเซ€เชคเซ‡ เชœเซ‹เชกเชพเชฏเซ‡เชฒเซ€ เชจ เชนเซ‹เชฏ เชคเซ‡เชตเซ€ เชจเชพเชจเซ€ เช•เช‚เชชเชจเซ€เชจเซ€ เชธเซ‡เชตเชพเช“เชจเชพ เชธเซŒเชฅเซ€ เชธเชพเชฎเชพเชจเซเชฏ เช•เซ‹เชฐเซเชชเซ‹เชฐเซ‡เชŸ เชเซ‚ เชฌเช‚เชจเซ‡เชจเซ‡ เชฒเชพเช—เซ เชชเชกเซ‡ เช›เซ‡.

เชนเซเช‚ เช เชจเซ‹เช‚เชงเชตเชพ เชฎเชพเช‚เช—เซ เช›เซเช‚ เช•เซ‡ เชนเซเช‚ เชธเชฟเชฆเซเชงเชพเช‚เชคเซ‹เชจเซ‹ เชธเชฎเชฐเซเชฅเช• เช›เซเช‚ "เชคเซ‡เชจเซ‡ เชฎเซ‚เชฐเซเช– เชฐเชพเช–เซ‹" ะธ "เช“เช›เซ€ เชตเชงเซ เช›เซ‡", เชคเซ‡เชฅเซ€, เชฒเซ‡เช– เช…เชจเซ‡ เชคเซ‡เชฎเชพเช‚ เชœเซ‡ เชตเชฐเซเชฃเชตเซ‡เชฒ เช›เซ‡ เชคเซ‡ เชฌเช‚เชจเซ‡เชฎเชพเช‚ เชคเซ‡ เช—เซเชฃเชงเชฐเซเชฎเซ‹ เชนเชถเซ‡ เชœเซ‡ เช† เชธเชฟเชฆเซเชงเชพเช‚เชคเซ‹ เชตเชฟเชถเซ‡ เช›เซ‡.

เช•เชพเชฒเซเชชเชจเชฟเช• เชฆเซƒเชถเซเชฏ: เชšเชพเชฒเซ‹ เชฌเชฟเชŸเช•เซ‹เชˆเชจ เชเช•เซเชธเซเชšเซ‡เชจเซเชœเชฐเชจเชพ เช‰เชฆเชพเชนเชฐเชฃเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชฌเชงเซเช‚ เชœเซ‹เชˆเช. เช…เชฎเซ‡ เชฌเชฟเชŸเช•เซ‹เช‡เชจเซเชธ เช…เชจเซ‡ เชฌเซ‡เช• เชฎเชพเชŸเซ‡ เชฐเซ‚เชฌเชฒ, เชกเซ‹เชฒเชฐ, เชฏเซเชฐเซ‹เชจเซเช‚ เชตเชฟเชจเชฟเชฎเชฏ เชถเชฐเซ‚ เช•เชฐเชตเชพเชจเซเช‚ เชจเช•เซเช•เซ€ เช•เชฐเซเชฏเซเช‚ เช›เซ‡ เช…เชจเซ‡ เช…เชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เชชเชนเซ‡เชฒเซ‡เชฅเซ€ เชœ เช•เชพเชฐเซเชฏเช•เชพเชฐเซ€ เช‰เช•เซ‡เชฒ เช›เซ‡, เชชเชฐเช‚เชคเซ เช…เชจเซเชฏ เชกเชฟเชœเชฟเชŸเชฒ เชฎเชจเซ€ เชœเซ‡เชฎ เช•เซ‡ เช•เซเชตเชฟเชตเซ€ เช…เชจเซ‡ เชตเซ‡เชฌเชฎเชจเซ€ เชฎเชพเชŸเซ‡, เชเชŸเชฒเซ‡ เช•เซ‡. เช…เชฎเซ‡ เชคเชฎเชพเชฎ เช•เชพเชจเซ‚เชจเซ€ เชฎเซเชฆเซเชฆเชพเช“ เชฌเช‚เชง เช•เชฐเซ€ เชฆเซ€เชงเชพ เช›เซ‡, เช…เชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เชเช• เชคเซˆเชฏเชพเชฐ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ เช›เซ‡ เชœเซ‡ เชฐเซเชฌเซ‡เชฒเซเชธ, เชกเซ‰เชฒเชฐ เช…เชจเซ‡ เชฏเซเชฐเซ‹ เช…เชจเซ‡ เช…เชจเซเชฏ เชชเซ‡เชฎเซ‡เชจเซเชŸ เชธเชฟเชธเซเชŸเชฎเซเชธ เชฎเชพเชŸเซ‡ เชชเซ‡เชฎเซ‡เชจเซเชŸ เช—เซ‡เชŸเชตเซ‡ เชคเชฐเซ€เช•เซ‡ เชธเซ‡เชตเชพ เช†เชชเซ‡ เช›เซ‡. เชคเซ‡ เช…เชฎเชพเชฐเชพ เชฌเซ‡เช‚เช• เช–เชพเชคเชพเช“ เชธเชพเชฅเซ‡ เชœเซ‹เชกเชพเชฏเซ‡เชฒ เช›เซ‡ เช…เชจเซ‡ เช…เชฎเชพเชฐเซ€ เช…เช‚เชคเชฟเชฎ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเซ‹ เชฎเชพเชŸเซ‡ เช…เชฎเซเช• เชชเซเชฐเช•เชพเชฐเชจเชพ API เชงเชฐเชพเชตเซ‡ เช›เซ‡. เช…เชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เชเช• เชตเซ‡เชฌ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ เชชเชฃ เช›เซ‡ เชœเซ‡ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเช“ เชฎเชพเชŸเซ‡ เชเช•เซเชธเซเชšเซ‡เชจเซเชœเชฐ เชคเชฐเซ€เช•เซ‡ เช•เชพเชฎ เช•เชฐเซ‡ เช›เซ‡, เชคเซ‡เชฎเชœ, เชธเชพเชฎเชพเชจเซเชฏ เช•เซเชตเชฟเชตเซ€ เช…เชฅเชตเชพ เชตเซ‡เชฌเชฎเชจเซ€ เชเช•เชพเช‰เชจเซเชŸเชจเซ€ เชœเซ‡เชฎ - เชเช• เชเช•เชพเช‰เชจเซเชŸ เชฌเชจเชพเชตเซ‹, เช•เชพเชฐเซเชก เช‰เชฎเซ‡เชฐเซ‹, เชตเช—เซ‡เชฐเซ‡. เชคเซ‡ เชธเซเชฅเชพเชจเชฟเช• เชตเชฟเชธเซเชคเชพเชฐเชฎเชพเช‚ REST API เชฎเชพเชฐเชซเชคเซ‡ เชนเซ‹เชตเชพ เช›เชคเชพเช‚ เช…เชฎเชพเชฐเซ€ เช—เซ‡เชŸเชตเซ‡ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ เชธเชพเชฅเซ‡ เชตเชพเชคเชšเซ€เชค เช•เชฐเซ‡ เช›เซ‡. เช…เชจเซ‡ เชคเซ‡เชฅเซ€ เช…เชฎเซ‡ เชฌเชฟเชŸเช•เซ‹เชˆเชจเซเชธเชจเซ‡ เชœเซ‹เชกเชตเชพเชจเซเช‚ เชจเช•เซเช•เซ€ เช•เชฐเซเชฏเซเช‚ เช…เชจเซ‡ เชคเซ‡ เชœ เชธเชฎเชฏเซ‡ เชˆเชจเซเชซเซเชฐเชพเชธเซเชŸเซเชฐเช•เซเชšเชฐเชจเซ‡ เช…เชชเช—เซเชฐเซ‡เชก เช•เชฐเชตเชพเชจเซเช‚ เชจเช•เซเช•เซ€ เช•เชฐเซเชฏเซเช‚, เช•เชพเชฐเชฃ เช•เซ‡... เชถเชฐเซ‚เช†เชคเชฎเชพเช‚, เช‘เชซเชฟเชธเชฎเชพเช‚ เชŸเซ‡เชฌเชฒเชจเซ€ เชจเซ€เชšเซ‡ เชตเชฐเซเชšเซเชฏเซเช…เชฒเชฌเซ‰เช•เซเชธ เชชเชฐ เชฌเชงเซเช‚ เชœ เช‰เชคเชพเชตเชณเชฎเชพเช‚ เชฎเซ‚เช•เชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เชนเชคเซเช‚... เชธเชพเช‡เชŸเชจเซ‹ เช‰เชชเชฏเซ‹เช— เชฅเชตเชพ เชฒเชพเช—เซเชฏเซ‹, เช…เชจเซ‡ เช…เชฎเซ‡ เช…เชชเชŸเชพเช‡เชฎ เช…เชจเซ‡ เช•เชพเชฎเช—เซ€เชฐเซ€ เชตเชฟเชถเซ‡ เชšเชฟเช‚เชคเชพ เช•เชฐเชตเชพ เชฒเชพเช—เซเชฏเชพ.

เชคเซ‡เชฅเซ€, เชšเชพเชฒเซ‹ เชฎเซเช–เซเชฏ เชตเชธเซเชคเซเชฅเซ€ เชชเซเชฐเชพเชฐเช‚เชญ เช•เชฐเซ€เช - เชธเชฐเซเชตเชฐ เชชเชธเช‚เชฆ เช•เชฐเชตเชพเชจเซเช‚. เช•เชพเชฐเชฃ เช•เซ‡ เช…เชฎเชพเชฐเชพ เช‰เชฆเชพเชนเชฐเชฃเชฎเชพเช‚เชจเซ‹ เชตเซเชฏเชตเชธเชพเชฏ เชจเชพเชจเซ‹ เช›เซ‡ เช…เชจเซ‡ เช…เชฎเซ‡ เชœเซ‡ เชนเซ‹เชธเซเชŸเชฐ (OVH) เชชเชธเช‚เชฆ เช•เชฐเซ€เชถเซเช‚ เชคเซ‡เชจเชพ เชชเชฐ เช…เชฎเชจเซ‡ เชตเชฟเชถเซเชตเชพเชธ เช›เซ‡ เชฌเชœเซ‡เชŸ เชตเชฟเช•เชฒเซเชช เชœเซ‡เชฎเชพเช‚ เช“เชฐเชฟเชœเชฟเชจเชฒ .iso เชˆเชฎเซ‡เชœเชฎเชพเช‚เชฅเซ€ เชธเชฟเชธเซเชŸเชฎ เชˆเชจเซเชธเซเชŸเซ‹เชฒ เช•เชฐเชตเซ€ เช…เชถเช•เซเชฏ เช›เซ‡, เชชเชฐเช‚เชคเซ เชคเซ‡เชจเชพเชฅเซ€ เช•เซ‹เชˆ เชซเชฐเช• เชชเชกเชคเซ‹ เชจเชฅเซ€, IT เชธเซเชฐเช•เซเชทเชพ เชตเชฟเชญเชพเช— เชšเซ‹เช•เซเช•เชธเชชเชฃเซ‡ เชˆเชจเซเชธเซเชŸเซ‹เชฒ เช•เชฐเซ‡เชฒเซ€ เชˆเชฎเซ‡เชœเชจเซเช‚ เชตเชฟเชถเซเชฒเซ‡เชทเชฃ เช•เชฐเชถเซ‡. เช…เชจเซ‡ เชœเซเชฏเชพเชฐเซ‡ เช…เชฎเซ‡ เชฎเซ‹เชŸเชพ เชฅเชˆเชถเซเช‚, เชคเซเชฏเชพเชฐเซ‡ เช…เชฎเซ‡ เชฎเชฐเซเชฏเชพเชฆเชฟเชค เชญเซŒเชคเชฟเช• เชเช•เซเชธเซ‡เชธ เชธเชพเชฅเซ‡ เชฒเซ‹เช• เช…เชจเซ‡ เชšเชพเชตเซ€ เชนเซ‡เช เชณ เช…เชฎเชพเชฐเซ€ เชชเซ‹เชคเชพเชจเซ€ เช•เชฌเชพเชŸ เชญเชพเชกเซ‡ เช†เชชเซ€เชถเซเช‚, เช…เชจเซ‡ เช•เชฆเชพเชš เช…เชฎเซ‡ เช…เชฎเชพเชฐเซเช‚ เชชเซ‹เชคเชพเชจเซเช‚ เชกเซ€เชธเซ€ เชฌเชจเชพเชตเซ€เชถเซเช‚. เช•เซ‹เชˆ เชชเชฃ เชธเช‚เชœเซ‹เช—เซ‹เชฎเชพเช‚, เชคเซ‡ เชฏเชพเชฆ เชฐเชพเช–เชตเซเช‚ เชฏเซ‹เช—เซเชฏ เช›เซ‡ เช•เซ‡ เชนเชพเชฐเซเชกเชตเซ‡เชฐ เชญเชพเชกเซ‡ เชฒเซ‡เชคเซ€ เชตเช–เชคเซ‡ เช…เชจเซ‡ เชคเซˆเชฏเชพเชฐ เช•เชฐเซ‡เชฒเซ€ เช›เชฌเซ€เช“ เช‡เชจเซเชธเซเชŸเซ‹เชฒ เช•เชฐเชคเซ€ เชตเช–เชคเซ‡, เชเชตเซ€ เชธเช‚เชญเชพเชตเชจเชพ เช›เซ‡ เช•เซ‡ เชคเชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เชคเชฎเชพเชฐเซ€ เชธเชฟเชธเซเชŸเชฎ เชชเชฐ "เชนเซ‹เชธเซเชŸเชฐเชฅเซ€ เชŸเซเชฐเซ‹เชœเชจ" เช…เชŸเช•เซ€ เชœเชถเซ‡, เชœเซ‡ เชฎเซ‹เชŸเชพเชญเชพเช—เชจเชพ เช•เชฟเชธเซเชธเชพเช“เชฎเชพเช‚ เชคเชฎเชพเชฐเซ€ เชœเชพเชธเซ‚เชธเซ€ เช•เชฐเชตเชพเชจเซ‹ เชนเซ‡เชคเซ เชจเชฅเซ€. เชชเชฐเช‚เชคเซ เชตเชงเซ เช…เชจเซเช•เซ‚เชณ เชฎเซ‡เชจเซ‡เชœเชฎเซ‡เชจเซเชŸ เชŸเซ‚เชฒเซเชธ เชธเชฐเซเชตเชฐ เช“เชซเชฐ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡.

เชธเชฐเซเชตเชฐ เช‡เชจเซเชธเซเชŸเซ‹เชฒเซ‡เชถเชจ

เช…เชนเซ€เช‚ เชฌเชงเซเช‚ เชธเชฐเชณ เช›เซ‡. เช…เชฎเซ‡ เช…เชฎเชพเชฐเซ€ เชœเชฐเซ‚เชฐเชฟเชฏเชพเชคเซ‹เชจเซ‡ เช…เชจเซเชฐเซ‚เชช เชนเชพเชฐเซเชกเชตเซ‡เชฐ เชชเชธเช‚เชฆ เช•เชฐเซ€เช เช›เซ€เช. เชชเช›เซ€ เชซเซเชฐเซ€เชฌเซ€เชเชธเชกเซ€ เช‡เชฎเซ‡เชœ เชชเชธเช‚เชฆ เช•เชฐเซ‹. เช เซ€เช• เช›เซ‡, เช…เชฅเชตเชพ เช…เชฎเซ‡ IPMI เชฆเซเชตเชพเชฐเชพ เช…เชฅเชตเชพ เชฎเซ‹เชจเชฟเชŸเชฐ เชตเชกเซ‡ (เชฌเซ€เชœเชพ เชนเซ‹เชธเซเชŸเชฐ เช…เชจเซ‡ เช…เชฎเชพเชฐเชพ เชชเซ‹เชคเชพเชจเชพ เชนเชพเชฐเซเชกเชตเซ‡เชฐเชจเชพ เช•เชฟเชธเซเชธเชพเชฎเชพเช‚) เช•เชจเซ‡เช•เซเชŸ เช•เชฐเซ€เช เช›เซ€เช เช…เชจเซ‡ .iso เชซเซเชฐเซ€เชฌเซ€เชเชธเชกเซ€ เช‡เชฎเซ‡เชœเชจเซ‡ เชกเชพเช‰เชจเชฒเซ‹เชกเชฎเชพเช‚ เชซเซ€เชก เช•เชฐเซ€เช เช›เซ€เช. เช“เชฐเซเช•เซ‡เชธเซเชŸเซเชฐเชฒ เชธเซ‡เชŸเช…เชช เชฎเชพเชŸเซ‡ เชนเซเช‚ เช‰เชชเชฏเซ‹เช— เช•เชฐเซเช‚ เช›เซเช‚ Ansible ะธ mfsbsd. เชเช•เชฎเชพเชคเซเชฐ เชตเชธเซเชคเซ, เช•เชฟเชฎเชธเซเชซเซ€ เชธเชพเชฅเซ‡เชจเชพ เช…เชฎเชพเชฐเชพ เช•เชฟเชธเซเชธเชพเชฎเชพเช‚, เช…เชฎเซ‡ เชชเชธเช‚เชฆ เช•เชฐเซเชฏเซเช‚ เชตเซˆเชตเชฟเชงเซเชฏเชชเซ‚เชฐเซเชฃ เชธเซเชฅเชพเชชเชจ เช…เชฐเซ€เชธเชพเชฎเชพเช‚เชจเซ€ เชฌเซ‡ เชกเชฟเชธเซเช•เชจเซ‡ เชซเช•เซเชค เชฌเซเชŸ เช…เชจเซ‡ /เชนเซ‹เชฎ เชชเชพเชฐเซเชŸเซ€เชถเชจเซ‹ "เช–เซเชฒเซเชฒเชพ" เชฐเชพเช–เชตเชพ เชฎเชพเชŸเซ‡, เชฌเชพเช•เซ€เชจเซ€ เชกเชฟเชธเซเช• เชœเช—เซเชฏเชพ เชเชจเช•เซเชฐเชฟเชชเซเชŸเซ‡เชก เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเชถเซ‡, เชชเชฐเช‚เชคเซ เชคเซ‡เชจเชพ เชชเชฐ เชชเช›เซ€เชฅเซ€ เชตเชงเซ.

เชชเชพเช‚เชœเชฐเชพเชฎเชพเช‚ เชฌเชฟเชŸเช•เซ‹เชˆเชจ?

เชธเชฟเชธเซเชŸเชฎเชจเซ€ เชธเซเชฅเชพเชชเชจเชพ เชชเซเชฐเชฎเชพเชฃเชญเซ‚เชค เชฐเซ€เชคเซ‡ เชฅเชพเชฏ เช›เซ‡, เชนเซเช‚ เช†เชจเชพ เชชเชฐ เชงเซเชฏเชพเชจ เช†เชชเซ€เชถ เชจเชนเซ€เช‚, เชนเซเช‚ เชซเช•เซเชค เชเชŸเชฒเซเช‚ เชœ เชจเซ‹เช‚เชงเซ€เชถ เช•เซ‡ เช“เชชเชฐเซ‡เชถเชจ เชถเชฐเซ‚ เช•เชฐเชคเชพ เชชเชนเซ‡เชฒเชพ เชคเซ‡ เชงเซเชฏเชพเชจ เช†เชชเชตเชพ เชฏเซ‹เช—เซเชฏ เช›เซ‡ เชธเช–เซเชคเชพเช‡ เชตเชฟเช•เชฒเซเชชเซ‹ เช•เซ‡ เชœเซ‡ เชคเซ‡ เช“เชซเชฐ เช•เชฐเซ‡ เช›เซ‡ 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

เชคเชฎเชพเชฐเซ‡ เช เชชเชฃ เชธเซเชจเชฟเชถเซเชšเชฟเชค เช•เชฐเชตเซเช‚ เชœเซ‹เชˆเช เช•เซ‡ เชคเชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เชธเชฟเชธเซเชŸเชฎเชจเซเช‚ เชจเชตเซ€เชจเชคเชฎ เชธเช‚เชธเซเช•เชฐเชฃ เช‡เชจเซเชธเซเชŸเซ‹เชฒ เช•เชฐเซ‡เชฒเซเช‚ เช›เซ‡, เช…เชจเซ‡ เชฌเชงเชพ เช…เชชเชกเซ‡เชŸเซเชธ เช…เชจเซ‡ เช…เชชเช—เซเชฐเซ‡เชก เช•เชฐเซ‹. เช…เชฎเชพเชฐเชพ เช•เชฟเชธเซเชธเชพเชฎเชพเช‚, เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, เชจเชตเซ€เชจเชคเชฎ เชธเช‚เชธเซเช•เชฐเชฃ เชชเชฐ เช…เชชเช—เซเชฐเซ‡เชก เช•เชฐเชตเซเช‚ เชœเชฐเซ‚เชฐเซ€ เช›เซ‡, เช•เชพเชฐเชฃ เช•เซ‡... เชชเซ‚เชฐเซเชต-เช‡เชจเซเชธเซเชŸเซ‹เชฒเซ‡เชถเชจ เช›เชฌเซ€เช“ เช› เชฎเชนเชฟเชจเชพเชฅเซ€ เชเช• เชตเชฐเซเชท เชชเชพเช›เชณ เชฐเชนเซ‡ เช›เซ‡. เช เซ€เช• เช›เซ‡, เชคเซเชฏเชพเช‚ เช†เชชเชฃเซ‡ SSH เชชเซ‹เชฐเซเชŸเชจเซ‡ เชกเชฟเชซเซ‰เชฒเซเชŸ เช•เชฐเชคเชพ เช•เช‚เชˆเช• เช…เชฒเช— เชฌเชจเชพเชตเซ€เช เช›เซ€เช, เช•เซ€ เช“เชฅเซ‡เชจเซเชŸเชฟเช•เซ‡เชถเชจ เช‰เชฎเซ‡เชฐเซ€เช เช›เซ€เช เช…เชจเซ‡ เชชเชพเชธเชตเชฐเซเชก เช“เชฅเซ‡เชจเซเชŸเชฟเช•เซ‡เชถเชจเชจเซ‡ เช…เช•เซเชทเชฎ เช•เชฐเซ€เช เช›เซ€เช.

เชชเช›เซ€ เช…เชฎเซ‡ เชธเซ‡เชŸ เช•เชฐเซเชฏเซเช‚ 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 เช† เช•เชจเซเชŸเซ‡เชจเชฐเชจเซ‡ เช“เชฐเซเช•เซ‡เชธเซเชŸเซเชฐเซ‡เชŸ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡, เชœเซ‡เชจเซ‡ เช•เซ‹เชทเซ‹ เช•เชนเซ‡เชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡.

เชชเชพเช‚เชœเชฐเชพ เช เชตเชฟเชตเชฟเชง เชนเซ‡เชคเซเช“ เชฎเชพเชŸเซ‡ เชˆเชจเซเชซเซเชฐเชพเชธเซเชŸเซเชฐเช•เซเชšเชฐ เชฌเชจเชพเชตเชตเชพ เชฎเชพเชŸเซ‡ เช…เชคเซเชฏเช‚เชค เช…เชธเชฐเช•เชพเชฐเช• เช‰เช•เซ‡เชฒ เช›เซ‡, เชœเซเชฏเชพเช‚ เชตเซเชฏเช•เซเชคเชฟเช—เชค เชธเซ‡เชตเชพเช“ เช…เชฅเชตเชพ เชชเซเชฐเช•เซเชฐเชฟเชฏเชพเช“เชจเซ‡ เชชเซ‚เชฐเซเชฃ เชฐเซ€เชคเซ‡ เช…เชฒเช— เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡. เช…เชจเชฟเชตเชพเชฐเซเชฏเชชเชฃเซ‡, เชคเซ‡ เชนเซ‹เชธเซเชŸ เชธเชฟเชธเซเชŸเชฎเชจเซ‹ เช•เซเชฒเซ‹เชจ เช›เซ‡, เชชเชฐเช‚เชคเซ เชคเซ‡เชจเซ‡ เชธเช‚เชชเซ‚เชฐเซเชฃ เชนเชพเชฐเซเชกเชตเซ‡เชฐ เชตเชฐเซเชšเซเชฏเซเช…เชฒเชพเชˆเชเซ‡เชถเชจเชจเซ€ เชœเชฐเซ‚เชฐ เชจเชฅเซ€. เช…เชจเซ‡ เช†เชจเซ‹ เช†เชญเชพเชฐ, เชธเช‚เชธเชพเชงเชจเซ‹ "เช—เซ‡เชธเซเชŸ เช“เชเชธ" เชชเชฐ เช–เชฐเซเชšเชตเชพเชฎเชพเช‚ เช†เชตเชคเชพ เชจเชฅเซ€, เชชเชฐเช‚เชคเซ เชซเช•เซเชค เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ€ เชฐเชนเซ‡เชฒเชพ เช•เชพเชฐเซเชฏ เชชเชฐ. เชœเซเชฏเชพเชฐเซ‡ เช†เช‚เชคเชฐเชฟเช• เชœเชฐเซ‚เชฐเชฟเชฏเชพเชคเซ‹ เชฎเชพเชŸเซ‡ เช•เซ‹เชทเซ‹เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡, เชคเซเชฏเชพเชฐเซ‡ เชถเซเชฐเซ‡เชทเซเช  เชธเช‚เชธเชพเชงเชจเชจเชพ เช‰เชชเชฏเซ‹เช— เชฎเชพเชŸเซ‡ เช† เชเช• เช–เซ‚เชฌ เชœ เช…เชจเซเช•เซ‚เชณ เช‰เช•เซ‡เชฒ เช›เซ‡ - เชเช• เชนเชพเชฐเซเชกเชตเซ‡เชฐ เชธเชฐเซเชตเชฐ เชชเชฐเชจเชพ เช•เซ‹เชทเซ‹เชจเซ‹ เชธเชฎเซ‚เชน เชœเซ‹ เชœเชฐเซ‚เชฐเซ€ เชนเซ‹เชฏ เชคเซ‹ เชฆเชฐเซ‡เช• เชตเซเชฏเช•เซเชคเชฟเช—เชค เชฐเซ€เชคเซ‡ เชธเชฎเช—เซเชฐ เชธเชฐเซเชตเชฐ เชธเช‚เชธเชพเชงเชจเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€ เชถเช•เซ‡ เช›เซ‡. เชธเชพเชฎเชพเชจเซเชฏ เชฐเซ€เชคเซ‡ เชตเชฟเชตเชฟเชง เชธเชฌเชธเซ‡เชตเชพเช“เชจเซ‡ เชตเชงเชพเชฐเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชชเชกเซ‡ เช›เซ‡ เชคเซ‡ เชงเซเชฏเชพเชจเชฎเชพเช‚ เชฒเซ‡เชคเชพ. เช…เชฒเช—-เช…เชฒเช— เชธเชฎเชฏเซ‡ เชธเช‚เชธเชพเชงเชจเซ‹, เชœเซ‹ เชคเชฎเซ‡ เชธเชฐเซเชตเชฐ เชตเชšเซเชšเซ‡เชจเชพ เช•เซ‹เชทเซ‹เชจเซ‡ เชฏเซ‹เช—เซเชฏ เชฐเซ€เชคเซ‡ เชชเซเชฒเชพเชจ เช…เชจเซ‡ เชธเช‚เชคเซเชฒเชฟเชค เช•เชฐเซ‹ เชคเซ‹ เชคเชฎเซ‡ เชเช• เชธเชฐเซเชตเชฐเชฎเชพเช‚เชฅเซ€ เชฎเชนเชคเซเชคเชฎ เชชเซเชฐเชฆเชฐเซเชถเชจ เชฎเซ‡เชณเชตเซ€ เชถเช•เซ‹ เช›เซ‹. เชœเซ‹ เชœเชฐเซ‚เชฐเซ€ เชนเซ‹เชฏ เชคเซ‹, เช•เซ‹เชทเซ‹เชจเซ‡ เช‰เชชเชฏเซ‹เช—เชฎเชพเช‚ เชฒเซ‡เชตเชพเชคเชพ เชธเช‚เชธเชพเชงเชจ เชชเชฐ เชจเชฟเชฏเช‚เชคเซเชฐเชฃเซ‹ เชชเชฃ เช†เชชเซ€ เชถเช•เชพเชฏ เช›เซ‡.

เชชเชพเช‚เชœเชฐเชพเชฎเชพเช‚ เชฌเชฟเชŸเช•เซ‹เชˆเชจ?

เชธเช‚เชชเซ‚เชฐเซเชฃ เชตเชฐเซเชšเซเชฏเซเช…เชฒเชพเชˆเชเซ‡เชถเชจ เชตเชฟเชถเซ‡ เชถเซเช‚?

เชฎเชพเชฐเซ€ เชœเชพเชฃเช•เชพเชฐเซ€ เชชเซเชฐเชฎเชพเชฃเซ‡, cbsd เช•เชพเชฎเชจเซ‡ เชŸเซ‡เช•เซ‹ เช†เชชเซ‡ เช›เซ‡ bhyve เช…เชจเซ‡ XEN เชนเชพเช‡เชชเชฐเชตเชพเช‡เชเชฐ. เชฎเซ‡เช‚ เช•เซเชฏเชพเชฐเซ‡เชฏ เชฌเซ€เชœเชพเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซเชฏเซ‹ เชจเชฅเซ€, เชชเชฐเช‚เชคเซ เชชเซเชฐเชฅเชฎ เชชเซเชฐเชฎเชพเชฃเชฎเชพเช‚ เชจเชตเซ‹ เช›เซ‡ เชซเซเชฐเซ€เชฌเซ€เชเชธเชกเซ€ เชคเชฐเชซเชฅเซ€ เชนเชพเช‡เชชเชฐเชตเชพเช‡เชเชฐ. เช…เชฎเซ‡ เช‰เชชเชฏเซ‹เช—เชจเซเช‚ เช‰เชฆเชพเชนเชฐเชฃ เชœเซ‹เชˆเชถเซเช‚ bhyve เชจเซ€เชšเซ‡เชจเชพ เช‰เชฆเชพเชนเชฐเชฃเชฎเชพเช‚.

เชฏเชœเชฎเชพเชจ เชชเชฐเซเชฏเชพเชตเชฐเชฃเชจเซ‡ เช‡เชจเซเชธเซเชŸเซ‹เชฒ เช…เชจเซ‡ เช—เซ‹เช เชตเซ€ เชฐเชนเซเชฏเซเช‚ เช›เซ‡

เช…เชฎเซ‡ FS เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เช เช›เซ€เช เชเซ‡เชกเชเชซเชเชธ. เชธเชฐเซเชตเชฐ เชธเซเชชเซ‡เชธเชจเซเช‚ เชธเช‚เชšเชพเชฒเชจ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เช† เชเช• เช…เชคเซเชฏเช‚เชค เชถเช•เซเชคเชฟเชถเชพเชณเซ€ เชธเชพเชงเชจ เช›เซ‡. ZFS เชฎเชพเชŸเซ‡ เช†เชญเชพเชฐ, เชคเชฎเซ‡ เชกเชฟเชธเซเช•เชฎเชพเช‚เชฅเซ€ เชธเซ€เชงเชพ เชœ เชตเชฟเชตเชฟเชง เชฐเซ‚เชชเชฐเซ‡เช–เชพเช‚เช•เชจเซ‹เชจเซ€ เชเชฐเซ‡ เชฌเชจเชพเชตเซ€ เชถเช•เซ‹ เช›เซ‹, เช—เชคเชฟเชถเซ€เชฒ เชฐเซ€เชคเซ‡ "เชนเซ‹เชŸ" เชœเช—เซเชฏเชพ เชตเชฟเชธเซเชคเซƒเชค เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹, เชกเซ‡เชก เชกเชฟเชธเซเช• เชฌเชฆเชฒเซ€ เชถเช•เซ‹ เช›เซ‹, เชธเซเชจเซ‡เชชเชถเซ‹เชŸ เชฎเซ‡เชจเซ‡เชœ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹ เช…เชจเซ‡ เช˜เชฃเซเช‚ เชฌเชงเซเช‚, เชœเซ‡ เชฒเซ‡เช–เซ‹เชจเซ€ เชธเช‚เชชเซ‚เชฐเซเชฃ เชถเซเชฐเซ‡เชฃเซ€เชฎเชพเช‚ เชตเชฐเซเชฃเชตเซ€ เชถเช•เชพเชฏ เช›เซ‡. เชšเชพเชฒเซ‹ เช†เชชเชฃเชพ เชธเชฐเซเชตเชฐ เช…เชจเซ‡ เชคเซ‡เชจเซ€ เชกเชฟเชธเซเช• เชชเชฐ เชชเชพเช›เชพ เชซเชฐเซ€เช. เช‡เชจเซเชธเซเชŸเซ‹เชฒเซ‡เชถเชจเชจเซ€ เชถเชฐเซ‚เช†เชคเชฎเชพเช‚, เช…เชฎเซ‡ เชเชจเซเช•เซเชฐเชฟเชชเซเชŸเซ‡เชก เชชเชพเชฐเซเชŸเซ€เชถเชจเซ‹ เชฎเชพเชŸเซ‡ เชกเชฟเชธเซเช• เชชเชฐ เช–เชพเชฒเซ€ เชœเช—เซเชฏเชพ เช›เซ‹เชกเซ€ เชฆเซ€เชงเซ€ เช›เซ‡. เชคเซ‡ เชถเชพ เชฎเชพเชŸเซ‡ เช›เซ‡? เช† เชเชŸเชฒเชพ เชฎเชพเชŸเซ‡ เช›เซ‡ เช•เซ‡ เชธเชฟเชธเซเชŸเชฎ เช†เชชเชฎเซ‡เชณเซ‡ เชœเชพเช—เซ€ เชœเชพเชฏ เช›เซ‡ เช…เชจเซ‡ SSH เชฆเซเชตเชพเชฐเชพ เชธเชพเช‚เชญเชณเซ‡ เช›เซ‡.

gpart add -t freebsd-zfs /dev/ada0

/dev/ada0p4 added!

เชฌเชพเช•เซ€เชจเซ€ เชœเช—เซเชฏเชพเชฎเชพเช‚ เชกเชฟเชธเซเช• เชชเชพเชฐเซเชŸเซ€เชถเชจ เช‰เชฎเซ‡เชฐเซ‹

geli init /dev/ada0p4

เช…เชฎเชพเชฐเซ‹ เชเชจเซเช•เซเชฐเชฟเชชเซเชถเชจ เชชเชพเชธเชตเชฐเซเชก เชฆเชพเช–เชฒ เช•เชฐเซ‹

geli attach /dev/ada0p4

เช…เชฎเซ‡ เชซเชฐเซ€เชฅเซ€ เชชเชพเชธเชตเชฐเซเชก เชฆเชพเช–เชฒ เช•เชฐเซ€เช เช›เซ€เช เช…เชจเซ‡ เช…เชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เช‰เชชเช•เชฐเชฃ เช›เซ‡ /dev/ada0p4.eli - เช† เช…เชฎเชพเชฐเซ€ เชเชจเซเช•เซเชฐเชฟเชชเซเชŸเซ‡เชก เชœเช—เซเชฏเชพ เช›เซ‡. เชชเช›เซ€ เช†เชชเชฃเซ‡ /dev/ada1 เช…เชจเซ‡ เชเชฐเซ‡เชฎเชพเช‚เชจเซ€ เชฌเชพเช•เซ€เชจเซ€ เชกเชฟเชธเซเช• เชฎเชพเชŸเซ‡ เชคเซ‡ เชœ เชชเซเชจเชฐเชพเชตเชฐเซเชคเชจ เช•เชฐเซ€เช เช›เซ€เช. เช…เชจเซ‡ เช…เชฎเซ‡ เชเช• เชจเชตเซเช‚ เชฌเชจเชพเชตเซ€เช เช›เซ€เช ZFS เชชเซ‚เชฒ.

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

เชซเชพเชฏเชฐเชตเซ‹เชฒ เชจเซ€เชคเชฟเช“ เชธเซ‡เชŸ เช•เชฐเชตเซ€ เช เชชเชฃ เชเช• เช…เชฒเช— เชตเชฟเชทเชฏ เช›เซ‡, เชคเซ‡เชฅเซ€ เชนเซเช‚ เชฌเชงเซ€ เชฌเซเชฒเซ‹เช• เชชเซ‹เชฒเชฟเชธเซ€ เชธเซ‡เชŸ เช•เชฐเชตเชพ เช…เชจเซ‡ เชตเซเชนเชพเช‡เชŸเชฒเชฟเชธเซเชŸเซเชธ เชธเซ‡เชŸ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชŠเช‚เชกเชพเชฃเชชเซ‚เชฐเซเชตเช• เชจเชนเซ€เช‚ เชœเชˆเชถ, เชคเชฎเซ‡ เชคเซ‡ เชตเชพเช‚เชšเซ€เชจเซ‡ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹ เชธเชคเซเชคเชพเชตเชพเชฐ เชฆเชธเซเชคเชพเชตเซ‡เชœเซ€เช•เชฐเชฃ เช…เชฅเชตเชพ Google เชชเชฐ เช‰เชชเชฒเชฌเซเชง เชตเชฟเชถเชพเชณ เชธเช‚เช–เซเชฏเชพเชฎเชพเช‚ เชฒเซ‡เช–เซ‹เชฎเชพเช‚เชฅเซ€ เช•เซ‹เชˆเชชเชฃ.

เชธเชพเชฐเซเช‚... เช…เชฎเซ‡ 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 เชœเชพเชนเซ‡เชฐ เช•เชฐเชถเซ‡ เชจเชนเซ€เช‚. เชคเซ‡เชฅเซ€, เช…เชฎเซ‡ ".เช“เชจ" เชธเซ‡เชตเชพ เชคเชฐเซ€เช•เซ‡ เช…เชจเซ‡ เชตเซเชฏเช•เซเชคเชฟเช—เชค เช•เซ‹เชทเซ‹ เชธเซเชงเซ€ เชˆเชจเซเชŸเชฐเชจเซ‡เชŸ เชเช•เซเชธเซ‡เชธ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชชเซเชฐเซ‹เช•เซเชธเซ€ เชคเชฐเซ€เช•เซ‡ เชธเซ‡เชตเชพเช“เชจเซ‡ "เชซเซ‹เชฐเชตเชฐเซเชก" เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เช…เชจเซเชฏ เชธเซ‡เชฒ เชฌเชจเชพเชตเซ€เช เช›เซ€เช.

# 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 เชคเซ‡ เชฎเชพเชคเซเชฐ เชเช• เชกเชฟเชฎเชจ เช›เซ‡ เชœเซ‡ เชฌเซเชฒเซ‹เช•เชšเซ‡เชจเชจเซ€ เชธเซเชฅเชพเชจเชฟเช• เชจเช•เชฒเชจเซ‡ เช…เชฆเซเชฏเชคเชจ เชฐเชพเช–เซ‡ เช›เซ‡. เช† เชกเชฟเชฎเชจ เช†เชฐเชชเซ€เชธเซ€ เช…เชจเซ‡ เชตเซ‰เชฒเซ‡เชŸ เช•เชพเชฐเซเชฏเช•เซเชทเชฎเชคเชพ เชงเชฐเชพเชตเซ‡ เช›เซ‡, เชชเชฐเช‚เชคเซ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ เชกเซ‡เชตเชฒเชชเชฎเซ‡เชจเซเชŸ เชฎเชพเชŸเซ‡ เชตเชงเซ เช…เชจเซเช•เซ‚เชณ "เชฐเซ…เชชเชฐเซเชธ" เช›เซ‡. เชถเชฐเซ‚ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡, เช…เชฎเซ‡ เชฎเซ‚เช•เชตเชพเชจเซเช‚ เชจเช•เซเช•เซ€ เช•เชฐเซเชฏเซเช‚ electrum CLI เชตเซ‰เชฒเซ‡เชŸ เช›เซ‡. เช† เชชเชพเช•เซ€เชŸ เช…เชฎเซ‡ เชคเซ‡เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช…เชฎเชพเชฐเชพ เชฌเชฟเชŸเช•เซ‹เช‡เชจเซเชธ เชฎเชพเชŸเซ‡ "เช•เซ‹เชฒเซเชก เชธเซเชŸเซ‹เชฐเซ‡เชœ" เชคเชฐเซ€เช•เซ‡ เช•เชฐเซ€เชถเซเช‚ - เชธเชพเชฎเชพเชจเซเชฏ เชฐเซ€เชคเซ‡, เชคเซ‡ เชฌเชฟเชŸเช•เซ‹เช‡เชจเซเชธ เช•เซ‡ เชœเซ‡เชจเซ‡ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเช“ เชฎเชพเชŸเซ‡ เชธเซเชฒเชญ เช…เชจเซ‡ เชธเชพเชฎเชพเชจเซเชฏ เชฐเซ€เชคเซ‡ เชฆเชฐเซ‡เช•เชฅเซ€ เชฆเซ‚เชฐ เชธเชฟเชธเซเชŸเชฎเชจเซ€ "เชฌเชนเชพเชฐ" เชธเช‚เช—เซเชฐเชนเชฟเชค เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชชเชกเชถเซ‡. เชคเซ‡เชจเซ€ เชชเชพเชธเซ‡ GUI เชชเชฃ เช›เซ‡, เชคเซ‡เชฅเซ€ เช…เชฎเซ‡ เช…เชฎเชพเชฐเชพ เชชเชฐ เชธเชฎเชพเชจ เชตเซ‰เชฒเซ‡เชŸเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพ เชœเชˆ เชฐเชนเซเชฏเชพ เช›เซ€เช
เชฒเซ‡เชชเชŸเซ‹เชช เชนเชฎเชฃเชพเช‚ เชฎเชพเชŸเซ‡ เช…เชฎเซ‡ เชœเชพเชนเซ‡เชฐ เชธเชฐเซเชตเชฐ เชธเชพเชฅเซ‡ เช‡เชฒเซ‡เช•เซเชŸเซเชฐเชฎเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชถเซเช‚, เช…เชจเซ‡ เชชเช›เซ€เชฅเซ€ เช…เชฎเซ‡ เชคเซ‡เชจเซ‡ เชฌเซ€เชœเชพ เชธเซ‡เชฒเชฎเชพเช‚ เชตเชงเชพเชฐเซ€เชถเซเช‚ เชˆเชฒเซ‡เช•เซเชŸเซเชฐเชฎเชเช•เซเชธเชœเซ‡เชฅเซ€ เช•เชฐเซ€เชจเซ‡ เช•เซ‹เชˆเชจเชพ เชชเชฐ เชจเชฟเชฐเซเชญเชฐ เชจ เชฐเชนเซ‡.

# 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

เชนเชตเซ‡ เชตเซ‰เชฒเซ‡เชŸเชจเชพ เชˆเชจเซเชŸเชฐเชจเซ‡เชŸ เชเช•เซเชธเซ‡เชธ เชธเชพเชฅเซ‡ เชธเซ‡เชฒเชจเซ‡ เชฌเช‚เชง เช•เชฐเซ€เช. เชšเชพเชฒเซ‹ เชคเซ‡เชจเซ‡ เช…เชจเซเชฏ เชธเชฌเชจเซ‡เชŸ เชธเซเชชเซ‡เชธเชฎเชพเช‚เชฅเซ€ IP เชธเชฐเชจเชพเชฎเซเช‚ เช†เชชเซ€เช เชœเซ‡ NATEd เชจเชฅเซ€. เชชเชนเซ‡เชฒเชพ เช†เชชเชฃเซ‡ เชฌเชฆเชฒเซ€เช /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 เช…เชจเซ‡ http://192.168.0.6:8123

เชนเชตเซ‡ เช…เชฎเซ‡ เช…เชฎเชพเชฐเชพ เชตเซ‰เชฒเซ‡เชŸ เชชเชฐเซเชฏเชพเชตเชฐเชฃเชจเซ‡ เช—เซ‹เช เชตเซ€ เชถเช•เซ€เช เช›เซ€เช

# 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

เชธเชพเชฐเซเช‚, Linux เช•เซเชฒเชพเชฏเช‚เชŸ เชฎเชถเซ€เชจเชฎเชพเช‚เชฅเซ€

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

เชšเชพเชฒเซ‹ เช•เชจเซ‡เช•เซเชŸ เช•เชฐเซ€เช (เช† เช•เชพเชฎ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡, เชคเชฎเชพเชฐเซ‡ เชธเซเชฅเชพเชจเชฟเช• TOR เชกเชฟเชฎเชจเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡ เชœเซ‡ 9050 เชชเชฐ เชธเชพเช‚เชญเชณเซ‡ เช›เซ‡)

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-เชฒเชพเชˆเชŸเชจเชฟเช‚เช—เชœเซ‡เชจเซ‹ เช†เชชเชฃเซ‡ เชกเชฟเชฎเชจ เชคเชฐเซ€เช•เซ‡ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพ เชœเชˆ เชฐเชนเซเชฏเชพ เช›เซ€เช เชธเซเชชเชพเชฐเซเช•เซ‹ เชชเซเชฒเช—เช‡เชจ, เชœเซ‡ เชธเช‚เชชเซ‚เชฐเซเชฃ เชธเซเชตเชฟเชงเชพเชฏเซเช•เซเชค HTTP (REST) โ€‹โ€‹เช‡เชจเซเชŸเชฐเชซเซ‡เชธ เช›เซ‡ เช…เชจเซ‡ เชคเชฎเชจเซ‡ เช‘เชซ-เชšเซ‡เช‡เชจ เช…เชจเซ‡ เช‘เชจ-เชšเซ‡เช‡เชจ เชตเซเชฏเชตเชนเชพเชฐเซ‹ เชฌเช‚เชจเซ‡ เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ‡ เช›เซ‡. 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:/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 ~

เชคเชฎเชพเชฐเซ‡ เชฌเชฟเชŸเช•เซ‹เช‡เชจ-เช•เซเชฒเซ€ เชฎเชพเชŸเซ‡ เชเช• เชฐเซ‚เชชเชฐเซ‡เช–เชพเช‚เช•เชจ เชซเชพเช‡เชฒ เชฌเชจเชพเชตเชตเชพเชจเซ€ เชชเชฃ เชœเชฐเซ‚เชฐ เช›เซ‡, เชเช• เช‰เชชเชฏเซ‹เช—เชฟเชคเชพ เชœเซ‡ เชธเชพเชฅเซ‡ เชตเชพเชคเชšเซ€เชค เช•เชฐเซ‡ เช›เซ‡ 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 เชกเซ‡เชŸเชพเชธเซ‡เชŸ เช›เซ‡, เช…เชจเซ‡ เช† เช…เชคเซเชฏเช‚เชค เช…เชจเซเช•เซ‚เชณ เช›เซ‡. ZFS เชชเชฃ เชชเชฐเชตเชพเชจเช—เซ€ เช†เชชเซ‡ เช›เซ‡ SSH เชฎเชพเชฐเชซเชค เชธเซเชจเซ‡เชชเชถเซ‹เชŸ เชฎเซ‹เช•เชฒเชตเชพ เชœเซ‡เชตเซ€ เช…เชจเซเชฏ เชตเชฟเชตเชฟเชง เชธเชฐเชธ เชตเชธเซเชคเซเช“ เช•เชฐเซ‹. เช…เชฎเซ‡ เชคเซ‡เชจเซเช‚ เชตเชฐเซเชฃเชจ เช•เชฐเซ€เชถเซเช‚ เชจเชนเซ€เช‚, เชชเชนเซ‡เชฒเซ‡เชฅเซ€ เชœ เช˜เชฃเซเช‚ เชฌเชงเซเช‚ เช›เซ‡.

เชคเซ‡ เชฏเชœเชฎเชพเชจเชจเชพ เชฐเชฟเชฎเซ‹เชŸ เชฎเซ‹เชจเชฟเชŸเชฐเชฟเช‚เช—เชจเซ€ เชœเชฐเซ‚เชฐเชฟเชฏเชพเชคเชจเซ‡ เชงเซเชฏเชพเชจเชฎเชพเช‚ เชฒเซ‡เชตเซเช‚ เชชเชฃ เชฏเซ‹เช—เซเชฏ เช›เซ‡, เช† เชนเซ‡เชคเซเช“ เชฎเชพเชŸเซ‡ เช…เชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เช›เซ‡ เชเชฌเซเชฌเซ€เช•เซเชธ.

เชฌเซ€ - เชธเชฒเชพเชฎเชคเซ€

เชธเซเชฐเช•เซเชทเชพเชจเชพ เชธเช‚เชฆเชฐเซเชญเชฎเชพเช‚, เชšเชพเชฒเซ‹ เชˆเชจเซเชซเซเชฐเชพเชธเซเชŸเซเชฐเช•เซเชšเชฐเชจเชพ เชธเช‚เชฆเชฐเซเชญเชฎเชพเช‚ เชฎเซเช–เซเชฏ เชธเชฟเชฆเซเชงเชพเช‚เชคเซ‹เชฅเซ€ เชถเชฐเซ‚เช†เชค เช•เชฐเซ€เช:

เช—เซ‹เชชเชจเซ€เชฏเชคเชพ - UNIX เชœเซ‡เชตเซ€ เชธเชฟเชธเซเชŸเชฎเชจเชพ เชฎเชพเชจเช• เชธเชพเชงเชจเซ‹ เช† เชธเชฟเชฆเซเชงเชพเช‚เชคเชจเชพ เช…เชฎเชฒเซ€เช•เชฐเชฃเชจเซ€ เช–เชพเชคเชฐเซ€ เช•เชฐเซ‡ เช›เซ‡. เช…เชฎเซ‡ เชธเชฟเชธเซเชŸเชฎเชจเชพ เชฆเชฐเซ‡เช• เชคเชพเชฐเซเช•เชฟเช• เชฐเซ€เชคเซ‡ เช…เชฒเช— เชคเชคเซเชตเชจเซ€ เชเช•เซเชธเซ‡เชธเชจเซ‡ เชคเชพเชฐเซเช•เชฟเช• เชฐเซ€เชคเซ‡ เช…เชฒเช— เช•เชฐเซ€เช เช›เซ€เช - เชเช• เช•เซ‹เชท. เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเช“เชจเซ€ เชตเซเชฏเช•เซเชคเชฟเช—เชค เช•เซ€เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชชเซเชฐเชฎเชพเชฃเชญเซ‚เชค เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพ เชชเซเชฐเชฎเชพเชฃเซ€เช•เชฐเชฃ เชฆเซเชตเชพเชฐเชพ เชเช•เซเชธเซ‡เชธ เชชเซเชฐเชฆเชพเชจ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡. เช•เซ‹เชทเซ‹ เชตเชšเซเชšเซ‡ เช…เชจเซ‡ เช…เช‚เชค เชธเซเชงเซ€เชจเซ‹ เชคเชฎเชพเชฎ เชธเช‚เชšเชพเชฐ เชเชจเช•เซเชฐเชฟเชชเซเชŸเซ‡เชก เชธเซเชตเชฐเซ‚เชชเชฎเชพเช‚ เชฅเชพเชฏ เช›เซ‡. เชกเชฟเชธเซเช• เชเชจเซเช•เซเชฐเชฟเชชเซเชถเชจ เชฎเชพเชŸเซ‡ เช†เชญเชพเชฐ, เชกเชฟเชธเซเช•เชจเซ‡ เชฌเชฆเชฒเชคเซ€ เชตเช–เชคเซ‡ เช…เชฅเชตเชพ เชฌเซ€เชœเชพ เชธเชฐเซเชตเชฐ เชชเชฐ เชธเซเชฅเชพเชจเชพเช‚เชคเชฐเชฟเชค เช•เชฐเชคเซ€ เชตเช–เชคเซ‡ เช…เชฎเชพเชฐเซ‡ เชกเซ‡เชŸเชพเชจเซ€ เชธเชฒเชพเชฎเชคเซ€ เชตเชฟเชถเซ‡ เชšเชฟเช‚เชคเชพ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชจเชฅเซ€. เชเช•เชฎเชพเชคเซเชฐ เชœเชŸเชฟเชฒ เชเช•เซเชธเซ‡เชธ เช เชนเซ‹เชธเซเชŸ เชธเชฟเชธเซเชŸเชฎเชจเซ€ เชเช•เซเชธเซ‡เชธ เช›เซ‡, เช•เชพเชฐเชฃ เช•เซ‡ เช†เชตเซ€ เชเช•เซเชธเซ‡เชธ เชธเชพเชฎเชพเชจเซเชฏ เชฐเซ€เชคเซ‡ เช•เชจเซเชŸเซ‡เชจเชฐเชจเซ€ เช…เช‚เชฆเชฐเชจเชพ เชกเซ‡เชŸเชพเชจเซ€ เชเช•เซเชธเซ‡เชธ เชชเซเชฐเชฆเชพเชจ เช•เชฐเซ‡ เช›เซ‡.

เช…เช–เช‚เชกเชฟเชคเชคเชพ โ€œเช† เชธเชฟเชฆเซเชงเชพเช‚เชคเชจเซ‹ เช…เชฎเชฒ เชตเชฟเชตเชฟเชง เชธเซเชคเชฐเซ‡ เชฅเชพเชฏ เช›เซ‡. เชธเซŒเชชเซเชฐเชฅเชฎ, เช เชจเซ‹เช‚เชงเชตเซเช‚ เช…เช—เชคเซเชฏเชจเซเช‚ เช›เซ‡ เช•เซ‡ เชธเชฐเซเชตเชฐ เชนเชพเชฐเซเชกเชตเซ‡เชฐ, ECC เชฎเซ‡เชฎเชฐเซ€เชจเชพ เช•เชฟเชธเซเชธเชพเชฎเชพเช‚, ZFS เชชเชนเซ‡เชฒเซ‡เชฅเซ€ เชœ "เชฌเซ‰เช•เซเชธเชจเซ€ เชฌเชนเชพเชฐ" เชฎเชพเชนเชฟเชคเซ€ เชฌเชฟเชŸเซเชธเชจเชพ เชธเซเชคเชฐเซ‡ เชกเซ‡เชŸเชพเชจเซ€ เช…เช–เช‚เชกเชฟเชคเชคเชพเชจเซ€ เช•เชพเชณเชœเซ€ เชฒเซ‡ เช›เซ‡. เชคเซเชตเชฐเชฟเชค เชธเซเชจเซ‡เชชเชถเซ‹เชŸ เชคเชฎเชจเซ‡ เชซเซเชฒเชพเชฏ เชชเชฐ เช•เซ‹เชˆเชชเชฃ เชธเชฎเชฏเซ‡ เชฌเซ‡เช•เช…เชช เชฒเซ‡เชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ‡ เช›เซ‡. เช…เชจเซเช•เซ‚เชณ เชธเซ‡เชฒ เชจเชฟเช•เชพเชธ/เช†เชฏเชพเชค เชธเชพเชงเชจเซ‹ เชธเซ‡เชฒ เชชเซเชฐเชคเชฟเช•เซƒเชคเชฟเชจเซ‡ เชธเชฐเชณ เชฌเชจเชพเชตเซ‡ เช›เซ‡.

เช‰เชชเชฒเชฌเซเชงเชคเชพ - เช† เชชเชนเซ‡เชฒเซ‡เชฅเซ€ เชœ เชตเซˆเช•เชฒเซเชชเชฟเช• เช›เซ‡. เชคเชฎเชพเชฐเซ€ เช–เซเชฏเชพเชคเชฟเชจเซ€ เชกเชฟเช—เซเชฐเซ€ เช…เชจเซ‡ เชคเชฎเชจเซ‡ เชจเชซเชฐเชค เช•เชฐเชจเชพเชฐเชพเช“ เช›เซ‡ เชคเซ‡เชจเชพ เชชเชฐ เช†เชงเชพเชฐ เชฐเชพเช–เซ‡ เช›เซ‡. เช…เชฎเชพเชฐเชพ เช‰เชฆเชพเชนเชฐเชฃเชฎเชพเช‚, เช…เชฎเซ‡ เช–เชพเชคเชฐเซ€ เช•เชฐเซ€ เช›เซ‡ เช•เซ‡ เชตเซ‰เชฒเซ‡เชŸ เชซเช•เซเชค TOP เชจเซ‡เชŸเชตเชฐเซเช•เชฅเซ€ เชœ เชเช•เซเชธเซ‡เชธเชฟเชฌเชฒ เช›เซ‡. เชœเซ‹ เชœเชฐเซ‚เชฐเซ€ เชนเซ‹เชฏ เชคเซ‹, เชคเชฎเซ‡ เชซเชพเชฏเชฐเชตเซ‹เชฒ เชชเชฐเชจเซ€ เชฆเชฐเซ‡เช• เชตเชธเซเชคเซเชจเซ‡ เช…เชตเชฐเซ‹เชงเชฟเชค เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹ เช…เชจเซ‡ เชธเชฐเซเชตเชฐเชจเซ‡ เชซเช•เซเชค เชŸเชจเชฒ เชฆเซเชตเชพเชฐเชพ เชเช•เซเชธเซ‡เชธ เช•เชฐเชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ€ เชถเช•เซ‹ เช›เซ‹ (TOR เช…เชฅเชตเชพ VPN เชฌเซ€เชœเซ€ เชฌเชพเชฌเชค เช›เซ‡). เช†เชฎ, เชธเชฐเซเชตเชฐ เชถเช•เซเชฏ เชคเซ‡เชŸเชฒเซเช‚ เชฌเชนเชพเชฐเชจเซ€ เชฆเซเชจเชฟเชฏเชพเชฅเซ€ เช•เชพเชชเซ€ เชจเชพเช–เชตเชพเชฎเชพเช‚ เช†เชตเชถเซ‡, เช…เชจเซ‡ เชซเช•เซเชค เช†เชชเชฃเซ‡ เชœ เชคเซ‡เชจเซ€ เช‰เชชเชฒเชฌเซเชงเชคเชพเชจเซ‡ เชชเซเชฐเชญเชพเชตเชฟเชค เช•เชฐเซ€ เชถเช•เซ€เชถเซเช‚.

เช‡เชจเช•เชพเชฐเชจเซ€ เช…เชถเช•เซเชฏเชคเชพ - เช…เชจเซ‡ เช† เชตเชงเซ เช•เชพเชฎเช—เซ€เชฐเซ€ เช…เชจเซ‡ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพ เช…เชงเชฟเช•เชพเชฐเซ‹, เชเช•เซเชธเซ‡เชธ เชตเช—เซ‡เชฐเซ‡ เชฎเชพเชŸเซ‡เชจเซ€ เชฏเซ‹เช—เซเชฏ เชจเซ€เชคเชฟเช“เชจเซเช‚ เชชเชพเชฒเชจ เช•เชฐเชตเชพ เชชเชฐ เช†เชงเชพเชฐ เชฐเชพเช–เซ‡ เช›เซ‡. เชชเชฐเช‚เชคเซ เชฏเซ‹เช—เซเชฏ เช…เชญเชฟเช—เชฎ เชธเชพเชฅเซ‡, เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเชจเซ€ เชคเชฎเชพเชฎ เช•เซเชฐเชฟเชฏเชพเช“เชจเซเช‚ เช“เชกเชฟเชŸ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡, เช…เชจเซ‡ เชธเช‚เช•เซ‡เชคเชฒเชฟเชชเซ€เชจเชพ เช‰เช•เซ‡เชฒเซ‹เชจเซ‡ เช•เชพเชฐเชฃเซ‡ เชšเซ‹เช•เซเช•เชธ เช•เซเชฐเชฟเชฏเชพเช“ เช•เซ‹เชฃเซ‡ เช…เชจเซ‡ เช•เซเชฏเชพเชฐเซ‡ เช•เชฐเซ€ เชคเซ‡ เช…เชธเซเชชเชทเซเชŸเชชเชฃเซ‡ เช“เชณเช–เซ€ เชถเช•เชพเชฏ เช›เซ‡.

เช…เชฒเชฌเชคเซเชค, เชตเชฐเซเชฃเชตเซ‡เชฒ เชฐเซ‚เชชเชฐเซ‡เช–เชพเช‚เช•เชจ เช เชนเช‚เชฎเซ‡เชถเชพ เช•เซ‡เชตเซเช‚ เชนเซ‹เชตเซเช‚ เชœเซ‹เชˆเช เชคเซ‡เชจเซเช‚ เชธเช‚เชชเซ‚เชฐเซเชฃ เช‰เชฆเชพเชนเชฐเชฃ เชจเชฅเซ€, เชคเซ‡ เช–เซ‚เชฌ เชœ เชฒเชตเชšเซ€เช• เชธเซเช•เซ‡เชฒเชฟเช‚เช— เช…เชจเซ‡ เช•เชธเซเชŸเชฎเชพเช‡เชเซ‡เชถเชจ เช•เซเชทเชฎเชคเชพเช“เชจเซ‡ เชœเชพเชณเชตเซ€ เชฐเชพเช–เซ€เชจเซ‡ เชคเซ‡ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เชนเซ‹เชˆ เชถเช•เซ‡ เชคเซ‡เชจเซเช‚ เชเช• เช‰เชฆเชพเชนเชฐเชฃ เช›เซ‡.

เชธเช‚เชชเซ‚เชฐเซเชฃ เชตเชฐเซเชšเซเชฏเซเช…เชฒเชพเชˆเชเซ‡เชถเชจ เชตเชฟเชถเซ‡ เชถเซเช‚?

เชคเชฎเซ‡ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹ cbsd เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชธเช‚เชชเซ‚เชฐเซเชฃ เชตเชฐเซเชšเซเชฏเซเช…เชฒเชพเชˆเชเซ‡เชถเชจ เชตเชฟเชถเซ‡ เช…เชนเซ€เช‚ เชตเชพเช‚เชšเซ‹. เชนเซเช‚ เชคเซ‡เชจเซ‡ เชซเช•เซเชค เช•เชพเชฎ เชฎเชพเชŸเซ‡ เช‰เชฎเซ‡เชฐเซ€เชถ bhyve เชคเชฎเชพเชฐเซ‡ เช•เซ‡เชŸเชฒเชพเช• เช•เชฐเซเชจเชฒ เชตเชฟเช•เชฒเซเชชเซ‹เชจเซ‡ เชธเช•เซเชทเชฎ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡.

# cat /etc/rc.conf

...
kld_list="vmm if_tap if_bridge nmdm"
...

# cat /boot/loader.conf

...
vmm_load="YES"
...

เชคเซ‡เชฅเซ€ เชœเซ‹ เชคเชฎเชพเชฐเซ‡ เช…เชšเชพเชจเช• เชกเซ‹เช•เชฐ เชถเชฐเซ‚ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชนเซ‹เชฏ, เชคเซ‹ เชชเช›เซ€ เช•เซ‡เชŸเชฒเชพเช• เชกเซ‡เชฌเชฟเชฏเชจ เช‡เชจเซเชธเซเชŸเซ‹เชฒ เช•เชฐเซ‹ เช…เชจเซ‡ เชœเชพเช“!

เชชเชพเช‚เชœเชฐเชพเชฎเชพเช‚ เชฌเชฟเชŸเช•เซ‹เชˆเชจ?

เชฌเชธ เชเชŸเชฒเซเช‚ เชœ

เชฎเชจเซ‡ เชฒเชพเช—เซ‡ เช›เซ‡ เช•เซ‡ เช†เชŸเชฒเซเช‚ เชœ เชนเซเช‚ เชถเซ‡เชฐ เช•เชฐเชตเชพ เชฎเชพเช‚เช—เชคเซ‹ เชนเชคเซ‹. เชœเซ‹ เชคเชฎเชจเซ‡ เชฒเซ‡เช– เช—เชฎเซเชฏเซ‹ เชนเซ‹เชฏ, เชคเซ‹ เชคเชฎเซ‡ เชฎเชจเซ‡ เช•เซ‡เชŸเชฒเชพเช• เชฌเชฟเชŸเช•เซ‹เช‡เชจเซเชธ เชฎเซ‹เช•เชฒเซ€ เชถเช•เซ‹ เช›เซ‹ - bc1qu7lhf45xw83ddll5mnzte6ahju8ktkeu6qhttc. เชœเซ‹ เชคเชฎเซ‡ เช•เซ‹เชทเซ‹เชจเซ‡ เช•เซเชฐเชฟเชฏเชพเชฎเชพเช‚ เช…เชœเชฎเชพเชตเชตเชพ เชฎเชพเช‚เช—เชคเชพ เชนเซ‹เชต เช…เชจเซ‡ เช•เซ‡เชŸเชฒเชพเช• เชฌเชฟเชŸเช•เซ‹เช‡เชจเซเชธ เชงเชฐเชพเชตเซ‹ เช›เซ‹, เชคเซ‹ เชคเชฎเซ‡ เชฎเชพเชฐเชพ เชชเชฐ เชœเชˆ เชถเช•เซ‹ เช›เซ‹ เชชเชพเชฒเชคเซ-เชชเซเชฐเซ‹เชœเซ‡เช•เซเชŸ.

เชธเซ‹เชฐเซเชธ: www.habr.com