Installer TaskServer (taskd) på CentOS 7

TaskWarrior er et open source-tidsstyringsværktøj, der er en forbedring af Todo.txt-applikationen og dens kloner. På grund af det faktum, at den gennemsnitlige person bruger flere enheder/platforme i deres daglige tidsplan, er det afgørende at have muligheden for at have et centraliseret lager, hvor dataene kan tilgås og opdateres fra enhver enhed. Denne vejledning vil fokusere på opsætning af både serveren, kaldet TaskServer (taskd), og klienten, kaldet TaskWarrior (opgave), hvilket giver flere klientenheder mulighed for at få adgang til og udveksle data sikkert.

Den har følgende funktioner:

  • Ubegrænsede opgaver
  • Opgaveprioritering
  • Søgefiltrering
  • Tagging
  • Automatisk synkronisering
  • Automatisk backup
  • Fuld kontrol og privatliv
  • Krypteret kommunikation

Forudsætninger

  • En CentOS 7 x64-serverinstans.
  • En sudo- bruger.
  • Domænenavn pegede på en Vultr-instans ( taskd.example.com )

Trin 1: Opdater systemet

Log ind som din sudo-bruger for at installere EPEL Repository og opdatere systemet som følger:

sudo yum install epel-release -y
sudo yum clean all && sudo yum update -y

Trin 2: Installer RPM Build og værktøjer til bygning

