သူငယ်ချင်း Ovirt နဲ့ Encrypt လုပ်ရအောင်

အခြေခံအဆောက်အဦများ တိုးတက်ကောင်းမွန်လာရာလမ်းတစ်လျှောက် လျှောက်လှမ်းရင်း၊ မလိုအပ်ဘဲ ခန္ဓာကိုယ်လှုပ်ရှားမှုများမပါဘဲ လုပ်ဖော်ကိုင်ဖက်များ (ဆော့ဖ်ဝဲအင်ဂျင်နီယာများ၊ စမ်းသပ်သူများ၊ စီမံခန့်ခွဲသူများ၊ စသည်ဖြင့်) ရှေးကျပြီး နာကျင်စရာမေးခွန်းတစ်ခုကို အပြီးသတ်ရန် ဆုံးဖြတ်ခဲ့သည်။ ovirt တွင်၊ ကျွန်ုပ်၏ပြဿနာကိုဖြေရှင်းရန် configure လုပ်ရန် လိုအပ်သော အစိတ်အပိုင်းများစွာရှိသည်- ဝဘ်အင်တာဖေ့စ်ကိုယ်တိုင်၊ noVNC ကွန်ဆိုးလ်နှင့် ဒစ်ခ်ရုပ်ပုံများကို တင်နေသည်။

"Make it Awesome" ခလုတ်ကို ရှာမတွေ့တဲ့အတွက် ဒီပြဿနာကို ဖြေရှင်းဖို့ ဘယ်ခလုတ်တွေကို လှည့်လိုက်တာလဲဆိုတာ ပြသနေပါတယ်။ အောက်ပါ ညွှန်ကြားချက် အပြည့်အစုံ-

Ovirt ပြုလုပ်နည်းနှင့် သူငယ်ချင်းများကို စာဝှက်ကြပါစို့

Disclaimer:

ကျွန်ုပ်တို့မစတင်မီ၊ ကျွန်ုပ်မသိရသည့် အကြောင်းအရင်းအချို့ကြောင့် အခြေခံအဆောက်အအုံဒိုမိန်းများကို သီးသန့်ဇုန်များ၊ လန်၊ ဒေသစသည်ဖြင့် ဖန်တီးထားကြောင်း ထောက်ပြလိုပါသည်။

အဖွဲ့အစည်း၏ ဒိုမိန်းကို အများသူငှာ ဇုန်အတွင်း မည်သည့်အရာက သင့်ကို တားဆီးထားသည်ကို ကျွန်ုပ်မသိပါ။ ဥပမာအားဖြင့်၊ Alex-GLuck-Awesome-Company.local ဒိုမိန်းအစား၊ သင်သည် ကုမ္ပဏီ၏ဝဘ်ဆိုဒ် Alex-GLuck-Awesome-Company.com အတွက် ဒိုမိန်းကို ဘေးကင်းစွာ အသုံးပြုနိုင်ပါသည်။

သင့်အဖွဲ့အစည်းရှိ ဒိုမိန်းများကို ခြေရာခံ၍မရတော့မည်ကို ကြောက်ရွံ့ပါက၊ ၎င်းသည် တစ်စုံတစ်ခုကို ချိုးဖျက်မည်ကို စိုးရိမ်ပါက တစ်နှစ်လျှင် ရူဘယ် 100 မျှသာရှိသော aglac.com အခြေခံအဆောက်အအုံအတွက် သီးခြားဒိုမိန်းတစ်ခုကို သင်ယူနိုင်သည်။

အများသူငှာ ဇုန်များတွင် ဒိုမိန်းများကို အသုံးပြုခြင်းသည် အဘယ်ကြောင့် ပို၍ အကျိုးရှိသနည်း။

၁။ သင့်အဖွဲ့အစည်းတွင် အများပြည်သူ ဝင်ရောက်ကြည့်ရှုနိုင်သော ဝန်ဆောင်မှုများ ရှိသည်- vpn, ဖိုင်မျှဝေခြင်း (seafile, nextcloud) နှင့် အခြား။ ထိုကဲ့သို့သော ဝန်ဆောင်မှုများတွင် traffic encryption ကို စနစ်ထည့်သွင်းခြင်းသည် ပုံမှန်အားဖြင့် အနည်းငယ် ပေါ့ပေါ့တန်တန် လုပ်ဆောင်လေ့ရှိပြီး MitM တိုက်ခိုက်မှုများကို ကျွန်ုပ်တို့ ကာကွယ်မည်မဟုတ်ပါ၊ အဘယ်ကြောင့်ဆိုသော် ၎င်းသည် ခက်ခဲသောကြောင့်ဖြစ်သည် (တကယ်တော့ မဟုတ်ပါ)။

