├── README.md ├── index.html └── nginx.conf /README.md: -------------------------------------------------------------------------------- 1 | # Homelab Front Page 2 | Code and notes used to create my homelab front page 3 | 4 | I will try to keep these updated and hopefully they help someone out. They are a little sanitized but not by much. 5 | -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | My Site 5 | 38 | 39 | 40 | 43 | 44 | 56 | 57 |
58 |
59 | 62 |
63 | 66 | 67 |
68 |
69 | 70 | 87 | 88 | 89 | 90 | -------------------------------------------------------------------------------- /nginx.conf: -------------------------------------------------------------------------------- 1 | 2 | #user nobody; 3 | worker_processes 1; 4 | 5 | #error_log logs/error.log; 6 | #error_log logs/error.log notice; 7 | #error_log logs/error.log info; 8 | 9 | #pid logs/nginx.pid; 10 | 11 | 12 | events { 13 | worker_connections 1024; 14 | } 15 | 16 | 17 | http { 18 | include mime.types; 19 | default_type application/octet-stream; 20 | 21 | #log_format main '$remote_addr - $remote_user [$time_local] "$request" ' 22 | # '$status $body_bytes_sent "$http_referer" ' 23 | # '"$http_user_agent" "$http_x_forwarded_for"'; 24 | 25 | #access_log logs/access.log main; 26 | 27 | sendfile on; 28 | #tcp_nopush on; 29 | 30 | #keepalive_timeout 0; 31 | keepalive_timeout 65; 32 | 33 | #gzip on; 34 | 35 | server { 36 | listen 80; 37 | server_name myserver.com, 192.168.1.24; 38 | 39 | location / { 40 | } 41 | location /htpc { 42 | proxy_pass http://192.168.1.24:8085/htpc; 43 | } 44 | location /nzbget { 45 | proxy_pass http://192.168.1.24:8001; 46 | proxy_set_header Host $host; 47 | proxy_set_header X-Real-IP $remote_addr; 48 | proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 49 | #communication error for external (Invalid Status: 403) 50 | #work in progress 51 | } 52 | location /sonarr { 53 | proxy_pass http://192.168.1.24:8002/sonarr; 54 | proxy_set_header Host $host; 55 | proxy_set_header X-Real-IP $remote_addr; 56 | proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 57 | } 58 | location /couchpotato { 59 | proxy_pass http://192.168.1.24:8003/couchpotato; 60 | proxy_set_header Host $host; 61 | proxy_set_header X-Real-IP $remote_addr; 62 | proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 63 | proxy_set_header Host localhost:8003; 64 | proxy_redirect default; 65 | } 66 | location /headphones { 67 | proxy_pass http://192.168.1.24:8004/headphones; 68 | } 69 | location /plex/ { 70 | proxy_pass http://192.168.1.25:32400/web/; 71 | proxy_buffering off; 72 | proxy_http_version 1.1; 73 | proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 74 | proxy_set_header Upgrade $http_upgrade; 75 | proxy_set_header Connection $http_connection; 76 | proxy_cookie_path /web/ /plex/; 77 | #proxy_set_header Host $host; 78 | #proxy_set_header X-Real-IP $remote_addr; 79 | #proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 80 | #blank page external 81 | #work in progress 82 | } 83 | location /plexrequests { 84 | proxy_pass http://192.168.1.25:3000; 85 | proxy_set_header Host $host; 86 | proxy_set_header X-Real-IP $remote_addr; 87 | proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 88 | #blank page for internal/external 89 | #work in progess 90 | } 91 | location /plexwatchweb { 92 | proxy_pass http://192.168.1.25/plexwatchweb; 93 | #images broken from external 94 | #work in progress 95 | } 96 | location /prtg { 97 | proxy_pass httpS://192.168.1.30; 98 | proxy_set_header Host $host; 99 | proxy_set_header X-Real-IP $remote_addr; 100 | proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 101 | #not found external 102 | #work in progress 103 | } 104 | 105 | #charset koi8-r; 106 | 107 | #access_log logs/host.access.log main; 108 | 109 | #error_page 404 /404.html; 110 | 111 | # redirect server error pages to the static page /50x.html 112 | # 113 | error_page 500 502 503 504 /50x.html; 114 | location = /50x.html { 115 | root html; 116 | } 117 | 118 | # proxy the PHP scripts to Apache listening on 127.0.0.1:80 119 | # 120 | #location ~ \.php$ { 121 | # proxy_pass http://127.0.0.1; 122 | #} 123 | 124 | # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 125 | # 126 | #location ~ \.php$ { 127 | # root html; 128 | # fastcgi_pass 127.0.0.1:9000; 129 | # fastcgi_index index.php; 130 | # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; 131 | # include fastcgi_params; 132 | #} 133 | 134 | # deny access to .htaccess files, if Apache's document root 135 | # concurs with nginx's one 136 | # 137 | #location ~ /\.ht { 138 | # deny all; 139 | #} 140 | } 141 | 142 | 143 | # another virtual host using mix of IP-, name-, and port-based configuration 144 | # 145 | #server { 146 | # listen 8000; 147 | # listen somename:8080; 148 | # server_name somename alias another.alias; 149 | 150 | # location / { 151 | # root html; 152 | # index index.html index.htm; 153 | # } 154 | #} 155 | 156 | 157 | # HTTPS server 158 | # 159 | #server { 160 | # listen 443 ssl; 161 | # server_name localhost; 162 | 163 | # ssl_certificate cert.pem; 164 | # ssl_certificate_key cert.key; 165 | 166 | # ssl_session_cache shared:SSL:1m; 167 | # ssl_session_timeout 5m; 168 | 169 | # ssl_ciphers HIGH:!aNULL:!MD5; 170 | # ssl_prefer_server_ciphers on; 171 | 172 | # location / { 173 | # root html; 174 | # index index.html index.htm; 175 | # } 176 | #} 177 | #server { 178 | #listen 443 ssl; 179 | 180 | #root html; 181 | #server_name myserver.com, 192.168.1.24; 182 | 183 | #ssl_certificate /nginx-1.8.0/ssl/myserver.crt; 184 | #ssl_certificate_key /nginx-1.8.0/ssl/newprivkey.key; 185 | 186 | ##enables all versions of TLS, but not SSLv2 or 3 which are weak and now deprecated. 187 | #ssl_protocols TLSv1 TLSv1.1 TLSv1.2; 188 | 189 | ##Disables all weak ciphers 190 | #ssl_ciphers "ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:HIGH:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4"; 191 | 192 | #ssl_prefer_server_ciphers on; 193 | 194 | #index index.html index.php; 195 | 196 | #} 197 | } 198 | --------------------------------------------------------------------------------