EPEL-lageret indeholder ikke en RPM til TaskServeren (taskd), så vi skal selv bygge det fra kilden til en RPM-pakke.

  1. Installer GCC, Make, RPM Build, udvikling og signeringsværktøjer.

    sudo yum install gcc gcc-c++ make rpmdevtools rpm-sign rpm-build -y
    
  2. Opret en GnuPG-mappe, som vil indeholde de GPG-filer, der er nødvendige for at signere vores RPM.

    mkdir .gnupg
    
  3. Når vi opretter en nøgle, kræver vi entropi i systemet for at randomisere den korrekt. Den rngddæmonen genererer entropien nødvendig fra /dev/urandom. Så lad os installere det nu.

    yum install rngd -y
    
  4. Start rngddæmonen for at generere entropi. Indstillingen -r peger på i /dev/urandomstedet for standarden /dev/hwrng.

    sudo rngd -r /dev/urandom
    
  5. Generer en nøgle. Den --gen-key løsning fortæller gpg at generere nyt nøglepar.

    gpg --gen-key
    
  6. For " Vælg venligst hvilken type nøgle du ønsker: " valgmulighed, vælg " (1) RSA og RSA (standard) " for nøgletypen ved at indtaste 1 og trykke på Retur/Enter- tasten.

  7. For indstillingen " Hvilken nøglestørrelse vil du have? (2048) " skal du vælge standarden ved at trykke på Retur/Enter- tasten.

  8. For " Angiv venligst, hvor længe nøglen skal være gyldig. ", skal du vælge standard ved at trykke på Retur/Enter- tasten.

  9. Indtast y for " Er dette korrekt? (y/N) ", og tryk på Retur/Enter- tasten.

  10. Indtast et navn efter eget valg under " Rigtigt navn: ", og tryk på Retur/Enter- tasten.

  11. Under " E-mailadresse: " skal du indtaste en e-mail-adresse efter eget valg og trykke på Retur/Enter- tasten.

  12. Den Kommentar: sektion kan stå tomt, hvis du ønsker det.

  13. Foretag de nødvendige ændringer, hvis du ikke har indtastet dine oplysninger korrekt. Hvis du er tilfreds med de viste USER-ID- oplysninger, skal du indtaste O (stort bogstav O, ikke nul) og trykke på Retur/Enter- tasten.

  14. GnuPG vil nu bede dig om at oprette og bekræfte en adgangskode til dit nøglepar.

  15. Efter du har indtastet dine adgangskoder, vil dit GnuPG-nøglepar blive oprettet under .gnupgbiblioteket i dit brugerbibliotek.

  16. Kør denne kommando for at vise indholdet af .gnupgmappen. Den skal indeholde følgende mappe private-keys-v1.dog filer pubring.gpg, pubring.gpg~, random_seed, secring.gpg, S.gpg-agent, trustdb.gpg.

    ls -la .gnupg
    
  17. Eksporter det oprettede nøglepar. Indstillingen --export instruerer GnuPG om at eksportere nøgleparret. Den -a valgmulighed instruerer GnuPG til at lave den nøglepar i ASCII rustning format . Erstat " Joe Q. Public " med det navn, du har indtastet, da du oprettede nøgleparret i trin #10 ovenfor. Erstat " jqpublic " med den tekst du vælger.

    gpg --export -a 'Joe Q. Public' > RPM-GPG-KEY-jqpublic
    
  18. Importer nøgleparret til RPM-nøglelageret. Erstat " jqpublic " med den tekst, du valgte i trin #17.

    sudo rpm --import RPM-GPG-KEY-jqpublic
    
  19. Bekræft, at nøgleparret blev tilføjet til RPM-nøglelageret. Indstillingen --q gpg-pubkey forespørger RPM GnuPG nøglelageret. Den % {name} -% {udgave} -% {release} ->% {resumé} \ n viser resultatet i et menneskeligt læsbart format.

    rpm -q gpg-pubkey --qf '%{name}-%{version}-%{release} --> %{summary}\n'
    
  20. Ved at oprette en .rpmmacros file, kan RPM tilpasses til at udføre tildelt adfærd (eksempel: nem automatisk signering af RPM'er). Brug nanoprogrammet til at oprette filen.

    nano .rpmmacros
    
  21. Tilføj derefter følgende tekst nedenfor i .rpmmacrosfilen.

    %_gpg_name  Joe Q. Public
    %_query_all_fmt %%{name}-%%{version}-%%{release}.%%{arch}
    %_signature gpg
    %_topdir %(echo $HOME)/rpmbuild
    
  22. Gem dokumentet ved at indtaste følgende tastaturkombinationer. De CTRL + X nøgler. Derefter S- tasten. Til sidst, Retur/Enter- tasten.

  23. Denne kommando nedenfor opsætter dit RPM-byggemiljø. Dette vil tilføje yderligere makroer til den .rpmmacrosfil, du har oprettet i trin #20, og oprette de nødvendige mapper til at bygge og gemme RPM'er.

    rpmdev-setuptree
    
  24. Kør denne kommando for at vise indholdet af rpmbuild-mappen. Den skal indeholde følgende vejvisere KILDER , RPMS , BUILD , SRPMS og SPECS .

    find rpmbuild
    
  25. Download TaskServer (taskd) kildekoden til rpmbuild/SOURCESbiblioteket.

    wget https://taskwarrior.org/download/taskd-1.1.0.tar.gz -P rpmbuild/SOURCES/
    
  26. Dræb den kørende rgndproces.

    sudo kill -9 rngd
    

Trin 3: Byg TaskServer (taskd) RPM fra kilden

  1. For at kunne bygge en ny RPM fra kilden, skal der oprettes en TaskServer (taskd) SPEC-fil.

    nano rpmbuild/SPECS/taskd.spec
    
  2. Tilføj følgende tekst nedenfor i taskd.specfilen.

    Name:           taskd
    Version:        1.1.0
    Release:        1%{?dist}
    Summary:        Secure server providing multi-user, multi-client access to task data
    Group:          Applications/Productivity
    License:        MIT
    URL:            http://tasktools.org/projects/taskd.html
    Source0:        http://taskwarrior.org/download/%{name}-%{version}.tar.gz
    Source1:        taskd.service
    Source2:        taskd-config
    Source3:        taskd.xml
    
    BuildRequires:  cmake
    BuildRequires:  libuuid-devel
    BuildRequires:  gnutls-devel
    BuildRequires:  shadow-utils
    
    
    %if 0%{?rhel} && 0%{?rhel} <= 6
    # On rhel, we don't need systemd to build.  but we do on centos.        
    # ...just to define some macros
    %else
    BuildRequires:  systemd
    %endif
    
    # For certificate generation        
    Requires:       gnutls-utils
    
    # Systemd requires
    Requires(post):    systemd
    Requires(preun):   systemd
    Requires(postun):  systemd
    
    %description
    The TaskServer is a lightweight, secure server providing multi-user,
    multi-client access to task data.  This allows true syncing between desktop and
    mobile clients.
    
    Users want task list access from multiple devices running software of differing
    sophistication levels to synchronize data seamlessly.  Synchronization requires
    the ability to exchange transactions between devices that may not have
    continuous connectivity, and may not have feature parity.
    
    The TaskServer provides this and builds a framework to go several steps beyond
    merely synchronizing data.
    
    %prep
    %setup -q %{name}-%{version}
    
    %build
    %cmake
    make %{?_smp_mflags}
    
    %install
    make install DESTDIR=%{buildroot}
    
    mkdir -p %{buildroot}%{_sharedstatedir}/taskd/
    
    # Users will keep their keys here, but we copy some helpful scripts too.
    mkdir -p %{buildroot}%{_sysconfdir}/pki/taskd/
    cp -a pki/generate* %{buildroot}%{_sysconfdir}/pki/taskd/.
    
    mkdir -p %{buildroot}%{_localstatedir}/log/taskd/
    
    %if 0%{?rhel} && 0%{?rhel} <= 6
    # EL6 and earlier needs a sysvinit script
    # Also, no firewalld on old EL
    %else
    mkdir -p %{buildroot}%{_unitdir}/
    cp -a %{SOURCE1} %{buildroot}%{_unitdir}/taskd.service
    
    mkdir -p %{buildroot}%{_prefix}/lib/firewalld/services
    cp -a %{SOURCE3} %{buildroot}%{_prefix}/lib/firewalld/services/taskd.xml
    %endif
    
    mkdir -p %{buildroot}%{_sharedstatedir}/taskd/orgs/
    cp -a %{SOURCE2} %{buildroot}%{_sharedstatedir}/taskd/config
    
    rm -r %{buildroot}%{_datadir}/doc/taskd/
    
    %pre
    getent group taskd >/dev/null || groupadd -r taskd
    getent passwd taskd >/dev/null || \
        useradd -r -g taskd -d %{_sharedstatedir}/taskd/ -s /usr/bin/sh \
        -c "Task Server system user" taskd
    exit 0
    
    # Systemd scriptlets
    %if 0%{?rhel} && 0%{?rhel} <= 6
    # No systemd for el6
    %else
    
    %post
    %systemd_post taskd.service
    
    %preun
    %systemd_preun taskd.service
    
    %postun
    %systemd_postun_with_restart taskd.service
    
    %endif
    
    
    %files
    %doc AUTHORS COPYING ChangeLog NEWS README
    %{_bindir}/taskd
    %{_bindir}/taskdctl
    %{_mandir}/man1/taskd.1.*
    %{_mandir}/man1/taskdctl.1.*
    %{_mandir}/man5/taskdrc.5.*
    
    %{_sysconfdir}/pki/taskd/generate*
    
    %dir %attr(0750, taskd, taskd) %{_sysconfdir}/pki/taskd/
    %dir %attr(0750, taskd, taskd) %{_localstatedir}/log/taskd/
    
    %dir %attr(0750, taskd, taskd) %{_sharedstatedir}/taskd/
    %config(noreplace) %attr(0644, taskd, taskd) %{_sharedstatedir}/taskd/config
    %dir %attr(0750, taskd, taskd) %{_sharedstatedir}/taskd/orgs/
    
    %if 0%{?rhel} && 0%{?rhel} <= 6
    # No sysvinit files for el6
    %else
    %{_unitdir}/taskd.service
    %{_prefix}/lib/firewalld/services/taskd.xml
    %endif
    
    %changelog
    * Thu Aug 17 2017 Jarrett Graham <[email protected]> - 1.1.0
    - Initial packaging.
    
  3. The RPM also requires three additional files that must be created in the rpmbuild/SOURCES directory. Use the nano program to create the taskd-config file.

    nano rpmbuild/SOURCES/taskd-config
    
  4. Add the following text below into the taskd-config file.

    # taskd configuration file
    confirmation=1
    verbose=1
    ip.log=on
    extensions=/usr/libexec/taskd
    queue.size=10
    request.limit=1048576
    server=0.0.0.0:53589
    root=/var/lib/taskd
    log=/var/log/taskd/taskd.log
    pid.file=/var/run/taskd.pid
    ca.cert=/etc/pki/taskd/ca.cert.pem
    server.cert=/etc/pki/taskd/server.cert.pem
    server.key=/etc/pki/taskd/server.key.pem
    server.crl=/etc/pki/taskd/server.crl.pem
    
  5. Use the nano program to create the taskd.service file.

    nano rpmbuild/SOURCES/taskd.service
    
  6. Add the following text below into the taskd.service file.

    [Unit]
    Description=Secure server providing multi-user, multi-client access to task data
    After=network.target
    Documentation=https://tasktools.org/projects/taskd.html
    
    [Service]
    ExecStart=/usr/bin/taskd server --data /var/lib/taskd
    Type=simple
    User=taskd
    Group=taskd
    
    [Install]
    WantedBy=multi-user.target
    
  7. Use the nano program to create the taskd.xml file.

    nano rpmbuild/SOURCES/taskd.xml
    
  8. Add the following text below into the taskd.xml file.

    <?xml version="1.0" encoding="utf-8"?>
    <service>
      <short>Task-warrior server</short>
      <description>This option allows you to connect to the task warrior server.</description>
      <port protocol="tcp" port="53589"/>
    </service>
    
  9. In order to build the TaskServer (taskd) RPM, three packages are required for building. Run the command below to install those packages.

    sudo yum install cmake libuuid-devel gnutls-devel gnutls-utils -y
    
  10. Now it is time to build from source and create an RPM for TaskServer (taskd). Run the commands below to get started. It should take less than a minute on a 1x CPU Vultr instance to build the RPMs. Enter the GnuPG password you created in step #14 to sign the RPM when prompted.

    cd rpmbuild/SPECS/
    rpm -ba -sign taskd.spec
    
  11. Install the TaskServer (taskd) RPM.

    cd
    sudo rpm -ivh rpmbuild/RPMS/x86_64/taskd-1.1.0-1.el7.centos.x86_64.rpm
    

Step 4: Configure TaskServer (task)

  1. In order for TaskServer (taskd) to communicate and sync with TaskWarrior (task) clients, you will need to use the generation scripts found under /etc/pki/taskd/ to generate server and client certificates/keys. Elevate to the root user using the command below and change directory to /etc/pki/taskd.

    sudo su -
    cd /etc/pki/taskd/
    
  2. Use the nano program to create a vars file in order to generate a self-signed Root CA.

    nano vars
    

    Add the following text below into the vars file. Change ORGANIZATION, CN, COUNTRY, STATE and LOCALITY to your satisfaction.

    BITS=4096
    EXPIRATION_DAYS=365
    ORGANIZATION="Vultr.com Inc."
    CN=taskd.example.com
    COUNTRY=US
    STATE="New York"
    LOCALITY="New York"
    
  3. Generate the self-signed Root CA, certificate, server key and server revocation list (optional).

    ./generate.ca
    ./generate.server
    ./generate.crl
    

    These commands will create the following files (ca.cert.pem, ca.key.pem, server.cert.pem, server.key.pem and server.crl.pem) inside the /etc/pki/taskd/ directory. In order for TaskServer (taskd) to start, the ownership and permissions on the certificates and keys generated in step #37 must be modified to allow TaskServer (taskd) to access them. Run the commands below to change them.

    chown taskd.taskd ca.cert.pem ca.key.pem server.cert.pem server.crl.pem server.key.pem
    chmod 400 ca.cert.pem ca.key.pem server.cert.pem server.crl.pem server.key.pem
    
  4. Enable and start the TaskServer (taskd) daemon.

    systemctl enable taskd
    systemctl start taskd
    
  5. Open the port in the firewall TaskServer (taskd) runs on.

    firewall-cmd --permanent --zone=public --add-port=53589/tcp
    firewall-cmd --reload
    

    TaskServer (taskd) is now installed and setup on your CentOS 7 instance.

Step 5: Configure TaskWarrior client certificate and key

  1. You must create client certificates and key to encrypt communications between TaskServer (taskd) and TaskWarrior (task). Run the command below to generate a client certificate and key. Replace NAME with a name you can easily recognize for your client.

    generate.client NAME
    

    This command will create the following files (NAME.cert.pem, NAME.key.pem) inside of the /etc/pki/taskd/ directory.

  2. Copy the following files to your user directory, change the ownership and permissions. Substitute joeqpublic below with your actual username directory.

    cp ca.cert.pem NAME.cert.pem NAME.key.pem /home/joeqpublic/
    chown joeqpublic.joeqpublic /home/joeqpublic/*.pem
    chmod 400 /home/joeqpublic/*.pem
    
  3. Create a zip archive of the certificates and key.

    zip certficates.zip ca.cert.pem NAME.cert.pem NAME.key.pem
    
  4. Use scp (command line) or WinSCP (GUI frontend for SCP) to download the certificates.zip file from your CentOS instance to your client device (computer/laptop/smartphone).

  5. Drop root-privilegier og udfør resten af ​​dine kommandoer som din almindelige bruger.

    exit
    

    TaskServer (taskd) er nu sat op og klar til, at TaskWarrior (opgave) klienter kan oprette forbindelse.

Trin 6: Opret din første TaskWarrior-gruppe og bruger

  1. For at oprette, slette, ændre og synkronisere dine opgaver skal du bruge en brugerkonto. Men før du kan tilføje brugere, skal du først oprette en organisationsgruppe. Kør kommandoen nedenfor for at oprette din første gruppe. Erstat GROUP med et letgenkendeligt navn.

  2. VIGTIG! Den taskdkommando til at oprette grupper / brugere skal være løb som taskdbruger. Kører du som root-bruger, oprettes mapper og filer, der ejes af root-brugeren, /var/lib/taskd/orgshvilket forhindrer TaskWarrior (opgave)-klienter i at få adgang til eller ændre noget i den gruppe, som de er blevet tildelt. Adgang vil blive nægtet.

    sudo -u taskd taskd add org GROUP --data /var/lib/taskd
    
  3. Nu, hvor du har oprettet din første gruppe, lad os oprette din første bruger. Kør kommandoen nedenfor for at oprette en bruger, der er tildelt den gruppe, der blev oprettet i trin #1. Kopier og indsæt den genererede brugernøgle, bruger og gruppe i en tekstfil. Gentag processen for at tilføje flere brugere.

    sudo -u taskd taskd add user GROUP 'Joe. Q. Public' --data /var/lib/taskd
    

Trin 7: Installer TaskWarrior-klienter

Windows 10 (byg senere end 1607+)

For at bruge TaskWarrior (opgave) på Windows 10 skal du installere Windows-undersystemet til Linux fra Windows Store.

  1. For at installere WSL kræves en forhøjet Powershell-prompt. Tryk på Window-tasten og skriv powershell . Højreklik på Windows Powershell øverst i resultaterne og vælg " Kør som administrator ". Klik på Ja ved prompten Brugerkontokontrol . Kopier og indsæt teksten nedenfor i Powershell-vinduerne. Når WSL er færdig med installationen, skal du trykke på Y-tasten for at genstarte Windows.

    Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
    
  2. Efter genstart skal du åbne en kommandoprompt og skrive følgende kommando bash . Dette vil installere Ubuntu på Windows. Tryk på Y-tasten . Det vil nu blive downloadet og udtrukket. Vælg et brugernavn og en adgangskode.

    bash
    
  3. Nu er det tid til at installere TaskWarrior (opgave). Skriv følgende kommando inde i konsollen.

    sudo apt-get install task -y
    
  4. Skriv exit to gange for at afslutte bash-terminalen og Windows-kommandoprompten.

  5. Klik på knappen Startmenu. Skriv ubuntu . Højreklik på Bash på Ubuntu på Windows . Vælg Fastgør til proceslinjen . Dette giver bekvemmelighed for hurtigt at få adgang til bash for at få adgang til TaskWarrior (opgave).

  6. Klik på det Ubuntu-ikon, du lige har oprettet, på proceslinjen. Dette åbner et terminalvindue, der kører Bash. Indtast følgende kommando nedenfor for at oprette TaskWarrior (opgave) datamappe ( ~/.task/) og konfigurationsfil ( .taskrc).

    task version
    yes
    
  7. Du skal flytte den certificates.zipfil, du har gemt tidligere under TaskServer-opsætningen, til ~/.taskd/mappen inde i dit brugerbibliotek. For at udpakke filerne fra zip-filen skal du først installere unzipprogrammet. Kopiér og indsæt følgende kommandoer nedenfor og erstatter den faktiske placering af din kopi af certificates.zip.

    sudo apt-get install unzip -y
    cp /mnt/c/User/WINDOWSUSER/Desktop/certificates.zip .
    cd .task
    unzip ../certificates.zip
    cd
    
  8. Indtast følgende kommandoer for at indstille TaskWarrior (opgave) til at oprette forbindelse til TaskServer (taskd). Erstat NAME med det, du har navngivet dit certifikat og din nøgle, GROUP med den gruppe, du har oprettet, Joe Q. Public med det brugernavn, du har oprettet, og XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX med den nøgle, som din bruger tildelte blev oprettet på TaskWarrior (taskd) serveren.

    task config taskd.ca -- ~/.task/ca.cert.pem
    task config taskd.certificate -- ~/.task/**NAME**.cert.pem
    task config taskd.key -- ~/.task/**NAME**.key.pem
    task config taskd.server -- taskd.example.com:53589
    task config taskd.credentials -- GROUP/Joe Q. Public/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXX
    
  9. Nu er det tid til at synkronisere TaskWarrior (opgave) med TaskServer (taskd). Kør kommandoen nedenfor for at initialisere databasen.

    task sync init
    

    Synkronisering mellem din TaskWarrior (opgave) klient og TaskServer (taskd) er nu konfigureret på Windows 10 platformen.

Android

For at bruge TaskWarrior (opgave) på Android skal du installere TaskWarrior til Android fra Google Play Butik.

  1. Installer TaskWarrior (opgave) til Android-appen i Googles Play Butik.

  2. Åbn TaskWarrior (opgave) til Android-appen.

  3. Du vil blive bedt af appen om at oprette en konto med et ønsket kontonavn . Indtast det navn, du valgte, da du oprettede et brugernavn til en TaskServer-bruger (taskd).

  4. Forlad datamappen til standardindstillingen <<Opret ny>> og tryk på OK- knappen. Brug en filhåndteringsapp til at oprette en mappe i din lagerrod (for eksempel: /storage/emulate/0/Certs). Send appen til baggrunden.

  5. Kopier den certificates.zipfil, du har oprettet tidligere, og udpak dens indhold i din mappe oprettet i trin #4.

  6. Forgrund appen "TaskWarrior (opgave) For Android", og tryk på menuen i øverste venstre hjørne af appen for at åbne den.

  7. Rul ned til bunden af ​​menuen, og tryk på indstillingen Indstillinger.

  8. Dette åbner en simpel indbygget TaskWarrior For Android-app-teksteditor.

  9. Indtast følgende muligheder for at konfigurere synkronisering med din TaskServer (taskd). Erstat variablerne taskd.ca/ taskd.certificate/taskd.key` med den/de faktiske ca/certifikat/nøgle-mappesti(r), NAME med det, du navngav dit certifikat og din nøgle, GROUP med den gruppe, du oprettede, Joe Q. Public med det brugernavn, du oprettede og XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXX med den nøgle, der blev tildelt, da du oprettede din bruger på TaskWarrior-serveren (taskd).

    taskd.ca=/storage/emulate/0/Certs/ca.cert.pem
    taskd.certificate=/storage/emulate/0/Certs/NAME.cert.pem
    taskd.credentials=GROUP/Joe Q. Public/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
    taskd.key=/storage/emulate/0/Certs/NAME.key.pem
    taskd.server=taskd.example.com:53589
    
  10. Tryk på disketteikonet for at gemme dine indstillinger.

Synkronisering mellem din TaskWarrior (opgave)-klient og TaskServeren (taskd) er nu opsat på Android-platformen.

Linux

  1. Se TaskWarrior (opgave) distributionssektionen for at installere til din specifikke Linux-distribution .

  2. Åbn et terminalvindue. Indtast følgende kommando nedenfor for at oprette TaskWarrior (opgave) datamappe ( ~/.task/) og konfigurationsfil ( .taskrc).

    task version
    yes
    
  3. Du skal flytte den certificates.zipfil, du tidligere har gemt i TaskServer-opsætningen, til ~/.taskd/mappen inde i dit brugerbibliotek. For at udpakke filerne fra zip-filen skal du først installere unzipprogrammet til din særlige distribution. Kopiér og indsæt følgende kommandoer nedenfor, og erstatte den faktiske placering af din kopi af certificates.zip.

    cp /location/of/certificates.zip .
    cd .task
    unzip ../certificates.zip
    cd
    
  4. Indtast følgende kommandoer for at indstille TaskWarrior (opgave) til at oprette forbindelse til TaskServer (taskd). Erstat NAME med det, du har navngivet dit certifikat og din nøgle, GROUP med den gruppe, du har oprettet, Joe Q. Public med det brugernavn, du har oprettet, og XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX med den nøgle, som din bruger tildelte blev oprettet på TaskWarrior (taskd) serveren.

    task config taskd.ca -- ~/.task/ca.cert.pem
    task config taskd.certificate -- ~/.task/**NAME**.cert.pem
    task config taskd.key -- ~/.task/**NAME**.key.pem
    task config taskd.server -- taskd.example.com:53589
    task config taskd.credentials -- GROUP/Joe Q. Public/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXX
    
  5. Nu er det tid til at synkronisere TaskWarrior (opgave) med TaskServer (taskd). Kør kommandoen nedenfor for at initialisere databasen.

    task sync init
    

Tillæg: Hvis du kører Gnome Shell, er der en udvidelse kaldet TaskWhisper, der integreres med TaskWarrior (opgave).

Synkronisering mellem din TaskWarrior (opgave)-klient og TaskServer (taskd) er nu opsat på din foretrukne Linux-distro.


Installer Plesk på CentOS 7

Installer Plesk på CentOS 7

Bruger du et andet system? Plesk er et proprietært webhost kontrolpanel, der giver brugerne mulighed for at administrere deres personlige og/eller klienters websteder, databaser

Sådan installeres Squid Proxy på CentOS

Sådan installeres Squid Proxy på CentOS

Squid er et populært, gratis Linux-program, der giver dig mulighed for at oprette en webproxy til videresendelse. I denne vejledning vil du se, hvordan du installerer Squid på CentOS for at gøre dig

Sådan installeres Lighttpd (LLMP Stack) på CentOS 6

Sådan installeres Lighttpd (LLMP Stack) på CentOS 6

Introduktion Lighttpd er en forgrening af Apache, der sigter mod at være meget mindre ressourcekrævende. Den er let, deraf navnet, og den er ret enkel at bruge. Installer

Konfiguration af statisk netværk og IPv6 på CentOS 7

Konfiguration af statisk netværk og IPv6 på CentOS 7

VULTR har for nylig foretaget ændringer i deres ende, og alt skulle nu fungere fint ud af boksen med NetworkManager aktiveret. Skulle du ønske at deaktivere

Ændring af Icinga2 til at bruge Master/Client Model på CentOS 6 eller CentOS 7

Ændring af Icinga2 til at bruge Master/Client Model på CentOS 6 eller CentOS 7

Icinga2 er et kraftfuldt overvågningssystem, og når det bruges i en master-klient-model, kan det erstatte behovet for NRPE-baserede overvågningstjek. Mester-klienten

Sådan installeres Apache Cassandra 3.11.x på CentOS 7

Sådan installeres Apache Cassandra 3.11.x på CentOS 7

Bruger du et andet system? Apache Cassandra er et gratis og open source NoSQL-databasestyringssystem, der er designet til at give skalerbarhed, høj

Sådan installeres Microweber på CentOS 7

Sådan installeres Microweber på CentOS 7

Bruger du et andet system? Microweber er en open source træk og slip CMS og online shop. Microweber-kildekoden er hostet på GitHub. Denne guide vil vise dig

Sådan installeres Mattermost 4.1 på CentOS 7

Sådan installeres Mattermost 4.1 på CentOS 7

Bruger du et andet system? Mattermost er et open source, selvhostet alternativ til Slack SAAS-meddelelsestjenesten. Med andre ord, med Mattermost er du ca

Oprettelse af et netværk af Minecraft-servere med BungeeCord på Debian 8, Debian 9 eller CentOS 7

Oprettelse af et netværk af Minecraft-servere med BungeeCord på Debian 8, Debian 9 eller CentOS 7

Hvad skal du bruge En Vultr VPS med mindst 1 GB RAM. SSH-adgang (med root/administrative rettigheder). Trin 1: Installation af BungeeCord Første ting først

Lad os kryptere på Plesk

Lad os kryptere på Plesk

Plesk-kontrolpanelet har en meget flot integration til Lets Encrypt. Lets Encrypt er en af ​​de eneste SSL-udbydere, der udleverer certifikater komplet

Lader kryptere på cPanel

Lader kryptere på cPanel

Lets Encrypt er en certifikatmyndighed dedikeret til at levere SSL-certifikater gratis. cPanel har bygget en pæn integration, så du og din klient

Sådan installeres Concrete5 på CentOS 7

Sådan installeres Concrete5 på CentOS 7

Bruger du et andet system? Concrete5 er et open source CMS, som tilbyder mange karakteristiske og nyttige funktioner til at hjælpe redaktører med at producere indhold nemt og

Sådan installeres Review Board på CentOS 7

Sådan installeres Review Board på CentOS 7

Bruger du et andet system? Review Board er et gratis og open source-værktøj til gennemgang af kildekode, dokumentation, billeder og mange flere. Det er webbaseret software

Konfigurer HTTP-godkendelse med Nginx på CentOS 7

Konfigurer HTTP-godkendelse med Nginx på CentOS 7

I denne vejledning lærer du, hvordan du opsætter HTTP-godkendelse for en Nginx-webserver, der kører på CentOS 7. Krav For at komme i gang skal du bruge

Sådan installeres YOURLS på CentOS 7

Sådan installeres YOURLS på CentOS 7

YOURLS (Your Own URL Shortener) er en open source URL-forkortelse og dataanalyseapplikation. I denne artikel vil vi dække installationsprocessen

Sådan installeres og konfigureres ArangoDB på CentOS 7

Sådan installeres og konfigureres ArangoDB på CentOS 7

Bruger du et andet system? Introduktion ArangoDB er en open source NoSQL-database med en fleksibel datamodel for dokumenter, grafer og nøgleværdier. det er

Brug af Etckeeper til versionskontrol af /etc

Brug af Etckeeper til versionskontrol af /etc

Introduktion /etc/-biblioteket spiller en afgørende rolle i den måde et Linux-system fungerer på. Årsagen til dette er, at næsten alle systemkonfigurationer

Hvorfor skal du bruge SSHFS? Sådan monteres et eksternt filsystem med SSHFS på CentOS 6

Hvorfor skal du bruge SSHFS? Sådan monteres et eksternt filsystem med SSHFS på CentOS 6

Mange systemadministratorer administrerer store mængder servere. Når filer skal tilgås på tværs af forskellige servere, logges ind på hver enkelt individuelt ca

Opsætning af en Half Life 2-server på CentOS 6

Opsætning af en Half Life 2-server på CentOS 6

Denne vejledning vil dække processen med at installere en Half Life 2-spilserver på CentOS 6 System. Trin 1: Installation af forudsætninger For at opsætte ou

Sådan installeres Laravel GitScrum på CentOS 7

Sådan installeres Laravel GitScrum på CentOS 7

Laravel GitScrum eller GitScrum er et open source-produktivitetsværktøj designet til at hjælpe udviklingsteams med at implementere Scrum-metoden på en måde, der ligner t.

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Kunstig intelligens er ikke i fremtiden, det er her lige i nuet I denne blog Læs, hvordan kunstig intelligens-applikationer har påvirket forskellige sektorer.

DDOS-angreb: et kort overblik

DDOS-angreb: et kort overblik

Er du også et offer for DDOS-angreb og forvirret over forebyggelsesmetoderne? Læs denne artikel for at løse dine spørgsmål.

Har du nogensinde spekuleret på, hvordan tjener hackere penge?

Har du nogensinde spekuleret på, hvordan tjener hackere penge?

Du har måske hørt, at hackere tjener mange penge, men har du nogensinde spekuleret på, hvordan tjener de den slags penge? lad os diskutere.

Revolutionære opfindelser fra Google, der vil gøre dit liv lettere.

Revolutionære opfindelser fra Google, der vil gøre dit liv lettere.

Vil du se revolutionerende opfindelser fra Google, og hvordan disse opfindelser ændrede livet for ethvert menneske i dag? Læs derefter til bloggen for at se opfindelser fra Google.

Fredag ​​Essential: Hvad skete der med AI-drevne biler?

Fredag ​​Essential: Hvad skete der med AI-drevne biler?

Konceptet med selvkørende biler til at køre på vejene ved hjælp af kunstig intelligens er en drøm, vi har haft i et stykke tid nu. Men på trods af flere løfter er de ingen steder at se. Læs denne blog for at lære mere...

Teknologisk singularitet: En fjern fremtid for menneskelig civilisation?

Teknologisk singularitet: En fjern fremtid for menneskelig civilisation?

Efterhånden som videnskaben udvikler sig i et hurtigt tempo og overtager en stor del af vores indsats, stiger risikoen for at udsætte os selv for en uforklarlig Singularitet. Læs, hvad singularitet kunne betyde for os.

Udvikling af datalagring – Infografik

Udvikling af datalagring – Infografik

Opbevaringsmetoderne for dataene har været under udvikling, kan være siden fødslen af ​​dataene. Denne blog dækker udviklingen af ​​datalagring på basis af en infografik.

Funktioner af Big Data Reference Architecture Layers

Funktioner af Big Data Reference Architecture Layers

Læs bloggen for at kende forskellige lag i Big Data-arkitekturen og deres funktionaliteter på den enkleste måde.

6 fantastiske fordele ved at have smarte hjemmeenheder i vores liv

6 fantastiske fordele ved at have smarte hjemmeenheder i vores liv

I denne digitalt drevne verden er smarte hjemmeenheder blevet en afgørende del af livet. Her er et par fantastiske fordele ved smarte hjemmeenheder om, hvordan de gør vores liv værd at leve og enklere.

macOS Catalina 10.15.4-tillægsopdatering forårsager flere problemer end at løse

macOS Catalina 10.15.4-tillægsopdatering forårsager flere problemer end at løse

For nylig udgav Apple macOS Catalina 10.15.4 en supplerende opdatering for at løse problemer, men det ser ud til, at opdateringen forårsager flere problemer, hvilket fører til mursten af ​​mac-maskiner. Læs denne artikel for at lære mere