{"id":1224,"date":"2022-11-01T15:29:46","date_gmt":"2022-11-01T13:29:46","guid":{"rendered":"https:\/\/www.lassinsivut.eu\/?p=1224"},"modified":"2023-03-29T21:24:24","modified_gmt":"2023-03-29T18:24:24","slug":"reverse-proxy","status":"publish","type":"post","link":"https:\/\/lassinsivut.eu\/en\/reverse-proxy\/","title":{"rendered":"Debian reverse proxy for web server"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"1224\" class=\"elementor elementor-1224\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-f9eca29 elementor-section-boxed elementor-section-height-default elementor-section-height-default wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no wpr-equal-height-no\" data-id=\"f9eca29\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"aux-parallax-section elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-b47d6b2\" data-id=\"b47d6b2\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-752fe4f hfe-nav-menu__breakpoint-none hfe-nav-menu__align-left hfe-submenu-icon-arrow hfe-submenu-animation-none hfe-link-redirect-child elementor-widget elementor-widget-navigation-menu\" data-id=\"752fe4f\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;padding_horizontal_menu_item&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:15,&quot;sizes&quot;:[]},&quot;padding_horizontal_menu_item_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;padding_horizontal_menu_item_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;padding_vertical_menu_item&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:15,&quot;sizes&quot;:[]},&quot;padding_vertical_menu_item_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;padding_vertical_menu_item_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;menu_space_between&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;menu_space_between_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;menu_space_between_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;menu_row_space&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;menu_row_space_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;menu_row_space_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;dropdown_border_radius&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;dropdown_border_radius_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;dropdown_border_radius_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;top&quot;:&quot;&quot;,&quot;right&quot;:&quot;&quot;,&quot;bottom&quot;:&quot;&quot;,&quot;left&quot;:&quot;&quot;,&quot;isLinked&quot;:true},&quot;width_dropdown_item&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;220&quot;,&quot;sizes&quot;:[]},&quot;width_dropdown_item_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;width_dropdown_item_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;padding_horizontal_dropdown_item&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;padding_horizontal_dropdown_item_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;padding_horizontal_dropdown_item_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;padding_vertical_dropdown_item&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:15,&quot;sizes&quot;:[]},&quot;padding_vertical_dropdown_item_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;padding_vertical_dropdown_item_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;distance_from_menu&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;distance_from_menu_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;distance_from_menu_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;toggle_size&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;toggle_size_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;toggle_size_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;toggle_border_width&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;toggle_border_width_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;toggle_border_width_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;toggle_border_radius&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;toggle_border_radius_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;toggle_border_radius_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]}}\" data-widget_type=\"navigation-menu.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t<div class=\"hfe-nav-menu hfe-layout-horizontal hfe-nav-menu-layout horizontal hfe-pointer__none\" data-layout=\"horizontal\">\n\t\t\t\t<div role=\"button\" class=\"hfe-nav-menu__toggle elementor-clickable\" tabindex=\"0\" aria-label=\"Menu Toggle\">\n\t\t\t\t\t<span class=\"screen-reader-text\">Menu<\/span>\n\t\t\t\t\t<div class=\"hfe-nav-menu-icon\">\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<nav class=\"hfe-nav-menu__layout-horizontal hfe-nav-menu__submenu-arrow\" data-toggle-icon=\"\" data-close-icon=\"\" data-full-width=\"\">\n\t\t\t\t\t<!-- start master menu -->\n<ul id=\"menu-1-752fe4f\" class=\"hfe-nav-menu\"><li id=\"menu-item-540\" class=\"menu-item menu-item-type-custom menu-item-object-custom parent hfe-creative-menu\"><a href=\"#balenaetcher\" class = \"hfe-menu-item\">Bootable USB tekeminen<\/a><\/li>\n<li id=\"menu-item-544\" class=\"menu-item menu-item-type-custom menu-item-object-custom parent hfe-creative-menu\"><a href=\"#proxmoxiso\" class = \"hfe-menu-item\">Proxmox ISO-image<\/a><\/li>\n<li id=\"menu-item-1148\" class=\"menu-item menu-item-type-custom menu-item-object-custom parent hfe-creative-menu\"><a href=\"#proxmoxinstall\" class = \"hfe-menu-item\">Proxmoxin asennus\u200b<\/a><\/li>\n<li id=\"menu-item-1149\" class=\"menu-item menu-item-type-custom menu-item-object-custom parent hfe-creative-menu\"><a href=\"#proxmoxconfig\" class = \"hfe-menu-item\">Proxmoxin konfigurointi\u200b<\/a><\/li>\n<li id=\"menu-item-2328\" class=\"menu-item menu-item-type-custom menu-item-object-custom parent hfe-creative-menu\"><a href=\"#hddadd\" class = \"hfe-menu-item\">Kovalevyn lis\u00e4\u00e4minen\u200b<\/a><\/li>\n<li id=\"menu-item-1167\" class=\"menu-item menu-item-type-custom menu-item-object-custom parent hfe-creative-menu\"><a href=\"#vmcreate\" class = \"hfe-menu-item\">Virtuaalikoneen asennus\u200b<\/a><\/li>\n<li id=\"menu-item-1171\" class=\"menu-item menu-item-type-custom menu-item-object-custom parent hfe-creative-menu\"><a href=\"#clearup\" class = \"hfe-menu-item\">Viimeistely<\/a><\/li>\n<\/ul>\n<!-- end master menu -->\n \n\t\t\t\t<\/nav>\n\t\t\t<\/div>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-cd3bd08 elementor-section-boxed elementor-section-height-default elementor-section-height-default wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no wpr-equal-height-no\" data-id=\"cd3bd08\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"aux-parallax-section elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-7e645f5\" data-id=\"7e645f5\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-b309d2b elementor-widget elementor-widget-heading\" data-id=\"b309d2b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Debian reverse proxyn teko<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-fd527d5 elementor-widget elementor-widget-text-editor\" data-id=\"fd527d5\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Reverse proxy on eritt\u00e4in hy\u00f6dyllinen jos palvelimia on paljon, mutta sinulla on vain 1 tai rajattu m\u00e4\u00e4r\u00e4 ip-osoitteita. T\u00e4ss\u00e4 ohjeessa minulla on 1 ip-osoite, sek\u00e4 3 muuta palvelinta jotka haluan internettiin. T\u00e4ss\u00e4 tilanteessa tarvitaan 1 kone ohjaamaan kaiken liikenteen julkisesta ip-osoitteesta ja siirt\u00e4m\u00e4ll\u00e4 clientin palvelimelle jota h\u00e4n on kutsunut.<\/p><p>Jos taas et ole jo luonut alidomainin palvelimia, voit katsoa alla olevat linkit niiden tekoon.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<section class=\"elementor-section elementor-inner-section elementor-element elementor-element-e0b29e2 elementor-section-boxed elementor-section-height-default elementor-section-height-default wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no wpr-equal-height-no\" data-id=\"e0b29e2\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"aux-parallax-section elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-57b74c8\" data-id=\"57b74c8\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-2a6920a elementor-button-info elementor-align-left elementor-widget elementor-widget-button\" data-id=\"2a6920a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm elementor-animation-buzz\" href=\"https:\/\/lassinsivut.eu\/debian-verkkopalvelin\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Ohje WordPressin asennukselle ja konfigurointiin.<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"aux-parallax-section elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-d7db321\" data-id=\"d7db321\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-3d2fb77 elementor-button-info elementor-align-left elementor-widget elementor-widget-button\" data-id=\"3d2fb77\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm elementor-animation-buzz\" href=\"https:\/\/lassinsivut.eu\/debian-asennus\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Ohje Debian koneen asennukselle.<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"aux-parallax-section elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-b865939\" data-id=\"b865939\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-cc90abe elementor-widget elementor-widget-image\" data-id=\"cc90abe\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/lassinsivut.eu\/wp-content\/uploads\/2022\/11\/image-35.png\" data-elementor-open-lightbox=\"yes\" data-elementor-lightbox-title=\"image-35\" data-e-action-hash=\"#elementor-action%3Aaction%3Dlightbox%26settings%3DeyJpZCI6MTM1OCwidXJsIjoiaHR0cHM6XC9cL2xhc3NpbnNpdnV0LmV1XC93cC1jb250ZW50XC91cGxvYWRzXC8yMDIyXC8xMVwvaW1hZ2UtMzUucG5nIn0%3D\">\n\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"853\" height=\"480\" src=\"https:\/\/lassinsivut.eu\/wp-content\/uploads\/2022\/11\/image-35.png\" class=\"attachment-large size-large wp-image-1358\" alt=\"\" srcset=\"https:\/\/lassinsivut.eu\/wp-content\/uploads\/2022\/11\/image-35.png 853w, https:\/\/lassinsivut.eu\/wp-content\/uploads\/2022\/11\/image-35-18x10.png 18w\" sizes=\"(max-width: 853px) 100vw, 853px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-8116b3b elementor-section-boxed elementor-section-height-default elementor-section-height-default wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no wpr-equal-height-no\" data-id=\"8116b3b\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"aux-parallax-section elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-a3ea515\" data-id=\"a3ea515\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-f9ee3a5 elementor-widget elementor-widget-heading\" data-id=\"f9ee3a5\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Pakettien ja moduulien asennus<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3add667 elementor-widget elementor-widget-text-editor\" data-id=\"3add667\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Ensin asennetaan www-palvelin joka hoitaa uudelleenohjauksen eri palvelimiin. My\u00f6s tarvittavat moduulit jotka proxyn tekemiseen tarvitaan.<\/p><p><strong>apt-get install apache<\/strong><\/p><p><strong>systemctl enable apache2<\/strong><\/p><p><strong>systemctl start apache2<\/strong><\/p><p>Nyt asennetaan palomuuri koneelle, sill\u00e4 avataan portit 80 (webpalvelin) ja 443 (ssl-salattu liikenne)<\/p><p><strong>apt-get install ufw<\/strong><\/p><p><strong>systemctl enable ufw<\/strong><\/p><p><strong>systemctl start ufw<\/strong><\/p><p><strong>ufw allow 80<\/strong><\/p><p><strong>ufw allow 443<\/strong><\/p><p>Viel\u00e4 pieni ohjelma jolla estet\u00e4\u00e4n ylim\u00e4\u00e4r\u00e4isi\u00e4 kirjautumisia varsinkin jos ssh yhteys on otettu k\u00e4ytt\u00f6\u00f6n.<\/p><p><strong>apt-get install fail2ban<\/strong><\/p><p><strong>systemctl enable fail2ban<\/strong><\/p><p>Sitten viel\u00e4 lopuksi apachen proxy moduulit k\u00e4ytt\u00f6\u00f6n<\/p><p><strong>a2enmod proxy<\/strong><\/p><p><strong>a2enmod proxy_http<\/strong><\/p><p><strong>a2enmod proxy_balancer<\/strong><\/p><p><strong>a2enmod lbmethod_byrequests<\/strong><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-edb07ee elementor-section-boxed elementor-section-height-default elementor-section-height-default wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no wpr-equal-height-no\" data-id=\"edb07ee\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"aux-parallax-section elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-ba3b6f6\" data-id=\"ba3b6f6\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-a35d444 elementor-widget elementor-widget-heading\" data-id=\"a35d444\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Konfiguroidaan reverse proxy<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7bf93a8 elementor-widget elementor-widget-text-editor\" data-id=\"7bf93a8\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Ensin nimet\u00e4\u00e4n oletus konfigurointi tiedosto uuteen.<\/p><p><strong>cp \/etc\/apache2\/sites-available\/000-default.conf \/etc\/apache2\/sites-available\/reverseproxy.conf<\/strong><\/p><p>Otetaan uusi tiedostot voimaan ja poistetaan vanha k\u00e4yt\u00f6st\u00e4.<\/p><p><strong>a2ensite reverseproxy.conf<\/strong><\/p><p><strong>a2dissite 000-default.conf<\/strong><\/p><p>Lopuksi viel\u00e4 k\u00e4ynnistet\u00e4\u00e4n Apache uudelleen ja tarkistetaan sen tila.<\/p><p><strong>systemctl restart apache2<\/strong><\/p><p><strong>systemctl status apache2<\/strong><\/p><p>Tehd\u00e4\u00e4n viel\u00e4 symlink jotta samaa tiedostoa voidaan muokata useammasta eri polusta. T\u00e4ss\u00e4 tilanteessa \/sites-available ja \/sites-enabled<\/p><p><strong>ln -s \/etc\/apache2\/sites-available\/reverseproxy.conf \/etc\/apache2\/sites-enabled\/reverseproxy.conf<\/strong><\/p><p>Lis\u00e4t\u00e4\u00e4n is\u00e4nt\u00e4tiedostoon viel\u00e4 alidomainit joita halutaan k\u00e4ytt\u00e4\u00e4.<\/p><p><strong>nano \/etc\/hosts<\/strong><\/p><p><strong>\u00a0178.55.172.151 lassinsivut.eu\u00a0\u00a0 cloud.lassinsivut posti.lassinsivut.eu<\/strong><\/p><p>Jos sinulla ei ole kiinte\u00e4\u00e4 ip-osoitetta, tee t\u00e4ss\u00e4 muodossa:<\/p><p><strong>192.168.101.133 lassinsivut.eu<\/strong><\/p><p><strong>192.168.101.134 cloud.lassinsivut.eu<\/strong><\/p><p><strong>192.168.101.135 posti.lassinsivut.eu<\/strong><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b8f7edc elementor-widget elementor-widget-image\" data-id=\"b8f7edc\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"575\" height=\"69\" src=\"https:\/\/lassinsivut.eu\/wp-content\/uploads\/2022\/11\/4444e56566h5h.png\" class=\"attachment-large size-large wp-image-1463\" alt=\"\" srcset=\"https:\/\/lassinsivut.eu\/wp-content\/uploads\/2022\/11\/4444e56566h5h.png 575w, https:\/\/lassinsivut.eu\/wp-content\/uploads\/2022\/11\/4444e56566h5h-18x2.png 18w\" sizes=\"(max-width: 575px) 100vw, 575px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-eb53548 elementor-widget elementor-widget-text-editor\" data-id=\"eb53548\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Asennetaan viel\u00e4 php. T\u00e4t\u00e4 ei ole pakko asentaa, mutta sille on monesti tulevaisuudessa tarvetta.<\/p><p><strong>apt install apt-transport-https lsb-release ca-certificates<\/strong><\/p><p><strong>apt install wget<\/strong><\/p><p><strong>apt-get install gnupg<\/strong><\/p><p><b>apt install software-properties-common ca-certificates lsb-release apt-transport-https<\/b><\/p><p><b>sh -c &#8217;echo &#8221;deb https:\/\/packages.sury.org\/php\/ $(lsb_release -sc) main&#8221; &gt; \/etc\/apt\/sources.list.d\/php.list&#8217;<\/b><\/p><p><strong>wget https:\/\/packages.sury.org\/php\/apt.gpg<\/strong><\/p><p><strong>apt-key add apt.gpg<\/strong><\/p><p><strong>apt-get update<\/strong><\/p><p>SUOSITTELEN K\u00c4YTT\u00c4M\u00c4\u00c4N UUSINTA PHP VERSIOTA. (Ohjeen tekohetkell\u00e4 8.2)<\/p><p><strong>apt install apache2 php7.4 libapache2-mod-php7.4 php7.4-common php7.4-mbstring php7.4-xmlrpc php7.4-soap php7.4-gd php7.4-xml php7.4-intl php7.4-mysql php7.4-cli php7.4-ldap php7.4-zip php7.4-curl<\/strong><\/p><p>N\u00e4hd\u00e4\u00e4n php versio sek\u00e4 onko asennus onnistunut.<\/p><p><strong>php-v<\/strong><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-1315484 elementor-section-boxed elementor-section-height-default elementor-section-height-default wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no wpr-equal-height-no\" data-id=\"1315484\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"aux-parallax-section elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-c6a6609\" data-id=\"c6a6609\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-8fab0b7 elementor-widget elementor-widget-heading\" data-id=\"8fab0b7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Luodaan proxy<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-db44ebb elementor-widget elementor-widget-text-editor\" data-id=\"db44ebb\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Muokataan aikaisemmin luotua proxy konfigurointi tiedostoa ja tehd\u00e4\u00e4n alidomainien konfigurointi sinne.<\/p><p><strong>\/etc\/apache2\/sites-enabled\/reverseproxy.conf<\/strong><\/p><p>Seuraavaksi lis\u00e4t\u00e4\u00e4n alidomainien niinsanotut &#8221;blockit&#8221;. Niihin m\u00e4\u00e4ritell\u00e4\u00e4n ett\u00e4 kyseess\u00e4 on reverse proxy, mik\u00e4 paikallinen ip-osoite ohjataan siihen, mik\u00e4 alidomain sek\u00e4 tarvittaessa uudelleenohjaus www tai ilman https ssl suohaukseen. Ssl suojaus m\u00e4\u00e4ritell\u00e4\u00e4n alempana.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-fcde3d4 elementor-section-boxed elementor-section-height-default elementor-section-height-default wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no wpr-equal-height-no\" data-id=\"fcde3d4\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"aux-parallax-section elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-872a227\" data-id=\"872a227\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-2e31d2b elementor-widget elementor-widget-text-editor\" data-id=\"2e31d2b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>&lt;VirtualHost *:80&gt;<br \/>ProxyPreserveHost On<br \/>ProxyPass \/ http:\/\/192.168.101.133:80\/<br \/>ProxyPassReverse \/ http:\/\/192.168.101.133:80\/<br \/>ServerName lassinsivut.eu<br \/>ServerAlias www.lassinsivut.eu<\/p><p>RewriteEngine on<br \/>Redirect permanent \/ https:\/\/lassinsivut.eu<\/p><p>RewriteCond %{SERVER_NAME} =lassinsivut.eu [OR]RewriteCond %{SERVER_NAME} =www.lassinsivut.eu<br \/>RewriteRule ^ https:\/\/%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]&lt;\/VirtualHost&gt;<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0f55538 elementor-widget elementor-widget-image\" data-id=\"0f55538\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"422\" height=\"320\" src=\"https:\/\/lassinsivut.eu\/wp-content\/uploads\/2022\/11\/ert4tewbetb4te.png\" class=\"attachment-large size-large wp-image-1432\" alt=\"\" srcset=\"https:\/\/lassinsivut.eu\/wp-content\/uploads\/2022\/11\/ert4tewbetb4te.png 422w, https:\/\/lassinsivut.eu\/wp-content\/uploads\/2022\/11\/ert4tewbetb4te-16x12.png 16w\" sizes=\"(max-width: 422px) 100vw, 422px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"aux-parallax-section elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-3db1553\" data-id=\"3db1553\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-8c5e6cd elementor-widget elementor-widget-text-editor\" data-id=\"8c5e6cd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>&lt;VirtualHost *:80&gt;<br \/>ProxyPreserveHost On<br \/>ProxyPass \/ http:\/\/192.168.101.134:80\/<br \/>ProxyPassReverse \/ http:\/\/192.168.101.134:80\/<br \/>ServerName cloud.lassinsivut.eu<br \/>ServerAlias www.cloud.lassinsivut.eu<\/p><p>RewriteEngine on<br \/>Redirect permanent \/ http:\/\/cloud.lassinsivut.eu<\/p><p>RewriteCond %{SERVER_NAME} =cloud.lassinsivut.eu [OR]RewriteCond %{SERVER_NAME} =www.cloud.lassinsivut.eu<br \/>RewriteRule ^ https:\/\/%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]&lt;\/VirtualHost&gt;<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-dca0924 elementor-widget elementor-widget-image\" data-id=\"dca0924\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"581\" height=\"247\" src=\"https:\/\/lassinsivut.eu\/wp-content\/uploads\/2022\/11\/5h57h7h55574h75.png\" class=\"attachment-large size-large wp-image-1427\" alt=\"\" srcset=\"https:\/\/lassinsivut.eu\/wp-content\/uploads\/2022\/11\/5h57h7h55574h75.png 581w, https:\/\/lassinsivut.eu\/wp-content\/uploads\/2022\/11\/5h57h7h55574h75-18x8.png 18w\" sizes=\"(max-width: 581px) 100vw, 581px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-202b9c7 elementor-section-boxed elementor-section-height-default elementor-section-height-default wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no wpr-equal-height-no\" data-id=\"202b9c7\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"aux-parallax-section elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-b48bbda\" data-id=\"b48bbda\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-4e0036f elementor-widget elementor-widget-text-editor\" data-id=\"4e0036f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Kirjoita nyt selaimeesi domainisi sek\u00e4 valitut alidomainit, ne ohjaavat<\/p><p>Nyt kirjoitetaan selaimeen omat domainit ja huomataan ett\u00e4 siel\u00e4 tulee oikeat palvelimet vastaa, mutta ongelmana on ett\u00e4 yhteys ei ole suojattu ja salattu. Tarvitaan siis ssl sertifikaatti asennettua.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c3d7385 elementor-widget elementor-widget-image\" data-id=\"c3d7385\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"120\" height=\"33\" src=\"https:\/\/lassinsivut.eu\/wp-content\/uploads\/2022\/11\/3464645.png\" class=\"attachment-large size-large wp-image-1431\" alt=\"\" srcset=\"https:\/\/lassinsivut.eu\/wp-content\/uploads\/2022\/11\/3464645.png 120w, https:\/\/lassinsivut.eu\/wp-content\/uploads\/2022\/11\/3464645-18x5.png 18w\" sizes=\"(max-width: 120px) 100vw, 120px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-60d2808 elementor-section-boxed elementor-section-height-default elementor-section-height-default wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no wpr-equal-height-no\" data-id=\"60d2808\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"aux-parallax-section elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-1d4a113\" data-id=\"1d4a113\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-e617536 elementor-widget elementor-widget-heading\" data-id=\"e617536\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Certbot ssl<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c3f9cd1 elementor-widget elementor-widget-text-editor\" data-id=\"c3f9cd1\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Asennetaan ssl t\u00e4m\u00e4 suojaa sek\u00e4 salaa kaiken liikenteen sinun ja palvelimen v\u00e4lill\u00e4. Mahdollista my\u00f6s luoda ssl wildfire, siin\u00e4 sinulla on vain yksi sertifikaatti jokaisen alidomainin sijasta. T\u00e4m\u00e4 voi tulla hy\u00f6dylliseksi etenkin kuin eri domaineja sek\u00e4 alidomaineja alkaa olemaan eritt\u00e4in paljon. T\u00e4ss\u00e4 kuitenkin asennan normaalin sertifikaatin jokaiselle alidomainille jotta yksinkertaisyys pysyy.<\/p><p><strong>apt install python3-certbot-apache<\/strong><\/p><p><strong>certbot -d www.lassinsivut.eu -d lassinsivut.eu<\/strong><\/p><p>T\u00e4ytet\u00e4\u00e4n tiedot joita certbot kysyy.<\/p><p><strong>certbot -d www.cloud.lassinsivut.eu -d cloud.lassinsivut.eu<\/strong><\/p><p>Tarvittaessa sertifikaatin voi uusia:<\/p><p><strong>certbot &#8211;force-renewal<\/strong><\/p><p>Annetaan listasta domainit jotka haluat uusia. Lopuski K\u00e4ynnistet\u00e4\u00e4n apache uudestaan<\/p><p><strong>systemctl restart apache2<\/strong><\/p><p>Jotta reverse proxyssa saadaan cert botti toimimaan, t\u00f6ytyy meid\u00e4n muuttaa taaas apachen virtualhost file\u00e4.<\/p><p><strong>nano \/etc\/apache2\/sites-enabled\/reverseproxy.conf<\/strong><\/p><p>Viimeisen\u00e4 automatisoidaan sertifikaatin uusiminen, normaalisti se t\u00e4ytyy uusi aina 30 p\u00e4iv\u00e4n v\u00e4lein. T\u00e4m\u00e4 onnistuu kuitenkin helposti Linuxin cron ohjelmalla.<\/p><p><strong>crontab -e<\/strong><\/p><p>Lis\u00e4t\u00e4\u00e4n loppuun seuraava m\u00e4\u00e4ritys jossa certbot uusii kaikki sertifikaatit ja k\u00e4ynnist\u00e4\u00e4 apachen viikon v\u00e4lein maanantaina n.klo 5am.<\/p><p><strong>0 5 * * 1 certbot renew &#8211;force-renewal &amp;&amp; systemctl restart apache2<\/strong><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-d2af4df elementor-section-boxed elementor-section-height-default elementor-section-height-default wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no wpr-equal-height-no\" data-id=\"d2af4df\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"aux-parallax-section elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-6c5bf42\" data-id=\"6c5bf42\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-b6a3948 elementor-widget elementor-widget-text-editor\" data-id=\"b6a3948\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>&lt;VirtualHost *:443&gt;<br \/>ServerName lassinsivut.eu<br \/>ServerAlias www.lassinsivut.eu<\/p><p>SSLEngine On<br \/>SSLProxyEngine On<br \/>Redirect \/ https:\/\/lassinsivut.eu<br \/>ProxyRequests Off<br \/>ProxyPreserveHost On<br \/>ProxyPass \/ http:\/\/192.168.101.133:80\/<br \/>ProxyPassReverse \/ http:\/\/192.168.101.133:80\/<\/p><p>Include \/etc\/letsencrypt\/options-ssl-apache.conf<br \/>SSLCertificateFile \/etc\/letsencrypt\/live\/www.lassinsivut.eu\/fullchain.pem<br \/>SSLCertificateKeyFile \/etc\/letsencrypt\/live\/www.lassinsivut.eu\/privkey.pem<br \/>&lt;\/VirtualHost&gt;<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"aux-parallax-section elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-8121545\" data-id=\"8121545\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-729316e elementor-widget elementor-widget-text-editor\" data-id=\"729316e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>&lt;VirtualHost *:443&gt;<br \/>ServerName cloud.lassinsivut.eu<br \/>ServerAlias www.cloud.lassinsivut.eu<\/p><p>SSLEngine On<br \/>SSLProxyEngine On<br \/>Redirect \/ https:\/\/cloud.lassinsivut.eu<br \/>ProxyRequests Off<br \/>ProxyPreserveHost On<br \/>ProxyPass \/ http:\/\/192.168.101.134:80\/<br \/>ProxyPassReverse \/ http:\/\/192.168.101.134:80\/<\/p><p>Include \/etc\/letsencrypt\/options-ssl-apache.conf<br \/>SSLCertificateFile \/etc\/letsencrypt\/live\/www.cloud.lassinsivut.eu\/fullchain.pem<br \/>SSLCertificateKeyFile \/etc\/letsencrypt\/live\/www.cloud.lassinsivut.eu\/privkey.pem<br \/>&lt;\/VirtualHost&gt;<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-95881e2 elementor-section-boxed elementor-section-height-default elementor-section-height-default wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no wpr-equal-height-no\" data-id=\"95881e2\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"aux-parallax-section elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-f6093e0\" data-id=\"f6093e0\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-001df82 elementor-widget elementor-widget-image\" data-id=\"001df82\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"663\" height=\"302\" src=\"https:\/\/lassinsivut.eu\/wp-content\/uploads\/2022\/11\/674v6w54v4vt8v8.png\" class=\"attachment-large size-large wp-image-1429\" alt=\"\" srcset=\"https:\/\/lassinsivut.eu\/wp-content\/uploads\/2022\/11\/674v6w54v4vt8v8.png 663w, https:\/\/lassinsivut.eu\/wp-content\/uploads\/2022\/11\/674v6w54v4vt8v8-18x8.png 18w\" sizes=\"(max-width: 663px) 100vw, 663px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"aux-parallax-section elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-20b2485\" data-id=\"20b2485\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-6e6e723 elementor-widget elementor-widget-image\" data-id=\"6e6e723\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"681\" height=\"301\" src=\"https:\/\/lassinsivut.eu\/wp-content\/uploads\/2022\/11\/87547y9479.png\" class=\"attachment-large size-large wp-image-1430\" alt=\"\" srcset=\"https:\/\/lassinsivut.eu\/wp-content\/uploads\/2022\/11\/87547y9479.png 681w, https:\/\/lassinsivut.eu\/wp-content\/uploads\/2022\/11\/87547y9479-18x8.png 18w\" sizes=\"(max-width: 681px) 100vw, 681px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-5bbce97 elementor-section-boxed elementor-section-height-default elementor-section-height-default wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no wpr-equal-height-no\" data-id=\"5bbce97\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"aux-parallax-section elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-638119d\" data-id=\"638119d\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-a98501d elementor-widget elementor-widget-image\" data-id=\"a98501d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"387\" height=\"185\" src=\"https:\/\/lassinsivut.eu\/wp-content\/uploads\/2022\/11\/7j6g7j58.png\" class=\"attachment-large size-large wp-image-1428\" alt=\"\" srcset=\"https:\/\/lassinsivut.eu\/wp-content\/uploads\/2022\/11\/7j6g7j58.png 387w, https:\/\/lassinsivut.eu\/wp-content\/uploads\/2022\/11\/7j6g7j58-18x9.png 18w\" sizes=\"(max-width: 387px) 100vw, 387px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"aux-parallax-section elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-003d942\" data-id=\"003d942\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-bcbbc28 elementor-widget elementor-widget-image\" data-id=\"bcbbc28\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"381\" height=\"180\" src=\"https:\/\/lassinsivut.eu\/wp-content\/uploads\/2022\/11\/j7y45g754548.png\" class=\"attachment-large size-large wp-image-1433\" alt=\"\" srcset=\"https:\/\/lassinsivut.eu\/wp-content\/uploads\/2022\/11\/j7y45g754548.png 381w, https:\/\/lassinsivut.eu\/wp-content\/uploads\/2022\/11\/j7y45g754548-18x9.png 18w\" sizes=\"(max-width: 381px) 100vw, 381px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t<div class=\"aux-parallax-section elementor-element elementor-element-0671393 e-flex e-con-boxed wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no wpr-equal-height-no e-con e-parent\" data-id=\"0671393\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-9579ad8 elementor-widget elementor-widget-heading\" data-id=\"9579ad8\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Ongelma php kanssa<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f602f81 elementor-widget elementor-widget-text-editor\" data-id=\"f602f81\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Olen huomannut ett\u00e4 tietyt php sovellukset eiv\u00e4t toimi tuon proxy konfiguraation kanssa. T\u00e4m\u00e4 konfiguraatio on minulla toiminut ja korjannut asian jos tuo yll\u00e4 mainittu ei toimi.<\/p><p><strong>&lt;VirtualHost *:80&gt;<\/strong><br \/><strong>ServerName lassinsivut.eu<\/strong><br \/><strong>ServerAlias www.lassinsivut.eu<\/strong><br \/><strong>RewriteEngine on<\/strong><br \/><strong>RewriteCond %{REQUEST_METHOD} ^(TRACE|TRACK)<\/strong><br \/><strong>RewriteRule .* &#8211; [F]<\/strong><br \/><strong>Redirect \/ https:\/\/lassinsivut.eu\/<\/strong><br \/><strong>&lt;\/VirtualHost&gt;<\/strong><\/p><p><strong>&lt;VirtualHost *:443&gt;<\/strong><br \/><strong>ServerName lassinsivut.eu<\/strong><br \/><strong>ServerAlias www.lassinsivut.eu<\/strong><br \/><strong>SSLEngine On<\/strong><br \/><strong>SSLProxyEngine On<\/strong><br \/><strong>SSLProxyVerify none<\/strong><br \/><strong>SSLProxyCheckPeerCN off<\/strong><br \/><strong>SSLProxyCheckPeerExpire off<\/strong><\/p><p><strong>SSLCertificateFile \/etc\/letsencrypt\/live\/lassinsivut.eu\/fullchain.pem<\/strong><br \/><strong>SSLCertificateKeyFile \/etc\/letsencrypt\/live\/lassinsivut.eu\/privkey.pem<\/strong><\/p><p><strong>ProxyPreserveHost On<\/strong><br \/><strong>ProxyPass \/ https:\/\/192.168.101.133:443\/<\/strong><br \/><strong>ProxyPassReverse \/ https:\/\/192.168.101.133:443\/<\/strong><br \/><strong>&lt;\/VirtualHost&gt;<\/strong><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Bootable USB tekeminen Proxmox ISO-image Proxmoxin asennus\u200b Proxmoxin konfigurointi\u200b Kovalevyn lis\u00e4\u00e4minen\u200b Virtuaalikoneen asennus\u200b Viimeistely Debian reverse proxyn teko Reverse proxy on eritt\u00e4in hy\u00f6dyllinen jos palvelimia on paljon, mutta sinulla on vain 1 tai rajattu m\u00e4\u00e4r\u00e4 ip-osoitteita. T\u00e4ss\u00e4 ohjeessa minulla on 1 ip-osoite, sek\u00e4 3 muuta palvelinta jotka haluan internettiin. T\u00e4ss\u00e4 tilanteessa tarvitaan 1 kone ohjaamaan kaiken liikenteen julkisesta ip-osoitteesta ja siirt\u00e4m\u00e4ll\u00e4 clientin palvelimelle jota h\u00e4n on kutsunut. Jos taas et ole jo luonut alidomainin palvelimia, voit katsoa alla olevat linkit niiden tekoon. Ohje WordPressin asennukselle ja konfigurointiin. Ohje Debian koneen asennukselle. Pakettien ja moduulien asennus Ensin asennetaan www-palvelin joka hoitaa uudelleenohjauksen eri palvelimiin. My\u00f6s tarvittavat moduulit jotka proxyn tekemiseen tarvitaan. apt-get install apache systemctl enable apache2 systemctl start apache2 Nyt asennetaan palomuuri koneelle, sill\u00e4 avataan portit 80 (webpalvelin) ja 443 (ssl-salattu liikenne) apt-get install ufw systemctl enable ufw systemctl start ufw ufw allow 80 ufw allow 443 Viel\u00e4 pieni ohjelma jolla estet\u00e4\u00e4n ylim\u00e4\u00e4r\u00e4isi\u00e4 kirjautumisia varsinkin jos ssh yhteys on otettu k\u00e4ytt\u00f6\u00f6n. apt-get install fail2ban systemctl enable fail2ban Sitten viel\u00e4 lopuksi apachen proxy moduulit k\u00e4ytt\u00f6\u00f6n a2enmod proxy a2enmod proxy_http a2enmod proxy_balancer a2enmod lbmethod_byrequests Konfiguroidaan reverse proxy Ensin nimet\u00e4\u00e4n oletus konfigurointi tiedosto uuteen. cp \/etc\/apache2\/sites-available\/000-default.conf \/etc\/apache2\/sites-available\/reverseproxy.conf Otetaan uusi tiedostot voimaan ja poistetaan vanha k\u00e4yt\u00f6st\u00e4. a2ensite reverseproxy.conf a2dissite 000-default.conf Lopuksi viel\u00e4 k\u00e4ynnistet\u00e4\u00e4n Apache uudelleen ja tarkistetaan sen tila. systemctl restart apache2 systemctl status apache2 Tehd\u00e4\u00e4n viel\u00e4 symlink jotta samaa tiedostoa voidaan muokata useammasta eri polusta. T\u00e4ss\u00e4 tilanteessa \/sites-available ja \/sites-enabled ln -s \/etc\/apache2\/sites-available\/reverseproxy.conf \/etc\/apache2\/sites-enabled\/reverseproxy.conf Lis\u00e4t\u00e4\u00e4n is\u00e4nt\u00e4tiedostoon viel\u00e4 alidomainit joita halutaan k\u00e4ytt\u00e4\u00e4. nano \/etc\/hosts \u00a0178.55.172.151 lassinsivut.eu\u00a0\u00a0 cloud.lassinsivut posti.lassinsivut.eu Jos sinulla ei ole kiinte\u00e4\u00e4 ip-osoitetta, tee t\u00e4ss\u00e4 muodossa: 192.168.101.133 lassinsivut.eu 192.168.101.134 cloud.lassinsivut.eu 192.168.101.135 posti.lassinsivut.eu Asennetaan viel\u00e4 php. T\u00e4t\u00e4 ei ole pakko asentaa, mutta sille on monesti tulevaisuudessa tarvetta. apt install apt-transport-https lsb-release ca-certificates apt install wget apt-get install gnupg apt install software-properties-common ca-certificates lsb-release apt-transport-https sh -c &#8217;echo &#8221;deb https:\/\/packages.sury.org\/php\/ $(lsb_release -sc) main&#8221; &gt; \/etc\/apt\/sources.list.d\/php.list&#8217; wget https:\/\/packages.sury.org\/php\/apt.gpg apt-key add apt.gpg apt-get update SUOSITTELEN K\u00c4YTT\u00c4M\u00c4\u00c4N UUSINTA PHP VERSIOTA. (Ohjeen tekohetkell\u00e4 8.2) apt install apache2 php7.4 libapache2-mod-php7.4 php7.4-common php7.4-mbstring php7.4-xmlrpc php7.4-soap php7.4-gd php7.4-xml php7.4-intl php7.4-mysql php7.4-cli php7.4-ldap php7.4-zip php7.4-curl N\u00e4hd\u00e4\u00e4n php versio sek\u00e4 onko asennus onnistunut. php-v Luodaan proxy Muokataan aikaisemmin luotua proxy konfigurointi tiedostoa ja tehd\u00e4\u00e4n alidomainien konfigurointi sinne. \/etc\/apache2\/sites-enabled\/reverseproxy.conf Seuraavaksi lis\u00e4t\u00e4\u00e4n alidomainien niinsanotut &#8221;blockit&#8221;. Niihin m\u00e4\u00e4ritell\u00e4\u00e4n ett\u00e4 kyseess\u00e4 on reverse proxy, mik\u00e4 paikallinen ip-osoite ohjataan siihen, mik\u00e4 alidomain sek\u00e4 tarvittaessa uudelleenohjaus www tai ilman https ssl suohaukseen. Ssl suojaus m\u00e4\u00e4ritell\u00e4\u00e4n alempana. &lt;VirtualHost *:80&gt;ProxyPreserveHost OnProxyPass \/ http:\/\/192.168.101.133:80\/ProxyPassReverse \/ http:\/\/192.168.101.133:80\/ServerName lassinsivut.euServerAlias www.lassinsivut.eu RewriteEngine onRedirect permanent \/ https:\/\/lassinsivut.eu RewriteCond %{SERVER_NAME} =lassinsivut.eu [OR]RewriteCond %{SERVER_NAME} =www.lassinsivut.euRewriteRule ^ https:\/\/%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]&lt;\/VirtualHost&gt; &lt;VirtualHost *:80&gt;ProxyPreserveHost OnProxyPass \/ http:\/\/192.168.101.134:80\/ProxyPassReverse \/ http:\/\/192.168.101.134:80\/ServerName cloud.lassinsivut.euServerAlias www.cloud.lassinsivut.eu RewriteEngine onRedirect permanent \/ http:\/\/cloud.lassinsivut.eu RewriteCond %{SERVER_NAME} =cloud.lassinsivut.eu [OR]RewriteCond %{SERVER_NAME} =www.cloud.lassinsivut.euRewriteRule ^ https:\/\/%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]&lt;\/VirtualHost&gt; Kirjoita nyt selaimeesi domainisi sek\u00e4 valitut alidomainit, ne ohjaavat Nyt kirjoitetaan selaimeen omat domainit ja huomataan ett\u00e4 siel\u00e4 tulee oikeat palvelimet vastaa, mutta ongelmana on ett\u00e4 yhteys ei ole suojattu ja salattu. Tarvitaan siis ssl sertifikaatti asennettua. Certbot ssl Asennetaan ssl t\u00e4m\u00e4 suojaa sek\u00e4 salaa kaiken liikenteen sinun ja palvelimen v\u00e4lill\u00e4. Mahdollista my\u00f6s luoda ssl wildfire, siin\u00e4 sinulla on vain yksi sertifikaatti jokaisen alidomainin sijasta. T\u00e4m\u00e4 voi tulla hy\u00f6dylliseksi etenkin kuin eri domaineja sek\u00e4 alidomaineja alkaa olemaan eritt\u00e4in paljon. T\u00e4ss\u00e4 kuitenkin asennan normaalin sertifikaatin jokaiselle alidomainille jotta yksinkertaisyys pysyy. apt install python3-certbot-apache certbot -d www.lassinsivut.eu -d lassinsivut.eu T\u00e4ytet\u00e4\u00e4n tiedot joita certbot kysyy. certbot -d www.cloud.lassinsivut.eu -d cloud.lassinsivut.eu Tarvittaessa sertifikaatin voi uusia: certbot &#8211;force-renewal Annetaan listasta domainit jotka haluat uusia. Lopuski K\u00e4ynnistet\u00e4\u00e4n apache uudestaan systemctl restart apache2 Jotta reverse proxyssa saadaan cert botti toimimaan, t\u00f6ytyy meid\u00e4n muuttaa taaas apachen virtualhost file\u00e4. nano \/etc\/apache2\/sites-enabled\/reverseproxy.conf Viimeisen\u00e4 automatisoidaan sertifikaatin uusiminen, normaalisti se t\u00e4ytyy uusi aina 30 p\u00e4iv\u00e4n v\u00e4lein. T\u00e4m\u00e4 onnistuu kuitenkin helposti Linuxin cron ohjelmalla. crontab -e Lis\u00e4t\u00e4\u00e4n loppuun seuraava m\u00e4\u00e4ritys jossa certbot uusii kaikki sertifikaatit ja k\u00e4ynnist\u00e4\u00e4 apachen viikon v\u00e4lein maanantaina n.klo 5am. 0 5 * * 1 certbot renew &#8211;force-renewal &amp;&amp; systemctl restart apache2 &lt;VirtualHost *:443&gt;ServerName lassinsivut.euServerAlias www.lassinsivut.eu SSLEngine OnSSLProxyEngine OnRedirect \/ https:\/\/lassinsivut.euProxyRequests OffProxyPreserveHost OnProxyPass \/ http:\/\/192.168.101.133:80\/ProxyPassReverse \/ http:\/\/192.168.101.133:80\/ Include \/etc\/letsencrypt\/options-ssl-apache.confSSLCertificateFile \/etc\/letsencrypt\/live\/www.lassinsivut.eu\/fullchain.pemSSLCertificateKeyFile \/etc\/letsencrypt\/live\/www.lassinsivut.eu\/privkey.pem&lt;\/VirtualHost&gt; &lt;VirtualHost *:443&gt;ServerName cloud.lassinsivut.euServerAlias www.cloud.lassinsivut.eu SSLEngine OnSSLProxyEngine OnRedirect \/ https:\/\/cloud.lassinsivut.euProxyRequests OffProxyPreserveHost OnProxyPass \/ http:\/\/192.168.101.134:80\/ProxyPassReverse \/ http:\/\/192.168.101.134:80\/ Include \/etc\/letsencrypt\/options-ssl-apache.confSSLCertificateFile \/etc\/letsencrypt\/live\/www.cloud.lassinsivut.eu\/fullchain.pemSSLCertificateKeyFile \/etc\/letsencrypt\/live\/www.cloud.lassinsivut.eu\/privkey.pem&lt;\/VirtualHost&gt; Ongelma php kanssa Olen huomannut ett\u00e4 tietyt php sovellukset eiv\u00e4t toimi tuon proxy konfiguraation kanssa. T\u00e4m\u00e4 konfiguraatio on minulla toiminut ja korjannut asian jos tuo yll\u00e4 mainittu ei toimi. &lt;VirtualHost *:80&gt;ServerName lassinsivut.euServerAlias www.lassinsivut.euRewriteEngine onRewriteCond %{REQUEST_METHOD} ^(TRACE|TRACK)RewriteRule .* &#8211; [F]Redirect \/ https:\/\/lassinsivut.eu\/&lt;\/VirtualHost&gt; &lt;VirtualHost *:443&gt;ServerName lassinsivut.euServerAlias www.lassinsivut.euSSLEngine OnSSLProxyEngine OnSSLProxyVerify noneSSLProxyCheckPeerCN offSSLProxyCheckPeerExpire off SSLCertificateFile \/etc\/letsencrypt\/live\/lassinsivut.eu\/fullchain.pemSSLCertificateKeyFile \/etc\/letsencrypt\/live\/lassinsivut.eu\/privkey.pem ProxyPreserveHost OnProxyPass \/ https:\/\/192.168.101.133:443\/ProxyPassReverse \/ https:\/\/192.168.101.133:443\/&lt;\/VirtualHost&gt;<\/p>\n","protected":false},"author":1,"featured_media":1358,"comment_status":"closed","ping_status":"open","sticky":false,"template":"elementor_header_footer","format":"standard","meta":{"footnotes":""},"categories":[9,10],"tags":[],"class_list":["post-1224","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-linux","category-palvelin"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Debian reverse proxy verkkopalvelimelle - Lassin kotisivut<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/lassinsivut.eu\/en\/reverse-proxy\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Debian reverse proxy verkkopalvelimelle - Lassin kotisivut\" \/>\n<meta property=\"og:description\" content=\"Bootable USB tekeminen Proxmox ISO-image Proxmoxin asennus\u200b Proxmoxin konfigurointi\u200b Kovalevyn lis\u00e4\u00e4minen\u200b Virtuaalikoneen asennus\u200b Viimeistely Debian reverse proxyn teko Reverse proxy on eritt\u00e4in hy\u00f6dyllinen jos palvelimia on paljon, mutta sinulla on vain 1 tai rajattu m\u00e4\u00e4r\u00e4 ip-osoitteita. T\u00e4ss\u00e4 ohjeessa minulla on 1 ip-osoite, sek\u00e4 3 muuta palvelinta jotka haluan internettiin. T\u00e4ss\u00e4 tilanteessa tarvitaan 1 kone ohjaamaan kaiken liikenteen julkisesta ip-osoitteesta ja siirt\u00e4m\u00e4ll\u00e4 clientin palvelimelle jota h\u00e4n on kutsunut. Jos taas et ole jo luonut alidomainin palvelimia, voit katsoa alla olevat linkit niiden tekoon. Ohje WordPressin asennukselle ja konfigurointiin. Ohje Debian koneen asennukselle. Pakettien ja moduulien asennus Ensin asennetaan www-palvelin joka hoitaa uudelleenohjauksen eri palvelimiin. My\u00f6s tarvittavat moduulit jotka proxyn tekemiseen tarvitaan. apt-get install apache systemctl enable apache2 systemctl start apache2 Nyt asennetaan palomuuri koneelle, sill\u00e4 avataan portit 80 (webpalvelin) ja 443 (ssl-salattu liikenne) apt-get install ufw systemctl enable ufw systemctl start ufw ufw allow 80 ufw allow 443 Viel\u00e4 pieni ohjelma jolla estet\u00e4\u00e4n ylim\u00e4\u00e4r\u00e4isi\u00e4 kirjautumisia varsinkin jos ssh yhteys on otettu k\u00e4ytt\u00f6\u00f6n. apt-get install fail2ban systemctl enable fail2ban Sitten viel\u00e4 lopuksi apachen proxy moduulit k\u00e4ytt\u00f6\u00f6n a2enmod proxy a2enmod proxy_http a2enmod proxy_balancer a2enmod lbmethod_byrequests Konfiguroidaan reverse proxy Ensin nimet\u00e4\u00e4n oletus konfigurointi tiedosto uuteen. cp \/etc\/apache2\/sites-available\/000-default.conf \/etc\/apache2\/sites-available\/reverseproxy.conf Otetaan uusi tiedostot voimaan ja poistetaan vanha k\u00e4yt\u00f6st\u00e4. a2ensite reverseproxy.conf a2dissite 000-default.conf Lopuksi viel\u00e4 k\u00e4ynnistet\u00e4\u00e4n Apache uudelleen ja tarkistetaan sen tila. systemctl restart apache2 systemctl status apache2 Tehd\u00e4\u00e4n viel\u00e4 symlink jotta samaa tiedostoa voidaan muokata useammasta eri polusta. T\u00e4ss\u00e4 tilanteessa \/sites-available ja \/sites-enabled ln -s \/etc\/apache2\/sites-available\/reverseproxy.conf \/etc\/apache2\/sites-enabled\/reverseproxy.conf Lis\u00e4t\u00e4\u00e4n is\u00e4nt\u00e4tiedostoon viel\u00e4 alidomainit joita halutaan k\u00e4ytt\u00e4\u00e4. nano \/etc\/hosts \u00a0178.55.172.151 lassinsivut.eu\u00a0\u00a0 cloud.lassinsivut posti.lassinsivut.eu Jos sinulla ei ole kiinte\u00e4\u00e4 ip-osoitetta, tee t\u00e4ss\u00e4 muodossa: 192.168.101.133 lassinsivut.eu 192.168.101.134 cloud.lassinsivut.eu 192.168.101.135 posti.lassinsivut.eu Asennetaan viel\u00e4 php. T\u00e4t\u00e4 ei ole pakko asentaa, mutta sille on monesti tulevaisuudessa tarvetta. apt install apt-transport-https lsb-release ca-certificates apt install wget apt-get install gnupg apt install software-properties-common ca-certificates lsb-release apt-transport-https sh -c &#8217;echo &#8221;deb https:\/\/packages.sury.org\/php\/ $(lsb_release -sc) main&#8221; &gt; \/etc\/apt\/sources.list.d\/php.list&#8217; wget https:\/\/packages.sury.org\/php\/apt.gpg apt-key add apt.gpg apt-get update SUOSITTELEN K\u00c4YTT\u00c4M\u00c4\u00c4N UUSINTA PHP VERSIOTA. (Ohjeen tekohetkell\u00e4 8.2) apt install apache2 php7.4 libapache2-mod-php7.4 php7.4-common php7.4-mbstring php7.4-xmlrpc php7.4-soap php7.4-gd php7.4-xml php7.4-intl php7.4-mysql php7.4-cli php7.4-ldap php7.4-zip php7.4-curl N\u00e4hd\u00e4\u00e4n php versio sek\u00e4 onko asennus onnistunut. php-v Luodaan proxy Muokataan aikaisemmin luotua proxy konfigurointi tiedostoa ja tehd\u00e4\u00e4n alidomainien konfigurointi sinne. \/etc\/apache2\/sites-enabled\/reverseproxy.conf Seuraavaksi lis\u00e4t\u00e4\u00e4n alidomainien niinsanotut &#8221;blockit&#8221;. Niihin m\u00e4\u00e4ritell\u00e4\u00e4n ett\u00e4 kyseess\u00e4 on reverse proxy, mik\u00e4 paikallinen ip-osoite ohjataan siihen, mik\u00e4 alidomain sek\u00e4 tarvittaessa uudelleenohjaus www tai ilman https ssl suohaukseen. Ssl suojaus m\u00e4\u00e4ritell\u00e4\u00e4n alempana. &lt;VirtualHost *:80&gt;ProxyPreserveHost OnProxyPass \/ http:\/\/192.168.101.133:80\/ProxyPassReverse \/ http:\/\/192.168.101.133:80\/ServerName lassinsivut.euServerAlias www.lassinsivut.eu RewriteEngine onRedirect permanent \/ https:\/\/lassinsivut.eu RewriteCond %{SERVER_NAME} =lassinsivut.eu [OR]RewriteCond %{SERVER_NAME} =www.lassinsivut.euRewriteRule ^ https:\/\/%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]&lt;\/VirtualHost&gt; &lt;VirtualHost *:80&gt;ProxyPreserveHost OnProxyPass \/ http:\/\/192.168.101.134:80\/ProxyPassReverse \/ http:\/\/192.168.101.134:80\/ServerName cloud.lassinsivut.euServerAlias www.cloud.lassinsivut.eu RewriteEngine onRedirect permanent \/ http:\/\/cloud.lassinsivut.eu RewriteCond %{SERVER_NAME} =cloud.lassinsivut.eu [OR]RewriteCond %{SERVER_NAME} =www.cloud.lassinsivut.euRewriteRule ^ https:\/\/%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]&lt;\/VirtualHost&gt; Kirjoita nyt selaimeesi domainisi sek\u00e4 valitut alidomainit, ne ohjaavat Nyt kirjoitetaan selaimeen omat domainit ja huomataan ett\u00e4 siel\u00e4 tulee oikeat palvelimet vastaa, mutta ongelmana on ett\u00e4 yhteys ei ole suojattu ja salattu. Tarvitaan siis ssl sertifikaatti asennettua. Certbot ssl Asennetaan ssl t\u00e4m\u00e4 suojaa sek\u00e4 salaa kaiken liikenteen sinun ja palvelimen v\u00e4lill\u00e4. Mahdollista my\u00f6s luoda ssl wildfire, siin\u00e4 sinulla on vain yksi sertifikaatti jokaisen alidomainin sijasta. T\u00e4m\u00e4 voi tulla hy\u00f6dylliseksi etenkin kuin eri domaineja sek\u00e4 alidomaineja alkaa olemaan eritt\u00e4in paljon. T\u00e4ss\u00e4 kuitenkin asennan normaalin sertifikaatin jokaiselle alidomainille jotta yksinkertaisyys pysyy. apt install python3-certbot-apache certbot -d www.lassinsivut.eu -d lassinsivut.eu T\u00e4ytet\u00e4\u00e4n tiedot joita certbot kysyy. certbot -d www.cloud.lassinsivut.eu -d cloud.lassinsivut.eu Tarvittaessa sertifikaatin voi uusia: certbot &#8211;force-renewal Annetaan listasta domainit jotka haluat uusia. Lopuski K\u00e4ynnistet\u00e4\u00e4n apache uudestaan systemctl restart apache2 Jotta reverse proxyssa saadaan cert botti toimimaan, t\u00f6ytyy meid\u00e4n muuttaa taaas apachen virtualhost file\u00e4. nano \/etc\/apache2\/sites-enabled\/reverseproxy.conf Viimeisen\u00e4 automatisoidaan sertifikaatin uusiminen, normaalisti se t\u00e4ytyy uusi aina 30 p\u00e4iv\u00e4n v\u00e4lein. T\u00e4m\u00e4 onnistuu kuitenkin helposti Linuxin cron ohjelmalla. crontab -e Lis\u00e4t\u00e4\u00e4n loppuun seuraava m\u00e4\u00e4ritys jossa certbot uusii kaikki sertifikaatit ja k\u00e4ynnist\u00e4\u00e4 apachen viikon v\u00e4lein maanantaina n.klo 5am. 0 5 * * 1 certbot renew &#8211;force-renewal &amp;&amp; systemctl restart apache2 &lt;VirtualHost *:443&gt;ServerName lassinsivut.euServerAlias www.lassinsivut.eu SSLEngine OnSSLProxyEngine OnRedirect \/ https:\/\/lassinsivut.euProxyRequests OffProxyPreserveHost OnProxyPass \/ http:\/\/192.168.101.133:80\/ProxyPassReverse \/ http:\/\/192.168.101.133:80\/ Include \/etc\/letsencrypt\/options-ssl-apache.confSSLCertificateFile \/etc\/letsencrypt\/live\/www.lassinsivut.eu\/fullchain.pemSSLCertificateKeyFile \/etc\/letsencrypt\/live\/www.lassinsivut.eu\/privkey.pem&lt;\/VirtualHost&gt; &lt;VirtualHost *:443&gt;ServerName cloud.lassinsivut.euServerAlias www.cloud.lassinsivut.eu SSLEngine OnSSLProxyEngine OnRedirect \/ https:\/\/cloud.lassinsivut.euProxyRequests OffProxyPreserveHost OnProxyPass \/ http:\/\/192.168.101.134:80\/ProxyPassReverse \/ http:\/\/192.168.101.134:80\/ Include \/etc\/letsencrypt\/options-ssl-apache.confSSLCertificateFile \/etc\/letsencrypt\/live\/www.cloud.lassinsivut.eu\/fullchain.pemSSLCertificateKeyFile \/etc\/letsencrypt\/live\/www.cloud.lassinsivut.eu\/privkey.pem&lt;\/VirtualHost&gt; Ongelma php kanssa Olen huomannut ett\u00e4 tietyt php sovellukset eiv\u00e4t toimi tuon proxy konfiguraation kanssa. T\u00e4m\u00e4 konfiguraatio on minulla toiminut ja korjannut asian jos tuo yll\u00e4 mainittu ei toimi. &lt;VirtualHost *:80&gt;ServerName lassinsivut.euServerAlias www.lassinsivut.euRewriteEngine onRewriteCond %{REQUEST_METHOD} ^(TRACE|TRACK)RewriteRule .* &#8211; [F]Redirect \/ https:\/\/lassinsivut.eu\/&lt;\/VirtualHost&gt; &lt;VirtualHost *:443&gt;ServerName lassinsivut.euServerAlias www.lassinsivut.euSSLEngine OnSSLProxyEngine OnSSLProxyVerify noneSSLProxyCheckPeerCN offSSLProxyCheckPeerExpire off SSLCertificateFile \/etc\/letsencrypt\/live\/lassinsivut.eu\/fullchain.pemSSLCertificateKeyFile \/etc\/letsencrypt\/live\/lassinsivut.eu\/privkey.pem ProxyPreserveHost OnProxyPass \/ https:\/\/192.168.101.133:443\/ProxyPassReverse \/ https:\/\/192.168.101.133:443\/&lt;\/VirtualHost&gt;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/lassinsivut.eu\/en\/reverse-proxy\/\" \/>\n<meta property=\"og:site_name\" content=\"Lassin kotisivut\" \/>\n<meta property=\"article:published_time\" content=\"2022-11-01T13:29:46+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-03-29T18:24:24+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/lassinsivut.eu\/wp-content\/uploads\/2022\/11\/image-35.png\" \/>\n\t<meta property=\"og:image:width\" content=\"853\" \/>\n\t<meta property=\"og:image:height\" content=\"480\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"lassi\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"lassi\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/lassinsivut.eu\\\/reverse-proxy\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/lassinsivut.eu\\\/reverse-proxy\\\/\"},\"author\":{\"name\":\"lassi\",\"@id\":\"https:\\\/\\\/lassinsivut.eu\\\/#\\\/schema\\\/person\\\/9246ef62dc4013651f8657d79fe2ef58\"},\"headline\":\"Debian reverse proxy verkkopalvelimelle\",\"datePublished\":\"2022-11-01T13:29:46+00:00\",\"dateModified\":\"2023-03-29T18:24:24+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/lassinsivut.eu\\\/reverse-proxy\\\/\"},\"wordCount\":1017,\"publisher\":{\"@id\":\"https:\\\/\\\/lassinsivut.eu\\\/#\\\/schema\\\/person\\\/9246ef62dc4013651f8657d79fe2ef58\"},\"image\":{\"@id\":\"https:\\\/\\\/lassinsivut.eu\\\/reverse-proxy\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/lassinsivut.eu\\\/wp-content\\\/uploads\\\/2022\\\/11\\\/image-35.png\",\"articleSection\":[\"Linux\",\"Palvelin\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/lassinsivut.eu\\\/reverse-proxy\\\/\",\"url\":\"https:\\\/\\\/lassinsivut.eu\\\/reverse-proxy\\\/\",\"name\":\"Debian reverse proxy verkkopalvelimelle - Lassin kotisivut\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/lassinsivut.eu\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/lassinsivut.eu\\\/reverse-proxy\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/lassinsivut.eu\\\/reverse-proxy\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/lassinsivut.eu\\\/wp-content\\\/uploads\\\/2022\\\/11\\\/image-35.png\",\"datePublished\":\"2022-11-01T13:29:46+00:00\",\"dateModified\":\"2023-03-29T18:24:24+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/lassinsivut.eu\\\/reverse-proxy\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/lassinsivut.eu\\\/reverse-proxy\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/lassinsivut.eu\\\/reverse-proxy\\\/#primaryimage\",\"url\":\"https:\\\/\\\/lassinsivut.eu\\\/wp-content\\\/uploads\\\/2022\\\/11\\\/image-35.png\",\"contentUrl\":\"https:\\\/\\\/lassinsivut.eu\\\/wp-content\\\/uploads\\\/2022\\\/11\\\/image-35.png\",\"width\":853,\"height\":480},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/lassinsivut.eu\\\/reverse-proxy\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/lassinsivut.eu\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Debian reverse proxy verkkopalvelimelle\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/lassinsivut.eu\\\/#website\",\"url\":\"https:\\\/\\\/lassinsivut.eu\\\/\",\"name\":\"Lassin kotisivut\",\"description\":\"Blogi t\u00e4ynn\u00e4 tietotekniikan juttuja, tervetuloa!\",\"publisher\":{\"@id\":\"https:\\\/\\\/lassinsivut.eu\\\/#\\\/schema\\\/person\\\/9246ef62dc4013651f8657d79fe2ef58\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/lassinsivut.eu\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/lassinsivut.eu\\\/#\\\/schema\\\/person\\\/9246ef62dc4013651f8657d79fe2ef58\",\"name\":\"lassi\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5e227bfe60b98fd4b60c357bafc3f3c3b16fdee80c778359dab94e7ed3a53e6a?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5e227bfe60b98fd4b60c357bafc3f3c3b16fdee80c778359dab94e7ed3a53e6a?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5e227bfe60b98fd4b60c357bafc3f3c3b16fdee80c778359dab94e7ed3a53e6a?s=96&d=mm&r=g\",\"caption\":\"lassi\"},\"logo\":{\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5e227bfe60b98fd4b60c357bafc3f3c3b16fdee80c778359dab94e7ed3a53e6a?s=96&d=mm&r=g\"},\"sameAs\":[\"https:\\\/\\\/lassinsivut.eu\"],\"url\":\"https:\\\/\\\/lassinsivut.eu\\\/en\\\/author\\\/lassi\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Debian reverse proxy verkkopalvelimelle - Lassin kotisivut","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/lassinsivut.eu\/en\/reverse-proxy\/","og_locale":"en_US","og_type":"article","og_title":"Debian reverse proxy verkkopalvelimelle - Lassin kotisivut","og_description":"Bootable USB tekeminen Proxmox ISO-image Proxmoxin asennus\u200b Proxmoxin konfigurointi\u200b Kovalevyn lis\u00e4\u00e4minen\u200b Virtuaalikoneen asennus\u200b Viimeistely Debian reverse proxyn teko Reverse proxy on eritt\u00e4in hy\u00f6dyllinen jos palvelimia on paljon, mutta sinulla on vain 1 tai rajattu m\u00e4\u00e4r\u00e4 ip-osoitteita. T\u00e4ss\u00e4 ohjeessa minulla on 1 ip-osoite, sek\u00e4 3 muuta palvelinta jotka haluan internettiin. T\u00e4ss\u00e4 tilanteessa tarvitaan 1 kone ohjaamaan kaiken liikenteen julkisesta ip-osoitteesta ja siirt\u00e4m\u00e4ll\u00e4 clientin palvelimelle jota h\u00e4n on kutsunut. Jos taas et ole jo luonut alidomainin palvelimia, voit katsoa alla olevat linkit niiden tekoon. Ohje WordPressin asennukselle ja konfigurointiin. Ohje Debian koneen asennukselle. Pakettien ja moduulien asennus Ensin asennetaan www-palvelin joka hoitaa uudelleenohjauksen eri palvelimiin. My\u00f6s tarvittavat moduulit jotka proxyn tekemiseen tarvitaan. apt-get install apache systemctl enable apache2 systemctl start apache2 Nyt asennetaan palomuuri koneelle, sill\u00e4 avataan portit 80 (webpalvelin) ja 443 (ssl-salattu liikenne) apt-get install ufw systemctl enable ufw systemctl start ufw ufw allow 80 ufw allow 443 Viel\u00e4 pieni ohjelma jolla estet\u00e4\u00e4n ylim\u00e4\u00e4r\u00e4isi\u00e4 kirjautumisia varsinkin jos ssh yhteys on otettu k\u00e4ytt\u00f6\u00f6n. apt-get install fail2ban systemctl enable fail2ban Sitten viel\u00e4 lopuksi apachen proxy moduulit k\u00e4ytt\u00f6\u00f6n a2enmod proxy a2enmod proxy_http a2enmod proxy_balancer a2enmod lbmethod_byrequests Konfiguroidaan reverse proxy Ensin nimet\u00e4\u00e4n oletus konfigurointi tiedosto uuteen. cp \/etc\/apache2\/sites-available\/000-default.conf \/etc\/apache2\/sites-available\/reverseproxy.conf Otetaan uusi tiedostot voimaan ja poistetaan vanha k\u00e4yt\u00f6st\u00e4. a2ensite reverseproxy.conf a2dissite 000-default.conf Lopuksi viel\u00e4 k\u00e4ynnistet\u00e4\u00e4n Apache uudelleen ja tarkistetaan sen tila. systemctl restart apache2 systemctl status apache2 Tehd\u00e4\u00e4n viel\u00e4 symlink jotta samaa tiedostoa voidaan muokata useammasta eri polusta. T\u00e4ss\u00e4 tilanteessa \/sites-available ja \/sites-enabled ln -s \/etc\/apache2\/sites-available\/reverseproxy.conf \/etc\/apache2\/sites-enabled\/reverseproxy.conf Lis\u00e4t\u00e4\u00e4n is\u00e4nt\u00e4tiedostoon viel\u00e4 alidomainit joita halutaan k\u00e4ytt\u00e4\u00e4. nano \/etc\/hosts \u00a0178.55.172.151 lassinsivut.eu\u00a0\u00a0 cloud.lassinsivut posti.lassinsivut.eu Jos sinulla ei ole kiinte\u00e4\u00e4 ip-osoitetta, tee t\u00e4ss\u00e4 muodossa: 192.168.101.133 lassinsivut.eu 192.168.101.134 cloud.lassinsivut.eu 192.168.101.135 posti.lassinsivut.eu Asennetaan viel\u00e4 php. T\u00e4t\u00e4 ei ole pakko asentaa, mutta sille on monesti tulevaisuudessa tarvetta. apt install apt-transport-https lsb-release ca-certificates apt install wget apt-get install gnupg apt install software-properties-common ca-certificates lsb-release apt-transport-https sh -c &#8217;echo &#8221;deb https:\/\/packages.sury.org\/php\/ $(lsb_release -sc) main&#8221; &gt; \/etc\/apt\/sources.list.d\/php.list&#8217; wget https:\/\/packages.sury.org\/php\/apt.gpg apt-key add apt.gpg apt-get update SUOSITTELEN K\u00c4YTT\u00c4M\u00c4\u00c4N UUSINTA PHP VERSIOTA. (Ohjeen tekohetkell\u00e4 8.2) apt install apache2 php7.4 libapache2-mod-php7.4 php7.4-common php7.4-mbstring php7.4-xmlrpc php7.4-soap php7.4-gd php7.4-xml php7.4-intl php7.4-mysql php7.4-cli php7.4-ldap php7.4-zip php7.4-curl N\u00e4hd\u00e4\u00e4n php versio sek\u00e4 onko asennus onnistunut. php-v Luodaan proxy Muokataan aikaisemmin luotua proxy konfigurointi tiedostoa ja tehd\u00e4\u00e4n alidomainien konfigurointi sinne. \/etc\/apache2\/sites-enabled\/reverseproxy.conf Seuraavaksi lis\u00e4t\u00e4\u00e4n alidomainien niinsanotut &#8221;blockit&#8221;. Niihin m\u00e4\u00e4ritell\u00e4\u00e4n ett\u00e4 kyseess\u00e4 on reverse proxy, mik\u00e4 paikallinen ip-osoite ohjataan siihen, mik\u00e4 alidomain sek\u00e4 tarvittaessa uudelleenohjaus www tai ilman https ssl suohaukseen. Ssl suojaus m\u00e4\u00e4ritell\u00e4\u00e4n alempana. &lt;VirtualHost *:80&gt;ProxyPreserveHost OnProxyPass \/ http:\/\/192.168.101.133:80\/ProxyPassReverse \/ http:\/\/192.168.101.133:80\/ServerName lassinsivut.euServerAlias www.lassinsivut.eu RewriteEngine onRedirect permanent \/ https:\/\/lassinsivut.eu RewriteCond %{SERVER_NAME} =lassinsivut.eu [OR]RewriteCond %{SERVER_NAME} =www.lassinsivut.euRewriteRule ^ https:\/\/%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]&lt;\/VirtualHost&gt; &lt;VirtualHost *:80&gt;ProxyPreserveHost OnProxyPass \/ http:\/\/192.168.101.134:80\/ProxyPassReverse \/ http:\/\/192.168.101.134:80\/ServerName cloud.lassinsivut.euServerAlias www.cloud.lassinsivut.eu RewriteEngine onRedirect permanent \/ http:\/\/cloud.lassinsivut.eu RewriteCond %{SERVER_NAME} =cloud.lassinsivut.eu [OR]RewriteCond %{SERVER_NAME} =www.cloud.lassinsivut.euRewriteRule ^ https:\/\/%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]&lt;\/VirtualHost&gt; Kirjoita nyt selaimeesi domainisi sek\u00e4 valitut alidomainit, ne ohjaavat Nyt kirjoitetaan selaimeen omat domainit ja huomataan ett\u00e4 siel\u00e4 tulee oikeat palvelimet vastaa, mutta ongelmana on ett\u00e4 yhteys ei ole suojattu ja salattu. Tarvitaan siis ssl sertifikaatti asennettua. Certbot ssl Asennetaan ssl t\u00e4m\u00e4 suojaa sek\u00e4 salaa kaiken liikenteen sinun ja palvelimen v\u00e4lill\u00e4. Mahdollista my\u00f6s luoda ssl wildfire, siin\u00e4 sinulla on vain yksi sertifikaatti jokaisen alidomainin sijasta. T\u00e4m\u00e4 voi tulla hy\u00f6dylliseksi etenkin kuin eri domaineja sek\u00e4 alidomaineja alkaa olemaan eritt\u00e4in paljon. T\u00e4ss\u00e4 kuitenkin asennan normaalin sertifikaatin jokaiselle alidomainille jotta yksinkertaisyys pysyy. apt install python3-certbot-apache certbot -d www.lassinsivut.eu -d lassinsivut.eu T\u00e4ytet\u00e4\u00e4n tiedot joita certbot kysyy. certbot -d www.cloud.lassinsivut.eu -d cloud.lassinsivut.eu Tarvittaessa sertifikaatin voi uusia: certbot &#8211;force-renewal Annetaan listasta domainit jotka haluat uusia. Lopuski K\u00e4ynnistet\u00e4\u00e4n apache uudestaan systemctl restart apache2 Jotta reverse proxyssa saadaan cert botti toimimaan, t\u00f6ytyy meid\u00e4n muuttaa taaas apachen virtualhost file\u00e4. nano \/etc\/apache2\/sites-enabled\/reverseproxy.conf Viimeisen\u00e4 automatisoidaan sertifikaatin uusiminen, normaalisti se t\u00e4ytyy uusi aina 30 p\u00e4iv\u00e4n v\u00e4lein. T\u00e4m\u00e4 onnistuu kuitenkin helposti Linuxin cron ohjelmalla. crontab -e Lis\u00e4t\u00e4\u00e4n loppuun seuraava m\u00e4\u00e4ritys jossa certbot uusii kaikki sertifikaatit ja k\u00e4ynnist\u00e4\u00e4 apachen viikon v\u00e4lein maanantaina n.klo 5am. 0 5 * * 1 certbot renew &#8211;force-renewal &amp;&amp; systemctl restart apache2 &lt;VirtualHost *:443&gt;ServerName lassinsivut.euServerAlias www.lassinsivut.eu SSLEngine OnSSLProxyEngine OnRedirect \/ https:\/\/lassinsivut.euProxyRequests OffProxyPreserveHost OnProxyPass \/ http:\/\/192.168.101.133:80\/ProxyPassReverse \/ http:\/\/192.168.101.133:80\/ Include \/etc\/letsencrypt\/options-ssl-apache.confSSLCertificateFile \/etc\/letsencrypt\/live\/www.lassinsivut.eu\/fullchain.pemSSLCertificateKeyFile \/etc\/letsencrypt\/live\/www.lassinsivut.eu\/privkey.pem&lt;\/VirtualHost&gt; &lt;VirtualHost *:443&gt;ServerName cloud.lassinsivut.euServerAlias www.cloud.lassinsivut.eu SSLEngine OnSSLProxyEngine OnRedirect \/ https:\/\/cloud.lassinsivut.euProxyRequests OffProxyPreserveHost OnProxyPass \/ http:\/\/192.168.101.134:80\/ProxyPassReverse \/ http:\/\/192.168.101.134:80\/ Include \/etc\/letsencrypt\/options-ssl-apache.confSSLCertificateFile \/etc\/letsencrypt\/live\/www.cloud.lassinsivut.eu\/fullchain.pemSSLCertificateKeyFile \/etc\/letsencrypt\/live\/www.cloud.lassinsivut.eu\/privkey.pem&lt;\/VirtualHost&gt; Ongelma php kanssa Olen huomannut ett\u00e4 tietyt php sovellukset eiv\u00e4t toimi tuon proxy konfiguraation kanssa. T\u00e4m\u00e4 konfiguraatio on minulla toiminut ja korjannut asian jos tuo yll\u00e4 mainittu ei toimi. &lt;VirtualHost *:80&gt;ServerName lassinsivut.euServerAlias www.lassinsivut.euRewriteEngine onRewriteCond %{REQUEST_METHOD} ^(TRACE|TRACK)RewriteRule .* &#8211; [F]Redirect \/ https:\/\/lassinsivut.eu\/&lt;\/VirtualHost&gt; &lt;VirtualHost *:443&gt;ServerName lassinsivut.euServerAlias www.lassinsivut.euSSLEngine OnSSLProxyEngine OnSSLProxyVerify noneSSLProxyCheckPeerCN offSSLProxyCheckPeerExpire off SSLCertificateFile \/etc\/letsencrypt\/live\/lassinsivut.eu\/fullchain.pemSSLCertificateKeyFile \/etc\/letsencrypt\/live\/lassinsivut.eu\/privkey.pem ProxyPreserveHost OnProxyPass \/ https:\/\/192.168.101.133:443\/ProxyPassReverse \/ https:\/\/192.168.101.133:443\/&lt;\/VirtualHost&gt;","og_url":"https:\/\/lassinsivut.eu\/en\/reverse-proxy\/","og_site_name":"Lassin kotisivut","article_published_time":"2022-11-01T13:29:46+00:00","article_modified_time":"2023-03-29T18:24:24+00:00","og_image":[{"width":853,"height":480,"url":"https:\/\/lassinsivut.eu\/wp-content\/uploads\/2022\/11\/image-35.png","type":"image\/png"}],"author":"lassi","twitter_card":"summary_large_image","twitter_misc":{"Written by":"lassi","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/lassinsivut.eu\/reverse-proxy\/#article","isPartOf":{"@id":"https:\/\/lassinsivut.eu\/reverse-proxy\/"},"author":{"name":"lassi","@id":"https:\/\/lassinsivut.eu\/#\/schema\/person\/9246ef62dc4013651f8657d79fe2ef58"},"headline":"Debian reverse proxy verkkopalvelimelle","datePublished":"2022-11-01T13:29:46+00:00","dateModified":"2023-03-29T18:24:24+00:00","mainEntityOfPage":{"@id":"https:\/\/lassinsivut.eu\/reverse-proxy\/"},"wordCount":1017,"publisher":{"@id":"https:\/\/lassinsivut.eu\/#\/schema\/person\/9246ef62dc4013651f8657d79fe2ef58"},"image":{"@id":"https:\/\/lassinsivut.eu\/reverse-proxy\/#primaryimage"},"thumbnailUrl":"https:\/\/lassinsivut.eu\/wp-content\/uploads\/2022\/11\/image-35.png","articleSection":["Linux","Palvelin"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/lassinsivut.eu\/reverse-proxy\/","url":"https:\/\/lassinsivut.eu\/reverse-proxy\/","name":"Debian reverse proxy verkkopalvelimelle - Lassin kotisivut","isPartOf":{"@id":"https:\/\/lassinsivut.eu\/#website"},"primaryImageOfPage":{"@id":"https:\/\/lassinsivut.eu\/reverse-proxy\/#primaryimage"},"image":{"@id":"https:\/\/lassinsivut.eu\/reverse-proxy\/#primaryimage"},"thumbnailUrl":"https:\/\/lassinsivut.eu\/wp-content\/uploads\/2022\/11\/image-35.png","datePublished":"2022-11-01T13:29:46+00:00","dateModified":"2023-03-29T18:24:24+00:00","breadcrumb":{"@id":"https:\/\/lassinsivut.eu\/reverse-proxy\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/lassinsivut.eu\/reverse-proxy\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/lassinsivut.eu\/reverse-proxy\/#primaryimage","url":"https:\/\/lassinsivut.eu\/wp-content\/uploads\/2022\/11\/image-35.png","contentUrl":"https:\/\/lassinsivut.eu\/wp-content\/uploads\/2022\/11\/image-35.png","width":853,"height":480},{"@type":"BreadcrumbList","@id":"https:\/\/lassinsivut.eu\/reverse-proxy\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/lassinsivut.eu\/"},{"@type":"ListItem","position":2,"name":"Debian reverse proxy verkkopalvelimelle"}]},{"@type":"WebSite","@id":"https:\/\/lassinsivut.eu\/#website","url":"https:\/\/lassinsivut.eu\/","name":"Lassi's homepage","description":"Blogi t\u00e4ynn\u00e4 tietotekniikan juttuja, tervetuloa!","publisher":{"@id":"https:\/\/lassinsivut.eu\/#\/schema\/person\/9246ef62dc4013651f8657d79fe2ef58"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/lassinsivut.eu\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/lassinsivut.eu\/#\/schema\/person\/9246ef62dc4013651f8657d79fe2ef58","name":"lassi","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/5e227bfe60b98fd4b60c357bafc3f3c3b16fdee80c778359dab94e7ed3a53e6a?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/5e227bfe60b98fd4b60c357bafc3f3c3b16fdee80c778359dab94e7ed3a53e6a?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/5e227bfe60b98fd4b60c357bafc3f3c3b16fdee80c778359dab94e7ed3a53e6a?s=96&d=mm&r=g","caption":"lassi"},"logo":{"@id":"https:\/\/secure.gravatar.com\/avatar\/5e227bfe60b98fd4b60c357bafc3f3c3b16fdee80c778359dab94e7ed3a53e6a?s=96&d=mm&r=g"},"sameAs":["https:\/\/lassinsivut.eu"],"url":"https:\/\/lassinsivut.eu\/en\/author\/lassi\/"}]}},"jetpack_featured_media_url":"https:\/\/lassinsivut.eu\/wp-content\/uploads\/2022\/11\/image-35.png","_links":{"self":[{"href":"https:\/\/lassinsivut.eu\/en\/wp-json\/wp\/v2\/posts\/1224","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lassinsivut.eu\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/lassinsivut.eu\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/lassinsivut.eu\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/lassinsivut.eu\/en\/wp-json\/wp\/v2\/comments?post=1224"}],"version-history":[{"count":84,"href":"https:\/\/lassinsivut.eu\/en\/wp-json\/wp\/v2\/posts\/1224\/revisions"}],"predecessor-version":[{"id":2947,"href":"https:\/\/lassinsivut.eu\/en\/wp-json\/wp\/v2\/posts\/1224\/revisions\/2947"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/lassinsivut.eu\/en\/wp-json\/wp\/v2\/media\/1358"}],"wp:attachment":[{"href":"https:\/\/lassinsivut.eu\/en\/wp-json\/wp\/v2\/media?parent=1224"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/lassinsivut.eu\/en\/wp-json\/wp\/v2\/categories?post=1224"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/lassinsivut.eu\/en\/wp-json\/wp\/v2\/tags?post=1224"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}