[{"data":1,"prerenderedAt":537},["ShallowReactive",2],{"navigation":3,"\u002Fblog\u002Ftruenas-nginx-proxy-jail-with-lets-encrypt-for-your-nextcloud":173,"\u002Fblog\u002Ftruenas-nginx-proxy-jail-with-lets-encrypt-for-your-nextcloud-surround":532},[4],{"title":5,"path":6,"stem":7,"children":8,"page":172},"Blog","\u002Fblog","blog",[9,13,17,21,25,29,33,37,41,45,49,53,57,61,65,69,73,77,81,85,89,93,97,101,105,109,113,117,121,125,129,133,137,141,145,149,153,157,161,165,169],{"title":10,"path":11,"stem":12},"Proxmox Remove Node from Cluster","\u002Fblog\u002Fproxmox-remove-node-from-cluster","blog\u002FProxmox-Remove-Node-from-Cluster",{"title":14,"path":15,"stem":16},"Proxmox Can't Live Migrate without with local disks option","\u002Fblog\u002Fproxmox-cant-live-migrate-without-local-disk-option","blog\u002FProxmox-cant-live-migrate-without-local-disk-option",{"title":18,"path":19,"stem":20},"Sharing large files with Send Firefox for free!","\u002Fblog\u002Fsharing-large-files-with-send-firefox","blog\u002FSharing-large-files-with-send-firefox",{"title":22,"path":23,"stem":24},"Windows Tips and My Favorite Password Manager","\u002Fblog\u002Fwindows-tips-and-my-favorite-password-manager","blog\u002FWindows-Tips-and-My-Favorite-Password-Manager",{"title":26,"path":27,"stem":28},"Add Docker Capabilities to TrueNAS Core","\u002Fblog\u002Fadd-docker-capabilities-to-truenas-core","blog\u002Fadd-docker-capabilities-to-truenas-core",{"title":30,"path":31,"stem":32},"Backup Office 365 OneDrive or SharePoint to TrueNAS","\u002Fblog\u002Fbackup-office-365-onedrive-or-sharepoint-to-truenas","blog\u002Fbackup-office-365-onedrive-or-sharepoint-to-truenas",{"title":34,"path":35,"stem":36},"Backup TrueNAS to the Cloud with Wasabi (S3 Compatible Storage)","\u002Fblog\u002Fbackup-truenas-to-the-cloud-with-wasabi-s3-compatible-storage","blog\u002Fbackup-truenas-to-the-cloud-with-wasabi-s3-compatible-storage",{"title":38,"path":39,"stem":40},"Best Budget Security System 2019","\u002Fblog\u002Fbest-budget-security-system-2019","blog\u002Fbest-budget-security-system-2019",{"title":42,"path":43,"stem":44},"Can AI Be a System Administrator? Fixing a Stuck Windows 11 Upgrade","\u002Fblog\u002Fcan-ai-be-a-system-administrator-fixing-a-stuck-windows-11-upgrade","blog\u002Fcan-ai-be-a-system-administrator-fixing-a-stuck-windows-11-upgrade",{"title":46,"path":47,"stem":48},"Create Windows 10 Virtual Machine on Proxmox","\u002Fblog\u002Fcreate-windows-10-virtual-machine-on-proxmox","blog\u002Fcreate-windows-10-virtual-machine-on-proxmox",{"title":50,"path":51,"stem":52},"Enable Super Fast Search on Server","\u002Fblog\u002Fenable-super-fast-search-on-server","blog\u002Fenable-super-fast-search-on-server",{"title":54,"path":55,"stem":56},"Essential Waterproof Beach Tech","\u002Fblog\u002Fessential-waterproof-beach-tech","blog\u002Fessential-waterproof-beach-tech",{"title":58,"path":59,"stem":60},">-","\u002Fblog\u002Ffree-remote-desktop-access-with-google-chrome-remote-desktop","blog\u002Ffree-remote-desktop-access-with-google-chrome-remote-desktop",{"title":62,"path":63,"stem":64},"FreeNAS can Host Virtual Machines: Using the bhyve Hypervisor from the Web GUI","\u002Fblog\u002Ffreenas-can-host-virtual-machines-using-the-bhyve-hypervisor-from-the-web-gui","blog\u002Ffreenas-can-host-virtual-machines-using-the-bhyve-hypervisor-from-the-web-gui",{"title":66,"path":67,"stem":68},"HAProxy 2.4 Install and Basic Setup On Ubuntu 20.04 LTS","\u002Fblog\u002Fhaproxy-2-4-install-and-basic-setup-on-ubuntu-20-04-lts","blog\u002Fhaproxy-2-4-install-and-basic-setup-on-ubuntu-20-04-lts",{"title":70,"path":71,"stem":72},"How to backup virtual machines to a NAS using NFS","\u002Fblog\u002Fhow-to-backup-virtual-machines-to-a-nas-using-nfs-1","blog\u002Fhow-to-backup-virtual-machines-to-a-nas-using-nfs-1",{"title":74,"path":75,"stem":76},"How to Enable Clipboard History in Windows 10","\u002Fblog\u002Fhow-to-enable-clipboard-history-in-windows-10","blog\u002Fhow-to-enable-clipboard-history-in-windows-10",{"title":78,"path":79,"stem":80},"How To Enable Screensavers On Windows 10","\u002Fblog\u002Fhow-to-enable-screensavers-on-windows-10","blog\u002Fhow-to-enable-screensavers-on-windows-10",{"title":82,"path":83,"stem":84},"How To get started blogging or build a website for free","\u002Fblog\u002Fhow-to-get-started-blogging-or-build-a-website-for-free","blog\u002Fhow-to-get-started-blogging-or-build-a-website-for-free",{"title":86,"path":87,"stem":88},"How to Install OPNSense Firewall?","\u002Fblog\u002Fhow-to-install-opnsense","blog\u002Fhow-to-install-OPNSense",{"title":90,"path":91,"stem":92},"How to Install FreeNAS from ISO","\u002Fblog\u002Fhow-to-install-freenas-from-iso","blog\u002Fhow-to-install-freenas-from-iso",{"title":94,"path":95,"stem":96},"How to Manage Windows Defender Antivirus with PowerShell","\u002Fblog\u002Fhow-to-manage-windows-defender-antivirus-with-powershell","blog\u002Fhow-to-manage-windows-defender-antivirus-with-powershell",{"title":98,"path":99,"stem":100},"How to Schedule Backups with Proxmox on a Local Directory","\u002Fblog\u002Fhow-to-schedule-backups-with-proxmox-on-a-local-directory","blog\u002Fhow-to-schedule-backups-with-proxmox-on-a-local-directory",{"title":102,"path":103,"stem":104},"Installing Docker and Portainer on Proxmox","\u002Fblog\u002Finstalling-docker-and-portainer-on-proxmox","blog\u002Finstalling-docker-and-portainer-on-proxmox",{"title":106,"path":107,"stem":108},"LAMP Stack Install Ubuntu 18 04: Linux Apache MySQL and PHP","\u002Fblog\u002Flamp-stack-install-ubuntu-18-04-linux-apache-mysql-and-php","blog\u002Flamp-stack-install-ubuntu-18-04-linux-apache-mysql-and-php",{"title":110,"path":111,"stem":112},"Microsoft Excel Keyboard Shortcuts","\u002Fblog\u002Fmicrosoft-excel-keyboard-shortcuts","blog\u002Fmicrosoft-excel-keyboard-shortcuts",{"title":114,"path":115,"stem":116},"Microsoft Word Keyboard Shortcuts","\u002Fblog\u002Fmicrosoft-word-keyboard-shortcuts","blog\u002Fmicrosoft-word-keyboard-shortcuts",{"title":118,"path":119,"stem":120},"Multiple Proxmox Hosts With Duplicate Virtual Machine IDs on Shared NFS Storage","\u002Fblog\u002Fmultiple-proxmox-hosts-with-duplicate-virtual-machine-ids-on-shared-nfs-storage","blog\u002Fmultiple-proxmox-hosts-with-duplicate-virtual-machine-ids-on-shared-nfs-storage",{"title":122,"path":123,"stem":124},"OPNSense Setup Multi-LAN, DHCP Static Assignment and More (Part 3)","\u002Fblog\u002Fopnsense-setup-multi-lan-dhcp-static-assignment-and-more-part-3","blog\u002Fopnsense-setup-multi-lan-dhcp-static-assignment-and-more-part-3",{"title":126,"path":127,"stem":128},"Remote Gaming and Video editing with Proxmox GPU passthrough","\u002Fblog\u002Fremote-gaming-and-video-editing-with-proxmox-gpu-passthrough","blog\u002Fremote-gaming-and-video-editing-with-proxmox-gpu-passthrough",{"title":130,"path":131,"stem":132},"Secure Your Nextcloud with HTTPS hosted on TrueNAS 12 Core with Nginx","\u002Fblog\u002Fsecure-your-nextcloud-with-https-hosted-on-truenas-12-core-with-nginx-proxy-manager","blog\u002Fsecure-your-nextcloud-with-https-hosted-on-truenas-12-core-with-nginx-proxy-manager",{"title":134,"path":135,"stem":136},"Setup NextCloud on Ubuntu 18.04 LTS with Apache2, MariaDB and PHP","\u002Fblog\u002Fsetup-nextcloud-on-ubuntu-18-04-lts-with-apache2-mariadb-and-php","blog\u002Fsetup-nextcloud-on-ubuntu-18-04-lts-with-apache2-mariadb-and-php",{"title":138,"path":139,"stem":140},"Setup Wizard and How to Backup OPNSense Firewall (Part 2)","\u002Fblog\u002Fsetup-wizard-and-how-to-backup-opnsense-firewall-part-2","blog\u002Fsetup-wizard-and-how-to-backup-opnsense-firewall-part-2",{"title":142,"path":143,"stem":144},"TrueNAS Nginx Proxy Jail with Let's Encrypt for your NextCloud","\u002Fblog\u002Ftruenas-nginx-proxy-jail-with-lets-encrypt-for-your-nextcloud","blog\u002Ftruenas-nginx-proxy-jail-with-lets-encrypt-for-your-nextcloud",{"title":146,"path":147,"stem":148},"Upgrading FreeNAS 11.3 to TrueNAS 12 Release","\u002Fblog\u002Fupgrading-freenas-11-3-to-truenas-12-release","blog\u002Fupgrading-freenas-11-3-to-truenas-12-release",{"title":150,"path":151,"stem":152},"What Does Secure Website Mean And How To Tell?","\u002Fblog\u002Fwhat-does-secure-website-mean-and-how-to-tell","blog\u002Fwhat-does-secure-website-mean-and-how-to-tell",{"title":154,"path":155,"stem":156},"Windows 10 Quick Tip #1: Customize Your Taskbar","\u002Fblog\u002Fwindows-10-quick-tip-1-customize-your-taskbar","blog\u002Fwindows-10-quick-tip-1-customize-your-taskbar",{"title":158,"path":159,"stem":160},"Windows 10 QuickTip #2 Free Up Disk Drive Space by enabling Storage Sense","\u002Fblog\u002Fwindows-10-quicktip-2-free-up-disk-drive-space-by-enabling-storage-sense","blog\u002Fwindows-10-quicktip-2-free-up-disk-drive-space-by-enabling-storage-sense",{"title":162,"path":163,"stem":164},"Windows 10 QuickTip #4 Backup Your Windows PC for Free with OneDrive","\u002Fblog\u002Fwindows-10-quicktip-4-backup-your-windows-pc-for-free-with-onedrive","blog\u002Fwindows-10-quicktip-4-backup-your-windows-pc-for-free-with-onedrive",{"title":166,"path":167,"stem":168},"Windows 10 QuickTip #5 Zoom in and Zoom out on Your Web Browser","\u002Fblog\u002Fwindows-10-quicktip-5-zoom-in-and-zoom-out-on-your-web-browser","blog\u002Fwindows-10-quicktip-5-zoom-in-and-zoom-out-on-your-web-browser",{"title":58,"path":170,"stem":171},"\u002Fblog\u002Fwindows-10-quicktip-backup-your-windows-pc-for-free-with-google-backup-and-sync","blog\u002Fwindows-10-quicktip-backup-your-windows-pc-for-free-with-google-backup-and-sync",false,{"id":174,"title":142,"author":175,"body":179,"date":524,"description":525,"extension":526,"image":527,"meta":528,"minRead":529,"navigation":482,"path":143,"seo":530,"stem":144,"__hash__":531},"blog\u002Fblog\u002Ftruenas-nginx-proxy-jail-with-lets-encrypt-for-your-nextcloud.md",{"name":176,"avatar":177},"Kevin Stevenson",{"src":178,"alt":176},"\u002Favatar.png",{"type":180,"value":181,"toc":510},"minimark",[182,187,191,196,221,225,239,243,267,271,303,307,330,333,337,352,356,387,394,414,420,438,442,450,456,466,471,476,483,497,500],[183,184,186],"h1",{"id":185},"introduction","Introduction",[188,189,190],"p",{},"What we are going to be doing is creating a low resource FreeBSD Jail used as a docker or container system to host our Nginx Proxy. You could do this same let's encrypt on the actual NextCloud instance. The reason we're doing it this way is because when the jail or plugins update, it can possibly break some customizations and such.",[192,193,195],"h2",{"id":194},"creating-your-jail","Creating your Jail",[197,198,199,203,206,209,212,215,218],"ol",{},[200,201,202],"li",{},"Get logged into your TrueNAS.",[200,204,205],{},"Go to \"Jails\" on the left hand side.",[200,207,208],{},"Add a jail using the \"Add\" button at the top right.",[200,210,211],{},"Give it a name, leave jail type on default, select version, and click next. (We are using version 12.2-RELEASE)",[200,213,214],{},"We are selecting \"DHCP Autoconfigure IPv4\" as ours is temporary but you can set up a static IP here, then click next.",[200,216,217],{},"This will bring you to a summary of what you have selected and then choose submit.",[200,219,220],{},"Select your new jail you created and choose \"Start\".",[192,222,224],{"id":223},"turning-on-ssh","Turning on SSH",[197,226,227,230,233,236],{},[200,228,229],{},"In the TrueNAS, go to \"Services\" tab on the left.",[200,231,232],{},"Scroll down until you find \"SSH\" and click \"Configure\" (Pencil Icon).",[200,234,235],{},"Check \"Log in as Root with Password\".",[200,237,238],{},"Click Save, and turn it on by selecting the slider to run.",[192,240,242],{"id":241},"ssh-into-truenas","SSH into TrueNAS",[197,244,245,253,260],{},[200,246,247,248,252],{},"SSH into the TrueNAS using ",[249,250,251],"code",{},"ssh root@192.168.11.171"," (IP will most likely be different for you. Change accordingly).",[200,254,255,256,259],{},"Run the command ",[249,257,258],{},"iocage list"," to show all of the Jails that are running.",[200,261,262,263,266],{},"To get into the jail, type ",[249,264,265],{},"jexec 1 tcsh"," (You will change the number depending on what jail you are trying to get into from the list).",[192,268,270],{"id":269},"running-updates-and-installs","Running Updates and Installs",[197,272,273,279,286,289,296],{},[200,274,275,276],{},"To update, you will run ",[249,277,278],{},"pkg update",[200,280,281,282,285],{},"For installs, we will run ",[249,283,284],{},"pkg install nginx nano python"," (This will install nginx, nano, and python)",[200,287,288],{},"Type \"Y\" to confirm the installs",[200,290,291,292,295],{},"Input ",[249,293,294],{},"sysrc nginx_enable=yes"," (This tells nginx to start when the Jail does).",[200,297,298,299,302],{},"Type ",[249,300,301],{},"pkg install py38-certbot openssl"," (You can tell which python version to pick by scrolling up a bit until you see the standard python modules. Yours may differ).",[192,304,306],{"id":305},"starting-the-nginx-web-server","Starting the nginx Web Server",[197,308,309,315,321,324],{},[200,310,311,312],{},"Grab the ip by typing ",[249,313,314],{},"ifconfig",[200,316,317,318],{},"Start nginx using ",[249,319,320],{},"service nginx onestart",[200,322,323],{},"Type the IP gotten from step 1 into a web browser. If you see a \"Welcome to nginx\" then it has been successfully installed and is working. Now all it needs is to be configured.",[200,325,326,327],{},"Stopping nginx can be done using ",[249,328,329],{},"service nginx onestop",[188,331,332],{},"You will need to port forward in your router both port 80 and port 443 to the ip address of the nginx jail.",[192,334,336],{"id":335},"cert-setup","Cert Setup",[197,338,339,342,349],{},[200,340,341],{},"You will need to purchase a domain if you do not already have one.",[200,343,344,345,348],{},"After that is done we need to create a cert. We will do this in the SSH client by typing ",[249,346,347],{},"certbot certonly --standalone -d 'Domain'"," (Input your domain name in 'Domain').",[200,350,351],{},"Take note of where your Certificates are located (Should be .pem files)",[192,353,355],{"id":354},"configuring-nginx","Configuring nginx",[197,357,358,369,375,378],{},[200,359,360,361,364,365,368],{},"Get into the config for nginx by going typing ",[249,362,363],{},"cd \u002Fusr\u002Flocal\u002Fetc\u002Fnginx"," then ",[249,366,367],{},"ls"," to show files inside.",[200,370,371,372],{},"We will then use nano to configure nginx. You do this by typing ",[249,373,374],{},"nano nginx.conf",[200,376,377],{},"Scroll through your file until you find server.",[200,379,291,380,383,384],{},[249,381,382],{},"listen      443 ssl;"," underneath ",[249,385,386],{},"listen        80;",[188,388,389],{},[390,391],"img",{"alt":392,"src":393},"listen","\u002Fimages\u002Fblog\u002Fserver_nginx.png",[197,395,397,407],{"start":396},5,[200,398,399,400,403,404],{},"Scroll down to HTTPS server and copy from ",[249,401,402],{},"ssl_certificate cert.pem;"," to ",[249,405,406],{},"ssl_prefer_server_ciphers on;",[200,408,409,410,413],{},"Scroll back up to server and paste that under ",[249,411,412],{},"server_name localhost;"," delete the # from the front.",[188,415,416],{},[390,417],{"alt":418,"src":419},"ssl_certs","\u002Fimages\u002Fblog\u002Fcertificate_nginx.png",[197,421,423,435],{"start":422},7,[200,424,425,426,430,431,434],{},"Grab and copy cert location and paste the entire location where cert.pem is in nano. The location's you copy should look like ",[427,428,429],"em",{},"\u002Fusr\u002Flocal\u002Fetc\u002Fletsencrypt\u002Flive\u002Fgg132.get2.li\u002Ffullchain.pem"," and ",[427,432,433],{},"\u002Fusr\u002Flocal\u002Fetc\u002Fletsencrypt\u002Flive\u002Fgg132.get2.li\u002Fprivkey.pem",".",[200,436,437],{},"Press Ctrl+X to save the configuration.",[192,439,441],{"id":440},"setting-up-nextcloud-instance","Setting up NextCloud Instance",[197,443,444,447],{},[200,445,446],{},"Nano into the nginx.conf file once again and scroll down to Server once again.",[200,448,449],{},"Input the proxy pass. Your location should look similar to this",[188,451,452],{},[390,453],{"alt":454,"src":455},"proxy_pass","\u002Fimages\u002Fblog\u002Flocation_nginx.png",[197,457,459,463],{"start":458},3,[200,460,317,461],{},[249,462,320],{},[200,464,465],{},"Open your domain name in a web browser using https and you should now be able to login to your NextCloud.",[188,467,468],{},[249,469,470],{},"location \u002F { # root   \u002Fusr\u002Flocal\u002Fwww\u002Fnginx; # index index.html index.htm; proxy_pass http:\u002F\u002F192.168.11.171:8282; }",[472,473,475],"h3",{"id":474},"full-video","Full Video",[477,478],"iframe",{"style":479,"src":480,"allow":481,"allowFullScreen":482},"width:100%; aspect-ratio:16\u002F9; border:0; border-radius:0.5rem;","https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FfTruxKi9qbs","accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture",true,[188,484,485,492],{},[486,487,491],"a",{"href":488,"rel":489},"https:\u002F\u002Fphasedlogix.com",[490],"nofollow","Hire US",[486,493,496],{"href":494,"rel":495},"https:\u002F\u002Fwww.buymeacoffee.com\u002Fgetmethegeek",[490],"Buy Me a Coffee",[498,499],"hr",{},[188,501,502],{},[427,503,504,505],{},"This Article has been Republished with Permission from ",[486,506,509],{"href":507,"rel":508},"https:\u002F\u002Fphasedlogix.com\u002Ftruenas-nginx-proxy-jail-with-lets-encrypt-for-your-nextcloud\u002F",[490],"PhasedLogix",{"title":511,"searchDepth":512,"depth":512,"links":513},"",2,[514,515,516,517,518,519,520,521],{"id":194,"depth":512,"text":195},{"id":223,"depth":512,"text":224},{"id":241,"depth":512,"text":242},{"id":269,"depth":512,"text":270},{"id":305,"depth":512,"text":306},{"id":335,"depth":512,"text":336},{"id":354,"depth":512,"text":355},{"id":440,"depth":512,"text":441,"children":522},[523],{"id":474,"depth":458,"text":475},"2021-11-23","Creation of a low resource FreeBSD Jail used as a docker or","md","\u002Fimages\u002Fblog\u002Fnginx-install.jpg",{},4,{"title":142,"description":525},"jffUh2UtXFJwDC_Ij9Ei9BjF6qP5xaKXBy7rSpdY-Mo",[533,535],{"title":138,"path":139,"stem":140,"description":534,"children":-1},"OPNSense is an open-source firewall and routing platform based on",{"title":146,"path":147,"stem":148,"description":536,"children":-1},"This will go over on how to upgrade FreeNAS 11.3 to TrueNAS 12",1789484070734]