သို့မဟုတ် ရုံးခန်းအတွင်း၌ သင့်တွင် ဝန်ဆောင်မှုလိပ်စာတစ်ခုရှိပြီး အင်တာနက်မှ အခြားတစ်ခုရှိသည်၊ ၎င်းချိတ်ဆက်မှုများကို ထိန်းသိမ်းထားရန် လိုအပ်ပြီး ကျွန်ုပ်တို့၏အကန့်အသတ်ရှိသော အထူးကျွမ်းကျင်သူအရင်းအမြစ်များကို ဆုံးရှုံးစေပါသည်။ ဝန်ထမ်းများသည် အဆင်မပြေသော မတူညီသောလိပ်စာများကို မှတ်သားထားရပါမည်။

2. သင့်အတွင်းပိုင်းဝန်ဆောင်မှုများကို စာဝှက်ရန် အခမဲ့လက်မှတ်အာဏာပိုင်များကို သင်အသုံးပြုနိုင်ပါသည်။

ကိုယ်ပိုင် PKI သည် ပံ့ပိုးပေးရန်လိုအပ်သော ဝန်ဆောင်မှုတစ်ခုဖြစ်သည်။ အခြားအလုပ်များတွင် သုံးစွဲနိုင်သည့် ဝန်ထမ်းများ၏အချိန်ထက် အခမဲ့ အသိအမှတ်ပြုလက်မှတ်ဌာနများမှ PKI ကို သုံးနိုင်မှုအတွက် တစ်နှစ်လျှင် 100 ရူဘယ်။

3. သင်၏ကိုယ်ပိုင်အသိအမှတ်ပြုစင်တာကိုအသုံးပြုသည့်အခါ BYOD နှင့်အလုပ်လုပ်လိုသောသင်၏အဝေးမှဝန်ထမ်းများနှင့်လုပ်ဖော်ကိုင်ဖက်များ၏စကားသံကို BYOD (၎င်းတို့၏ကိုယ်ပိုင်လက်တော့ပ်များ၊ ဖုန်းများ၊ တက်ဘလက်များယူဆောင်လာသည်) နှင့်၎င်းတို့၏စက်ပစ္စည်းများကိုသင်မစီမံနိုင်ပါ။ ၎င်းတို့သည် Macs၊ Linux၊ Androids၊ iOS၊ Windows တို့ကို ယူဆောင်လာပါသည် - ထိုသို့သောတိရစ္ဆာန်ရုံကို ပံ့ပိုးရာတွင် ဘာအကြောင်းမှ မရှိပါ။

အရာအားလုံးအတွက် ခြွင်းချက်ရှိပါသည်၊ ဘဏ်များနှင့် လုံခြုံရေးမူဝါဒများချမှတ်ထားသော အခြားခက်ခဲသောစီးပွားရေးလုပ်ငန်းများသည် ၎င်းတို့၏ဝန်ထမ်းများအတွက် ဝန်ဆောင်မှုကို ဘယ်သောအခါမှ မြှင့်တင်နိုင်မည်မဟုတ်ပါ။

၎င်းတို့အတွက်၊ အချို့သောပမာဏအတွက် ၎င်းတို့၏ CA လက်မှတ်ကို လက်မှတ်ရေးထိုးနိုင်သည့် အခပေး အသိအမှတ်ပြုစင်တာများ (google “root signing service”)။

အများသူငှာ ဒိုမိန်းကို အသုံးပြုရခြင်း၏ အခြားအကြောင်းရင်းများ ရှိပါသည် (အရေးကြီးဆုံးအရာမှာ ၎င်းကို သင်ပိုင်ဆိုင်သည်)၊ သို့သော် ဤဆောင်းပါးသည် ထိုအကြောင်းမဟုတ်ပါ။

အချက်ကတော့...

