Added VPN fix and welcome email redo
This commit is contained in:
parent
66383cd8be
commit
5b4d0344c8
209
lib/functions.sh
209
lib/functions.sh
@ -180,6 +180,215 @@ start_service() {
|
||||
}
|
||||
print_details() {
|
||||
cat > /federated/apps/mail/data/root/certs/mailfile <<EOF
|
||||
Dear Federated Customer,
|
||||
|
||||
Please read this note in its entirety since it has some important information for you to get the best use
|
||||
out of your Federated Core. If you ever get stuck for whatever reason, please reach out to us for support:
|
||||
|
||||
Website: https://support.federated.computer
|
||||
Phone: 415-779-5431
|
||||
Email: support@federated.computer
|
||||
|
||||
We are here to help you, the Customer, get the most out of your Federated Core.
|
||||
|
||||
All documentation for your Federated Core can be found at https://documentation.federated.computer.
|
||||
There you'll find tips for how to use your Core and the various open source applications bundled with
|
||||
your Core.
|
||||
|
||||
The information in this document is for the Admin User only. See the documentation pages for
|
||||
information pertinent to users.
|
||||
|
||||
Here are some quick pointers...
|
||||
|
||||
Admin User
|
||||
|
||||
There is an "admin" or administrative use that has access to everything on your Federated Core.
|
||||
Here are the credentials for that user.
|
||||
the credentials for that user.
|
||||
|
||||
Username = "admin@{domain.com}"
|
||||
Password = "{password}"
|
||||
|
||||
You should log into "Panel" (see next section) and change the password.
|
||||
|
||||
Panel: https://panel.{domain.com)
|
||||
|
||||
Your control panel for users for most Federated Core apps and services is here: https://panel.{domain.com}.
|
||||
|
||||
You will log in with the admin user and, then change the password (and ideally, save this
|
||||
password in a safe place for later reference).
|
||||
|
||||
You can also use Panel to create new user accounts for your team. You are able to give certain users
|
||||
administrative privileges, but please be cautious.
|
||||
|
||||
Additional documentation about the Panel service can be found at
|
||||
https://documentation.federated.computer/docs/core_applications/panel.
|
||||
|
||||
Username: admin
|
||||
Password: as given above
|
||||
|
||||
Email
|
||||
|
||||
Your email server has the following settings you can use to configure mobile and desktop email clients.
|
||||
Note: Nextcloud (next section) has a built-in web email client.
|
||||
|
||||
SMTP: Server is "mail.{domain.com}" and the port is "465".
|
||||
IMAP: Server is "mail.{domain.com}" and the port is "993".
|
||||
|
||||
The user and password for the email service is the full email address and password as assigned in Panel
|
||||
(see above). Example: rupert@federated.computer, 56tasty23.
|
||||
|
||||
Nextcloud: https://nextcloud.{domain.com}
|
||||
|
||||
The Nextcloud suite (replacing Google Workplace) provides apps and services covering mail, calendar,
|
||||
contacts, notes, tasks, files, word processing, spreadsheets, slides, project management (deck),
|
||||
bookmarks, forms, team talk, pictures, and an activity monitor. The user and password for the Nextcloud
|
||||
service is the full email address and password as assigned in Panel (see above). Example:
|
||||
rupert@federated.computer, 56tasty23.
|
||||
|
||||
There are a number of additional clients for mobile and desktop that work with Nextcloud. Please see
|
||||
https://documentation.federated.computer/docs/core_applications/nextcloud for more information and
|
||||
other documentation.
|
||||
|
||||
Username: admin@domain.com
|
||||
Password: As given above
|
||||
|
||||
Jitsi: https://jitsi.{domain.com}
|
||||
|
||||
Jitsi (your Zoom replacement) is a wonderful video conferencing solution. We have tuned Jitsi so that
|
||||
your Core can handle video conferences up to 8 people. NOTE, at this time the user and password for
|
||||
the Jitsi service is the user name ALONE and password as assigned in Panel (see above).
|
||||
Example: rupert, 56tasty23.
|
||||
|
||||
There are a number of mobile and desktop clients available to use with the Jitsi service. Please see
|
||||
https://documentation.federated.computer/docs/core_applications/jitsi for more information and other
|
||||
documentation.
|
||||
|
||||
User administration is done in Panel.
|
||||
|
||||
Element: https://element.{domain.com}
|
||||
|
||||
Element (a Slack replacement) provides you the ability to chat and communicate in real time with those
|
||||
on your team and outside of the team.
|
||||
|
||||
There are a number of mobile and desktop clients available to use with the Element service. Please see
|
||||
https://documentation.federated.computer/docs/core_applications/element for more information and
|
||||
other documentation.
|
||||
|
||||
There are three services that do not use panel for user creation and management. This is for various
|
||||
reasons either based on the constraints for the current application, or so that you can share the system
|
||||
easily with users outside your team without giving access to other parts of your system.
|
||||
|
||||
User administration is done in Panel.
|
||||
|
||||
Listmonk: https://listmonk.{domain.com}
|
||||
|
||||
Listmonk is a replacement for Mailchimp. You can set up and manage the email lists used to send out
|
||||
marketing messages. Listmonk is a single-user system and the user name is "listmonk@{domain.com}"
|
||||
and the password is {password}. For more information, please see the documentation
|
||||
https://documentation.federated.computer/docs/core_applications/listmonk.
|
||||
|
||||
There is only one user for Listmonk:
|
||||
|
||||
Listmonk Admin User: listmonk
|
||||
Listmonk Admin Password: {}
|
||||
|
||||
Baserow: https://baserow.{domain.com}
|
||||
|
||||
Baserow (an Airtable replacement) allows you to create customized databases without writing any code.
|
||||
It's an amazing product. The user authentication for Baserow is separate from Federated Core. To set up
|
||||
the service, log in as your "admin@{domain.com}" user with the correct password. You invite other users
|
||||
to Baserow within the service. For more information, please see the documentation
|
||||
https://documentation.federated.computer/docs/core_applications/baserow.
|
||||
|
||||
User administration is done in Baserow, but you set up users using the admin user given above.
|
||||
|
||||
Vaultwaden: https://vaultwarden.{domain.com}
|
||||
|
||||
Vaultwarden is a password manager. The user authentication for Vaultwarden is separate from Federated
|
||||
Core. To set up the service, create an account as your "admin@{your_domain.com}" user with the
|
||||
password for the "admin user". You invite other users to Vaultwarden within the service itself. For more
|
||||
information, please see the documentation
|
||||
https://documentation.federated.computer/docs/core_applications/vaultwarden.
|
||||
|
||||
User administration is done in Vaultwarden, but you set up users using the admin user created above.
|
||||
|
||||
Gitea: https://gitea.{domain.com}
|
||||
|
||||
Gitea is a code repository and management system similar to Github. The user authentication is seperate
|
||||
from Federated Core. To set up the service, log in as your "admin@{your_domain.com}" user with the
|
||||
correct password. You invite other users to Gitea within the service itself. For more information, please
|
||||
see the documentation https://documentation.federated.computer/docs/core_applications/gitea.
|
||||
|
||||
User administration is done in Gitea.
|
||||
|
||||
Gitea Admin User: gitea
|
||||
Gitea Admin Password: as given above
|
||||
|
||||
VPN
|
||||
|
||||
Your core comes with a very powerful VPN solution built using Wireguard. The following information is
|
||||
needed by your users so that they can use the VPN. Please treat this information as a very important
|
||||
secret. There are two important parts of the VPN:
|
||||
|
||||
VPN Interface
|
||||
|
||||
Address = {IP}
|
||||
PrivateKey = {privatekey}
|
||||
ListenPort = 51820
|
||||
DNS = {IP}
|
||||
|
||||
VPN Peer
|
||||
|
||||
PublicKey = {publickey}
|
||||
PresharedKey = {presharedkey}
|
||||
Endpoint = vpn.{domain.com}:51820
|
||||
AllowedIPs = 172.99.0.0/24
|
||||
|
||||
Here is your VPN configuration:
|
||||
|
||||
EOF
|
||||
|
||||
cat /federated/apps/wireguard/data/config/peer1/peer1.conf >> /federated/apps/mail/data/root/certs/mailfile
|
||||
|
||||
cat >> /federated/apps/mail/data/root/certs/mailfile <<EOF
|
||||
Additional information about the VPN service can be found at https://documentation.federated.computer/docs/core_applications/vpn.
|
||||
|
||||
PowerDNS: https://powerdns.{domain.com}
|
||||
|
||||
A very powerful tool for managing the DNS of your domain. Your Federated Core has a number of sub-
|
||||
domains pre-configured (examples: mail.domain.com, jitsi.domain.com, etc.) But if you need another
|
||||
sub-domain to connect your domain to a service outside your Federated Core, use PowerDNS.
|
||||
|
||||
Additional information about the PowerDNS service can be found at
|
||||
https://documentation.federated.computer/docs/core_applications/powerdns.
|
||||
|
||||
Only the admin user has access to this service.
|
||||
|
||||
Username: admin
|
||||
Password: as given above
|
||||
|
||||
Thanks and Additional Support
|
||||
|
||||
Thank you for your support of Federated. We really appreciate it and hope you have a very successful
|
||||
time with Federated Core.
|
||||
|
||||
Again, if we can be of any assistance, please don't hesitate to get in touch. Don't hesitate.
|
||||
|
||||
Support: https://support.federated.computer
|
||||
Phone: 415-779-5431
|
||||
Email: support@federated.computer
|
||||
|
||||
It's your computer. Let's make it work for you!
|
||||
EOF
|
||||
|
||||
# Send out e-mail from mail container with details
|
||||
docker exec -it mail bash -c "mail -r admin@$DOMAIN -s \"Welcome to Federated\" admin@$DOMAIN < /root/certs/mailfile"
|
||||
cat /federated/apps/mail/data/root/certs/mailfile
|
||||
rm /federated/apps/mail/data/root/certs/mailfile
|
||||
}
|
||||
print_details_old() {
|
||||
cat > /federated/apps/mail/data/root/certs/mailfile <<EOF
|
||||
Panel: User Management
|
||||
https://panel.$DOMAIN
|
||||
|
||||
|
@ -55,10 +55,35 @@ ALLOWEDIPS=172.99.0.0/24
|
||||
LOG_CONFS=true
|
||||
EOF
|
||||
chmod 600 /federated/apps/wireguard/.env
|
||||
|
||||
# Create the A records for domain
|
||||
for i in ns1 ns2 pdnsadmin powerdns traefik mail www computer panel nextcloud collabora jitsi matrix element listmonk vaultwarden vpn wireguard baserow gitea blog documentation; do
|
||||
|
||||
cat /federated/apps/wireguard/data/config/coredns/Corefile <<EOF
|
||||
. {
|
||||
hosts {
|
||||
172.99.0.12 powerdns.$DOMAIN
|
||||
172.99.0.13 traefik.$DOMAIN
|
||||
172.99.0.23 panel.$DOMAIN
|
||||
172.99.0.18 nextcloud.$DOMAIN
|
||||
172.99.0.21 listmonk.$DOMAIN
|
||||
172.99.0.22 vaultwarden.$DOMAIN
|
||||
172.99.0.25 jitsi.$DOMAIN
|
||||
172.99.0.20 element.$DOMAIN
|
||||
172.99.0.29 baserow.$DOMAIN
|
||||
172.99.0.30 gitea.$DOMAIN
|
||||
fallthrough
|
||||
}
|
||||
loop
|
||||
health
|
||||
forward . /etc/resolv.conf
|
||||
}
|
||||
EOF
|
||||
|
||||
kill -9 $SPINPID &> /dev/null
|
||||
echo -ne "done."
|
||||
}
|
||||
|
||||
start_wireguard() {
|
||||
# Grab the container IP from docker-compose above
|
||||
SERVICE_IP=`grep ipv4_address /federated/apps/wireguard/docker-compose.yml | awk '{ print $2 }'`
|
||||
|
Loading…
x
Reference in New Issue
Block a user