๋ด๋ถ ๋คํธ์ํฌ์์ Nextcloud๋ก ํ๋ก์๋ฅผ ์ญ๋ฐฉํฅ์ผ๋ก ์ค์ ํ๋ ค๋ฉด OpenLiteSpeed๋ฅผ ์ด๋ป๊ฒ ์ค์ ํด์ผ ํฉ๋๊น?
๋๋๊ฒ๋ OpenLiteSpeed์ ๋ํ Habrรฉ ๊ฒ์์ ์๋ฌด ๊ฒ๋ ์ ๊ณตํ์ง ์์ต๋๋ค! LSWS๋ ๊ด์ฐฎ์ ์น ์๋ฒ์ด๊ธฐ ๋๋ฌธ์ ์ด ๋ถ์๋ฅผ ์์ ํ๊ธฐ ์ํด ์๋๋ฌ์ผ ํฉ๋๋ค. ์๋์ ๋ฉ์ง ์น ๊ด๋ฆฌ ์ธํฐํ์ด์ค๊ฐ ๋ง์์ ๋ญ๋๋ค.
OpenLiteSpeed๋ WordPress "๊ฐ์๊ธฐ"๋ก ๊ฐ์ฅ ์ ๋ช ํ์ง๋ง ์ค๋ ๊ธฐ์ฌ์์๋ ๋ค์ ๊ตฌ์ฒด์ ์ธ ์ฉ๋๋ฅผ ๋ณด์ฌ ๋๋ฆฌ๊ฒ ์ต๋๋ค. ์ฆ, ์์ฒญ์ ์ญ๋ฐฉํฅ ํ๋ก์(์ญ๋ฐฉํฅ ํ๋ก์)์ ๋๋ค. ์ด๊ฒ์ ์ํด nginx๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ๋ ์ผ๋ฐ์ ์ด๋ผ๊ณ ๋ง์ํ์ญ๋๊น? ๋์ํ๊ฒ ์ต๋๋ค. ํ์ง๋ง ์ฐ๋ฆฌ๋ LSWS์ ์ฌ๋์ ๋น ์ก์ต๋๋ค!
ํ๋ก์ฑ์ ๊ด์ฐฎ์ง๋ง ์ด๋์์? ๋ ๋ฉ์ง ์๋น์ค - Nextcloud. ์ฐ๋ฆฌ๋ Nextcloud๋ฅผ ์ฌ์ฉํ์ฌ ๊ฐ์ธ "ํ์ผ ๊ณต์ ํด๋ผ์ฐ๋"๋ฅผ ๋ง๋ญ๋๋ค. ๊ฐ ํด๋ผ์ด์ธํธ์ ๋ํด Nextcloud๋ฅผ ์ฌ์ฉํ์ฌ ๋ณ๋์ VM์ ํ ๋นํ๊ณ "์ธ๋ถ"์ ๋
ธ์ถํ์ง ์์ผ๋ ค๊ณ ํฉ๋๋ค. ๋์ ์ผ๋ฐ์ ์ธ ๋ฆฌ๋ฒ์ค ํ๋ก์๋ฅผ ํตํด ์์ฒญ์ ํ๋ก์ํฉ๋๋ค. ์ด ์๋ฃจ์
์ ๋ค์์ ํ์ฉํฉ๋๋ค.
1) ํด๋ผ์ด์ธํธ ๋ฐ์ดํฐ๊ฐ ์ ์ฅ๋ ์๋ฒ๋ฅผ ์ธํฐ๋ท์์ ์ ๊ฑฐํ๊ณ
2) IP ์ฃผ์๋ฅผ ์ ์ฅํฉ๋๋ค.
๋ค์ด์ด๊ทธ๋จ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
์ฒด๊ณ๊ฐ ๊ฐ์ํ๋ ๊ฒ์ ๋ถ๋ช ํฉ๋๋ค. ์น ์๋น์ค ์ธํ๋ผ์ ๊ตฌ์ฑ์ ์ค๋ ๊ธฐ์ฌ์ ์ฃผ์ ๊ฐ ์๋๋๋ค.
๋ํ ์ด ๊ธฐ์ฌ์์๋ ํนํ Habrรฉ๊ฐ ์ด ์ฃผ์ ์ ๋ํ ์๋ฃ๋ฅผ ๊ฐ์ง๊ณ ์๊ธฐ ๋๋ฌธ์ nextcloud์ ์ค์น ๋ฐ ๊ธฐ๋ณธ ๊ตฌ์ฑ์ ์๋ตํฉ๋๋ค. ๊ทธ๋ฌ๋ Nextcloud๊ฐ ํ๋ก์ ๋ค์์ ์๋ํ์ง ์๋ ์ค์ ์ ํ์คํ ๋ณด์ฌ์ค ๊ฒ์ ๋๋ค.
๊ฐ์ํ ๋ :
Nextcloud๋ ํธ์คํธ 1์ ์ค์น๋๊ณ http(SSL ์์)๋ฅผ ํตํด ์๋ํ๋๋ก ๊ตฌ์ฑ๋๋ฉฐ ๋ก์ปฌ ๋คํธ์ํฌ ์ธํฐํ์ด์ค์ "ํ์" IP ์ฃผ์ 172.16.22.110๋ง ์์ต๋๋ค.
ํธ์คํธ 2์์ OpenLiteSpeed โโ๊ตฌ์ฑํฉ์๋ค. ๋ ๊ฐ์ ์ธํฐํ์ด์ค๊ฐ ์์ต๋๋ค. ์ธ๋ถ(์ธํฐ๋ท์ ๋ฐ๋ผ๋ด) ๋ฐ ๋คํธ์ํฌ 172.16.22.0/24์ IP ์ฃผ์๊ฐ ์๋ ๋ด๋ถ
ํธ์คํธ 2์ ์ธ๋ถ ์ธํฐํ์ด์ค IP ์ฃผ์๋ DNS ์ด๋ฆ cloud.connect.link์
๋๋ค.
์์
:
๋งํฌ๋ฅผ ํตํด ์ธํฐ๋ท์์ ๊ฐ์ ธ์ค๊ธฐ '
- Ubuntu 18.04.2์ OpenLiteSpeed โโ์ค์น.
๋ฆฌํฌ์งํ ๋ฆฌ๋ฅผ ์ถ๊ฐํด ๋ณด๊ฒ ์ต๋๋ค.
wget -O
http://rpms.litespeedtech.com/debian/enable_lst_debain_repo.sh |์ค๋ ๋ฐฐ์ฌ
sudo๋์๋ apt-get ์ ๋ฐ์ดํธ
์ค์น, ์คํ:
sudo apt-get ์ค์น openlitespeed
sudo /usr/local/lsws/bin/lswsctrl ์์
- ์ต์ํ์ ๋ฐฉํ๋ฒฝ ์ค์ .
sudo ufw๋ ssh๋ฅผ ํ์ฉํฉ๋๋ค.
sudo ufw ๊ธฐ๋ณธ ๋ฐ์ ํ์ฉ
sudo ufw ๊ธฐ๋ณธ ์์ ๊ฑฐ๋ถ
sudo ufw allow http
sudo ufw ํ์ฉhttps
sudo ufw์์ ํ์ฉ ๊ด๋ฆฌ ํธ์คํธ ๋ชจ๋ ํฌํธ 7080
sudo ufw enable - OpenLiteSpeed๋ฅผ ๋ฆฌ๋ฒ์ค ํ๋ก์๋ก ์ค์ ํฉ๋๋ค.
virtualhost ์๋์ ๋๋ ํ ๋ฆฌ๋ฅผ ๋ง๋ค์ด ๋ด ์๋ค.CD /usr/๋ก์ปฌ/lsws/
sudo mkdirc cloud.connect.link
CD cloud.connect.link/
sudo mkdir {conf,html,logs}
sudo chown lsadm:lsadm ./conf/
LSWS ์น ์ธํฐํ์ด์ค์์ ๊ฐ์ ํธ์คํธ๋ฅผ ๊ตฌ์ฑํด ๋ณด๊ฒ ์ต๋๋ค.
URL ๊ด๋ฆฌ ์ด๊ธฐ
๊ธฐ๋ณธ ๋ก๊ทธ์ธ/์ํธ: admin/123456
๊ฐ์ ํธ์คํธ๋ฅผ ์ถ๊ฐํฉ๋๋ค(๊ฐ์ ํธ์คํธ > ์ถ๊ฐ).
์ถ๊ฐํ ๋ ์ค๋ฅ ๋ฉ์์ง๊ฐ ๋ํ๋ฉ๋๋ค. ๊ตฌ์ฑ ํ์ผ์ด ์์ต๋๋ค. ์ด๊ฒ์ ์ ์์ ์ธ ํ์์ด๋ฉฐ Click to create๋ฅผ ํด๋ฆญํ๋ฉด ํด๊ฒฐ๋ฉ๋๋ค.
์ผ๋ฐ ํญ์์ ๋ฌธ์ ๋ฃจํธ๋ฅผ ์ง์ ํฉ๋๋ค(ํ์ํ์ง๋ ์์ง๋ง ๋ฃจํธ๊ฐ ์์ผ๋ฉด ๊ตฌ์ฑ์ด ์์๋์ง ์์). ์ง์ ํ์ง ์์ ๊ฒฝ์ฐ ๋๋ฉ์ธ ์ด๋ฆ์ ๋๋ฉ์ธ ์ด๋ฆ์ผ๋ก ์ง์ ํ ๊ฐ์ ํธ์คํธ ์ด๋ฆ์์ ๊ฐ์ ธ์ต๋๋ค.
์ด์ ์น ์๋ฒ๋ฟ ์๋๋ผ ๋ฆฌ๋ฒ์ค ํ๋ก์๋ ์๋ค๋ ์ฌ์ค์ ๊ธฐ์ตํด์ผ ํฉ๋๋ค. ๋ค์ ์ค์ ์ LSWS์ ํ๋ก์ ๋์๊ณผ ์์น๋ฅผ ์๋ ค์ค๋๋ค. ๊ฐ์ ํธ์คํธ ์ค์ ์์ ์ธ๋ถ ์ฑ ํญ์ ์ด๊ณ ์น ์๋ฒ ์ ํ์ ์ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ถ๊ฐํฉ๋๋ค.
์ด๋ฆ๊ณผ ์ฃผ์๋ฅผ ์ง์ ํฉ๋๋ค. ์์์ ์ด๋ฆ์ ์ง์ ํ ์ ์์ง๋ง ๊ธฐ์ตํด์ผ ํฉ๋๋ค. ๋ค์ ๋จ๊ณ์์ ์ ์ฉํฉ๋๋ค. ์ฃผ์๋ Nextcloud๊ฐ ๋ด๋ถ ๋คํธ์ํฌ์ ์๋ ์ฃผ์์ ๋๋ค.
๋์ผํ ๊ฐ์ ํธ์คํธ ์ค์ ์์ ์ปจํ ์คํธ ํญ์ ์ด๊ณ ํ๋ก์ ์ ํ์ ์ ์ปจํ ์คํธ๋ฅผ ๋ง๋ญ๋๋ค.
๋งค๊ฐ๋ณ์ ์ง์ : URI = /, ์น ์๋ฒ = nextcloud_1(์ด์ ๋จ๊ณ์ ์ด๋ฆ)
LSWS๋ฅผ ๋ค์ ์์ํฉ๋๋ค. ์ด๊ฒ์ ์น ์ธํฐํ์ด์ค์์ ํ ๋ฒ์ ํด๋ฆญ์ผ๋ก ์ด๋ฃจ์ด์ง๋๋ค, ๊ธฐ์ ! (์ ์ ์ ์ธ ๋ง์ฐ์ค ์บ๋ฆฌ์ด๊ฐ ๋์๊ฒ ๋งํจ)
- ์ธ์ฆ์๋ฅผ ๋ฃ๊ณ https๋ฅผ ๊ตฌ์ฑํฉ๋๋ค.
์ธ์ฆ์ ์ทจ๋ ์ ์ฐจ ์ฐ๋ฆฌ๋ ๊ทธ๊ฒ์ ์๋ตํ๊ณ ์ด๋ฏธ ๊ฐ์ง๊ณ ์๋ค๋ ๋ฐ ๋์ํ๊ณ /etc/letsencrypt/live/cloud.connect.link ๋๋ ํ ๋ฆฌ์ ํค๋ก ๊ฑฐ์ง๋ง์ ํ ๊ฒ์ ๋๋ค.
"๋ฆฌ์ค๋"(Listeners > Add)๋ฅผ ๋ง๋ค๊ณ "https"๋ผ๊ณ ๋ถ๋ฅด๊ฒ ์ต๋๋ค. ํฌํธ 443์ ๊ฐ๋ฆฌํค๊ณ ๋ณด์ ์ํ์์ ํ์ธํฉ๋๋ค.
SSL ํญ์์ ํค ๋ฐ ์ธ์ฆ์์ ๊ฒฝ๋ก๋ฅผ ์ง์ ํฉ๋๋ค.
"๋ฆฌ์ค๋"๊ฐ ์์ฑ๋์์ต๋๋ค. ์ด์ ๊ฐ์ ํธ์คํธ ๋งคํ ์น์ ์์ ๊ฐ์ ํธ์คํธ๋ฅผ ์ถ๊ฐํฉ๋๋ค.
LSWS๊ฐ ํ๋์ ์๋น์ค์๋ง ํ๋ก์ํ๋ ๊ฒฝ์ฐ ๊ตฌ์ฑ์ ์๋ฃํ ์ ์์ต๋๋ค. ๊ทธ๋ฌ๋ ๋๋ฉ์ธ ์ด๋ฆ์ ๋ฐ๋ผ ๋ค๋ฅธ "์ธ์คํด์ค"์ ์์ฒญ์ ๋ณด๋ด๋ ๋ฐ ์ฌ์ฉํ ๊ณํ์ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋ชจ๋ ๋๋ฉ์ธ์๋ ์์ฒด ์ธ์ฆ์๊ฐ ์์ต๋๋ค. ๋ฐ๋ผ์ ๊ฐ์ ํธ์คํธ ๊ตฌ์ฑ์ผ๋ก ์ด๋ํ์ฌ SSL ํญ์์ ํด๋น ํค์ ์ธ์ฆ์๋ฅผ ๋ค์ ์ง์ ํด์ผ ํฉ๋๋ค. ์์ผ๋ก๋ ๊ฐ๊ฐ์ ์ ๊ฐ์ ํธ์คํธ์ ๋ํด ์ด ์์ ์ ์ํํด์ผ ํฉ๋๋ค.
http ์์ฒญ์ด https๋ก ์ฒ๋ฆฌ๋๋๋ก URL ์ฌ์์ฑ์ ๊ตฌ์ฑํ๋ ์์
์ด ๋จ์ ์์ต๋๋ค.
(๊ทธ๋ฐ๋ฐ ์ด๊ฒ ์ธ์ ๋๋๋์? ๋ธ๋ผ์ฐ์ ์ ๊ธฐํ ์ํํธ์จ์ด๊ฐ ๊ธฐ๋ณธ์ ์ผ๋ก https๋ก ์ด๋ํ๊ณ ํ์ํ ๊ฒฝ์ฐ ์๋์ผ๋ก no-SSL๋ก ์ ๋ฌํด์ผ ํ ๋์
๋๋ค).
์ฌ์์ฑ ํ์ฑํ๋ฅผ ์ผ๊ณ ์ฌ์์ฑ ๊ท์น ์ฐ๊ธฐ:
RewriteCond %{SERVER_PORT} 80
RewriteRule ^ (. *) $https://%{SERVER_NAME}%{REQUEST_URI } [R=301,์]
์ด์ํ ์คํด๋ก ์ธํด ์ผ๋ฐ์ ์ธ Graceful ์ฌ์์์ผ๋ก Rewrite ๊ท์น์ ์ ์ฉํ๋ ๊ฒ์ ๋ถ๊ฐ๋ฅํฉ๋๋ค. ๋ฐ๋ผ์ LSWS๋ฅผ ์ ์์ ์ผ๋ก ๋ค์ ์์ํ์ง ์๊ณ ๋ฌด๋กํ๊ณ ํจ์จ์ ์ผ๋ก ๋ค์ ์์ํฉ๋๋ค.
sudo systemctl ์ฌ์์ lsws.service
์๋ฒ๊ฐ ํฌํธ 80์ ์์ ํ๋๋ก ํ๋ ค๋ฉด ๋ ๋ค๋ฅธ ์์ ๊ธฐ๋ฅผ ์์ฑํด ๋ณด๊ฒ ์ต๋๋ค. ์ด๋ฅผ http๋ผ๊ณ ํ๊ณ 80๋ฒ์งธ ํฌํธ๋ฅผ ์ง์ ํ๊ณ ๋น๋ณด์์ด ๋๋๋ก ์ง์ ํฉ๋๋ค.
https ์์ ๊ธฐ ์ค์ ๊ณผ ์ ์ฌํ๊ฒ ๊ฐ์ ํธ์คํธ๋ฅผ ์ฐ๊ฒฐํด ๋ณด๊ฒ ์ต๋๋ค.
์ด์ LSWS๋ ํฌํธ 80์์ ์์ ํ๊ณ ์ฌ๊ธฐ์์ 443์ผ๋ก ์์ฒญ์ ๋ณด๋ด URL์ ๋ค์ ์์ฑํฉ๋๋ค.
๊ฒฐ๋ก ์ ์ผ๋ก ๊ธฐ๋ณธ์ ์ผ๋ก ๋๋ฒ๊ทธ๋ก ์ค์ ๋ LSWS ๋ก๊น
์์ค์ ๋ฎ์ถ๋ ๊ฒ์ด ์ข์ต๋๋ค. ์ด ๋ชจ๋์์๋ ๋ก๊ทธ๊ฐ ๋ฒ๊ฐ์ฒ๋ผ ๋น ๋ฅด๊ฒ ์ฆ๊ฐํฉ๋๋ค! ๋๋ถ๋ถ์ ๊ฒฝ์ฐ ๊ฒฝ๊ณ ์์ค์ด๋ฉด ์ถฉ๋ถํฉ๋๋ค. ์๋ฒ ๊ตฌ์ฑ > ๋ก๊ทธ๋ก ์ด๋ํฉ๋๋ค.
์ด๋ก์จ OpenLiteSpeed์ ์ญ๋ฐฉํฅ ํ๋ก์ ๊ตฌ์ฑ์ด ์๋ฃ๋ฉ๋๋ค. ๋ค์ ํ ๋ฒ LSWS๋ฅผ ๋ค์ ์์ํ๊ณ ๋งํฌ๋ฅผ ๋ฐ๋ผ๊ฐ์ญ์์ค.
Nextcloud์์ ํ์ฉํ๋ ค๋ฉด cloud.connect.link ๋๋ฉ์ธ์ ์ ๋ขฐํ ์ ์๋ ๋ชฉ๋ก์ ์ถ๊ฐํด์ผ ํฉ๋๋ค. config.php๋ฅผ ํธ์งํด๋ด
์๋ค. Ubuntu๋ฅผ ์ค์นํ ๋ Nextcloud๋ฅผ ์๋์ผ๋ก ์ค์นํ์ผ๋ฉฐ ๊ตฌ์ฑ์ /var/snap/nextcloud/current/nextcloud/config์ ์์ต๋๋ค.
trust_domains ํค์ 'cloud.connect.link' ๋งค๊ฐ๋ณ์๋ฅผ ์ถ๊ฐํฉ๋๋ค.
'์ ๋ขฐํ ์ ์๋ ๋๋ฉ์ธ' =>
๋ฐฐ์ด (
0 => '172.16.22.110',
1 => 'cloud.connect.link',
),
๋ํ ๋์ผํ ๊ตฌ์ฑ์์ ํ๋ก์์ IP ์ฃผ์๋ฅผ ์ง์ ํด์ผ ํฉ๋๋ค. ์ฃผ์๊ฐ Nextcloud ์๋ฒ์ ํ์๋๋ ์ฃผ์๋ก ์ง์ ๋์ด์ผ ํ๋ค๋ ์ฌ์ค์ ์ฃผ๋ชฉํฉ๋๋ค. ๋ก์ปฌ LSWS ์ธํฐํ์ด์ค์ IP์ ๋๋ค. ์ด ๋จ๊ณ๊ฐ ์์ผ๋ฉด Nextcloud ์น ์ธํฐํ์ด์ค๊ฐ ์๋ํ์ง๋ง ์ ํ๋ฆฌ์ผ์ด์ ์ด ์ธ์ฆ๋์ง ์์ต๋๋ค.
'์ ๋ขฐํ ์ ์๋ ํ๋ก์' =>
๋ฐฐ์ด (
0 => '172.16.22.100',
),
์ข์ต๋๋ค. ๊ทธ๋ฐ ๋ค์ ์ธ์ฆ ์ธํฐํ์ด์ค์ ๋ค์ด๊ฐ ์ ์์ต๋๋ค.
๋ฌธ์ ํด๊ฒฐ๋จ! ์ด์ ๊ฐ ํด๋ผ์ด์ธํธ๋ ์์ ์ ๊ฐ์ธ URL์์ "ํ์ผ ํด๋ผ์ฐ๋"๋ฅผ ์์ ํ๊ฒ ์ฌ์ฉํ ์ ์๊ณ , ํ์ผ์ด ์๋ ์๋ฒ๋ ์ธํฐ๋ท์์ ๋ถ๋ฆฌ๋๋ฉฐ, ํฅํ ํด๋ผ์ด์ธํธ๋ ๋ชจ๋ ๊ฒ์ ๋์ผํ๊ฒ ์์ ํ๊ฒ ๋๋ฉฐ ๋จ์ผ ์ถ๊ฐ IP ์ฃผ์๋ ์ํฅ์ ๋ฐ์ง ์์ต๋๋ค.
๋ํ ๋ฆฌ๋ฒ์ค ํ๋ก์๋ฅผ ์ฌ์ฉํ์ฌ ์ ์ ์ฝํ
์ธ ๋ฅผ ์ ๋ฌํ ์ ์์ง๋ง Nextcloud์ ๊ฒฝ์ฐ ์๋๊ฐ ๋์ ๋๊ฒ ์ฆ๊ฐํ์ง ์์ต๋๋ค. ๋ฐ๋ผ์ ์ ํ ์ฌํญ์ด๋ฉฐ ์ ํ ์ฌํญ์
๋๋ค.
์ด ์ด์ผ๊ธฐ๋ฅผ ๊ณต์ ํ๊ฒ ๋์ด ๊ธฐ์ฉ๋๋ค. ๋๊ตฐ๊ฐ์๊ฒ ๋์์ด ๋๊ธฐ๋ฅผ ๋ฐ๋๋๋ค. ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํ ๋ณด๋ค ์ฐ์ํ๊ณ ํจ์จ์ ์ธ ๋ฐฉ๋ฒ์ ์๊ณ ์๋ค๋ฉด ์๊ฒฌ์ ๋ณด๋ด์ฃผ์๋ฉด ๊ฐ์ฌํ๊ฒ ์ต๋๋ค!
์ถ์ฒ : habr.com