သတိပေးချက်။ ovirt ၏ ယုံကြည်စိတ်ချရသောစာရင်းတွင် Let's Encrypt CA လက်မှတ်ကို ပေါင်းထည့်ပါက၊ ၎င်းသည် သင့်စနစ်များ၏ လုံခြုံရေးကို ထိခိုက်စေနိုင်သည်။

ပထမဆုံး သတိထားရမည့်အချက်မှာ အင်တာနက်ပေါ်တွင် Ovirt အင်တာဖေ့စ်များကို ပို့စ်တင်ခြင်းသည် လက်တွေ့ကျကျ အဓိပ္ပါယ်မရှိသည့်အပြင် နောက်ထပ်လုံခြုံရေးခြိမ်းခြောက်မှုများကို ဖန်တီးပေးသောကြောင့် ဆိုးရွားသောအလေ့အကျင့်ဖြစ်သည်။

ထို့ကြောင့်၊ ကျွန်ုပ်တို့၏ခံတပ်အိမ်ရှင်များအနက်မှ လက်မှတ်တစ်ခုရရှိရန် လိုအပ်ပြီး လက်မှတ်နှင့် သော့အား ovirt-engine ဖြင့် ကျွန်ုပ်တို့၏အိမ်ရှင်ထံသို့ လွှဲပြောင်းပေးရန် လိုအပ်ပါသည်။

ကျွန်ုပ်တို့၏ ovirta အမည်ဖြင့် ကျွန်ုပ်တို့၏ ခံတပ်အိမ်ရှင်၏ ပြင်ပလိပ်စာကို DNS သို့ ထည့်ပါ။ ovirtengine.example.comငါသည် certbot နှင့် nginx တပ်ဆင်ခြင်းကို မြင်ကွင်းနောက်ကွယ်တွင် ထားခဲ့ပါမည် (ဒါကို Habr တွင် ဖော်ပြထားပြီးဖြစ်သည်)။

nginx ဗားရှင်း >=1.15.7 ကို ပြင်ဆင်သတ်မှတ်ခြင်း။

/etc/nginx/conf.d/default.conf

server {
    server_name _;
    listen 80 default_server;
    location /robots.txt { alias /usr/share/nginx/html/robots.txt; }
    location /.well-known {
        root /usr/share/nginx/html;
    }
    location / {
        return 444;
    }
}

server {
    server_name _;
    listen 443 ssl http2 default_server;
    location /robots.txt { alias /usr/share/nginx/html/robots.txt; }
    location /.well-known {
        root /usr/share/nginx/html;
    }

    ssl_certificate /etc/nginx/ssl/$ssl_server_name/fullchain.pem; 
    ssl_certificate_key /etc/nginx/ssl/$ssl_server_name/privkey.pem;

    ssl_protocols TLSv1.2;
    ssl_prefer_server_ciphers on;

    ssl_dhparam /etc/nginx/ssl/dhparam.pem;
    ssl_ciphers 'ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA';
    ssl_session_timeout 1d;
    ssl_session_cache shared:SSL:50m;

    # позволяем серверу прикреплять OCSP-ответы, тем самым уменьшая время загрузки страниц у пользователей
    ssl_stapling on;
    ssl_stapling_verify on;
    add_header Strict-Transport-Security max-age=15768000;

    location / {
        return 444;
    }
}

ထို့နောက် ကျွန်ုပ်တို့၏ လက်မှတ်နှင့် သော့ကို ရရှိပါသည်-

certbot certonly --nginx -d ovirtengine.example.com

ကျွန်ုပ်တို့၏ လက်မှတ်နှင့် သော့ကို သိမ်းဆည်းပါသည်-

tar Phczf /tmp/ovirtengine.example.com.tgz /etc/letsencrypt/live/ovirtengine.example.com

ခံတပ်အိမ်ရှင်မှ မော်ကွန်းကို ဒေါင်းလုဒ်လုပ်ပြီး ကျွန်ုပ်တို့၏ overt အင်ဂျင်သို့ အပ်လုဒ်လုပ်ပါ။

scp bastion-host:/tmp/ovirtengine.example.com.tgz /tmp/
scp /tmp/ovirtengine.example.com.tgz ovirtengine.example.com:/

ပန်းတိုင်ဆီ ဆက်သွားကြရအောင်

ထို့နောက်၊ ကျွန်ုပ်တို့သည် ကျွန်ုပ်တို့၏ မှတ်တမ်းဟောင်းကို ထုပ်ပိုးပြီး ဖိုင်တည်နေရာစနစ်အား နားလည်လွယ်စေရန် သင်္ကေတလင့်ခ်များကို ဖန်တီးပါ-

tar Pxzf /ovirtengine.example.com.tgz && rm -f ovirtengine.example.com.tgz
mkdir -p /etc/letsencrypt/live
ln -f -s /etc/letsencrypt/live /etc/pki/letsencrypt

အသိအမှတ်ပြုလက်မှတ်များကိုစစ်ဆေးရန်အတွက် java လက်မှတ်စတိုး (openjdk) ကိုအသုံးပြုရန်အတွက် ovirt တွင် built-in pki ကို configure လုပ်ပါသည်။

cat << EOF > /etc/ovirt-engine/engine.conf.d/99-setup-pki.conf 
ENGINE_HTTPS_PKI_TRUST_STORE="/etc/pki/java/cacerts"
ENGINE_HTTPS_PKI_TRUST_STORE_PASSWORD=""
EOF

ကျွန်ုပ်တို့သည် CA ကို စာဝှက်ခြင်းမှ der ဖော်မတ်သို့ ပြောင်းပြီး ၎င်းကို ovirta လက်မှတ်များ ၏ java trust store တွင် ပေါင်းထည့်သည် (၎င်းသည် လက်မှတ်များစာရင်းပါရှိသော ကွန်တိန်နာဖြစ်ပြီး၊ ထိုသို့သောစနစ်ကို java တွင်အသုံးပြုသည်)

openssl x509 -outform der -in /etc/pki/letsencrypt/ovirtengine.example.com/chain.pem -out /tmp/ovirtengine.example.com.chain.der
keytool -import -alias "Let's Encrypt Authority X3" -file /tmp/ovirtengine.example.com.chain.der -keystore /etc/pki/ovirt-engine/.truststore -storepass $(grep '^ENGINE_PKI_TRUST_STORE_PASSWORD' /etc/ovirt-engine/engine.conf.d/10-setup-pki.conf | cut -f 2 -d '"')
rm -f /tmp/ovirtengine.example.com.chain.der

ကျွန်ုပ်တို့သည် Apache အတွက် SSL ဆက်တင်များကို တည်းဖြတ်ပြီး symlinks များကို ပံ့ပိုးပေးသည့် ဘောင်တစ်ခုကို ပေါင်းထည့်ကာ လက်မှတ်များကို စစ်ဆေးပေးမည့် CA အတွက် ကန့်သတ်ဘောင်ကို ဖယ်ရှားသည် (ပုံမှန်အားဖြင့်၊ ယုံကြည်ရသော CAs စနစ်အစုံကို စစ်ဆေးရန်အတွက် အသုံးပြုပါမည်)

sed -r -i 's|^(SSLCACertificateFile.*)|#1|g' /etc/httpd/conf.d/ssl.conf
sed -r -i '0,/(^#?SSLCACertificateFile.*)/ s//1nOptions FollowSymlinks/' /etc/httpd/conf.d/ssl.conf

ထို့နောက်တွင်၊ ကျွန်ုပ်တို့သည် ovirt ၏ အလိုအလျောက် PKI မှတစ်ဆင့် ထုတ်လုပ်ထားသော မူရင်းဖိုင်များကို အရန်ကူးပြီး Let's Encrypt မှ ဖိုင်များသို့ symlinks များဖြင့် အစားထိုးသည်-

ln -f -s /etc/pki/letsencrypt/ovirtengine.example.com/fullchain.pem /etc/pki/ovirt-engine/apache-chain.pem
services=( 'apache' 'imageio-proxy' 'websocket-proxy' )
for i in "${services[@]}"; do
cp /etc/pki/ovirt-engine/certs/$i.cer{,."$( date +%F )".bak}
cp /etc/pki/ovirt-engine/keys/$i.key.nopass{,."$( date +%F )".bak}
ln -f -s /etc/pki/letsencrypt/ovirtengine.example.com/privkey.pem /etc/pki/ovirt-engine/keys/$i.key.nopass
ln -f -s /etc/pki/letsencrypt/ovirtengine.example.com/cert.pem /etc/pki/ovirt-engine/certs/{apache,imageio-proxy,websocket-proxy}.cer
done

ကျွန်ုပ်တို့သည် ဖိုင်များပေါ်ရှိ SElinux အကြောင်းအရာများကို ပြန်လည်ရယူပြီး ကျွန်ုပ်တို့၏ဝန်ဆောင်မှုများ (httpd၊ ovirt-engine၊ ovirt-imageio-proxy၊ ovirt-websocket-proxy) ကို ပြန်လည်စတင်ပါသည်။

restorecon -Rv /etc/pki
systemctl restart httpd ovirt-engine ovirt-imageio-proxy ovirt-websocket-proxy

httpd — ဝဘ်ဆာဗာ apache
ovirt-အင်ဂျင် - ovirt ဝဘ်အင်တာဖေ့စ်
ovirt-imageio-proxy — ဒစ်ခ်ပုံများကိုဒေါင်းလုဒ်လုပ်ရန်အတွက် daemon
ovirt-websocket-proxy — noVNC ကွန်ဆိုးလ်လုပ်ဆောင်ချက်အတွက် ဝန်ဆောင်မှု

အထက်ပါအရာအားလုံးကို ovirta 4.2 ဗားရှင်းတွင် စမ်းသပ်ခဲ့သည်။

ovirt တွင် လက်မှတ်များကို အလိုအလျောက် အပ်ဒိတ်လုပ်ပါ။

လုံခြုံရေးအလေ့အကျင့်ကောင်းများအရ၊ ခံတပ်စခန်းနှင့် မူလနေရာအကြား ဆက်စပ်မှု မရှိသင့်ဘဲ လက်မှတ်ကို ၃ လသာ ထုတ်ပေးပါသည်။ ဤနေရာတွင် ကျွန်ုပ်သည် သက်သေခံလက်မှတ် သက်တမ်းတိုးခြင်းကို မည်သို့ဆောင်ရွက်ခဲ့သည်နှင့် ပတ်သက်၍ အငြင်းပွားဖွယ်ရာ ပြဿနာ ပေါ်ပေါက်လာပါသည်။

ကျွန်ုပ်တွင် နေ့စဉ် နံနက် 5 နာရီတွင် ဦးစီးမှူးထံ လည်ပတ်နိုင်သော စွမ်းဆောင်နိုင်သော စာအုပ်တစ်အုပ်ရှိသည်။ ဤပြခန်းစာအုပ်သည် အထက်တန်းသို့သွားသည်၊ လက်မှတ်သက်တမ်းကုန်ဆုံးရက်ကို စစ်ဆေးပြီး သက်တမ်းမကုန်မီ 5 ရက်ထက်နည်းကျန်နေပါက၊ ၎င်းသည် ခံတပ်စခန်းသို့သွားကာ လက်မှတ်ကို အပ်ဒိတ်လုပ်သည်။

လက်မှတ်ကို အပ်ဒိတ်လုပ်ပြီးနောက်၊ ၎င်းသည် ဖိုင်တွဲကို ဖိုင်များဖြင့် သိမ်းဆည်းပြီး၊ ၎င်းကို forman ၏ host သို့ ဒေါင်းလုဒ်လုပ်ပြီး ovirta ၏ host သို့ ဇစ်ဖွင့်သည်။ ၎င်းနောက်၊ ၎င်းသည် ဖိုင်များပေါ်ရှိ SElinux ဆက်စပ်မှုများကို ပြန်လည်ရယူပြီး ကျွန်ုပ်တို့၏ဝန်ဆောင်မှုများကို ပြန်လည်စတင်သည်။

source: www.habr.com

DDoS ကာကွယ်ရေး၊ VPS VDS ဆာဗာများပါသည့် ဆိုက်များအတွက် ယုံကြည်စိတ်ချရသော hosting ကို ဝယ်ယူပါ။ 🔥 DDoS ကာကွယ်မှု၊ VPS VDS ဆာဗာများပါရှိသော ယုံကြည်စိတ်ချရသော ဝဘ်ဆိုက် hosting ကို ဝယ်ယူပါ | ProHoster