GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Un semplice script BASH per l'installazione successiva di Ubuntu Server

Oggi mi sono imbattuto in un semplice script BASH chiamato "Ubuntu-server-setup" che ti aiuta ad automatizzare la configurazione e il provisioning del server Ubuntu dopo una nuova installazione. Questo script eseguirà le seguenti operazioni:

  • Aggiunge un nuovo account utente con accesso sudo
  • Aggiunge una chiave ssh pubblica per il nuovo account utente
  • Disabilita l'autenticazione della password sul server
  • Nega l'accesso come root al server
  • Imposta un firewall semplice (UFW)
  • Crea file di scambio in base alla memoria installata della macchina
  • Imposta il fuso orario per il server (il valore predefinito è "Asia/Singapore". Puoi citare il tuo fuso orario)
  • Installa Network Time Protocol

In questo breve tutorial, vedremo come eseguire questo script nel server Ubuntu 16.04 LTS. Questo potrebbe funzionare anche su altre versioni di Ubuntu.

Scarica - EBook gratuito:"Ubuntu Documentation:Ubuntu Server Guide 2014"

Ubuntu-server-setup - Script di post-installazione del server Ubuntu

Prima di utilizzare questo script, devi creare una chiave ssh pubblica sul tuo sistema client. Ne avrai bisogno durante l'esecuzione dello script.

Per creare una chiave ssh pubblica, esegui:

$ ssh-keygen -t rsa

Immettere la passphrase due volte.

Generating public/private rsa key pair.
Enter file in which to save the key (/home/sk/.ssh/id_rsa): 
Created directory '/home/sk/.ssh'.
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /home/sk/.ssh/id_rsa.
Your public key has been saved in /home/sk/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:JFEf6UJEHVmuU/wO1zFUeXyE5oxhLCBfJOKB4yoX9mI [email protected]
The key's randomart image is:
+---[RSA 2048]----+
| .=+*+=*. ==|
| o. *.+=++ +.+|
| . .o.o..o+* oo|
| o . o. .o..o.o|
| . + S.o . o .|
|. E . . + |
| + . . |
| |
| |
+----[SHA256]-----+

Per visualizzare la chiave pubblica SSH appena creata, apri una nuova finestra di Terminale ed esegui:

$ cat ~/.ssh/id_rsa.pub

Copia la chiave pubblica ssh e tienila al sicuro. Devi inserire questa chiave più tardi.

Ora, accedi al tuo server Ubuntu. Installa 'git' usando i comandi:

$ sudo apt-get update
$ sudo apt-get install git

Quindi, prendi lo script Ubuntu-server-setup usando il comando:

$ git clone https://github.com/jasonheecs/ubuntu-server-setup.git

Il comando precedente clonerà l'ultima versione in una cartella denominata "ubuntu-server-setup" nella directory di lavoro corrente.

Vai alla directory di configurazione del server Ubuntu ed esegui lo script come mostrato di seguito.

$ cd ubuntu-server-setup/
$ bash setup.sh

Ora, dovrai rispondere a una serie di domande. Rispondi, di conseguenza. Innanzitutto, inserisci il nuovo nome utente:

Enter the username of the new user account:ostechnix
Enter new UNIX password:
Retype new UNIX password:
Adding user `ostechnix' ...
Adding new group `ostechnix' (1001) ...
Adding new user `ostechnix' (1001) with group `ostechnix' ...
Creating home directory `/home/ostechnix' ...
Copying files from `/etc/skel' ...
Changing the user information for ostechnix
Enter the new value, or press ENTER for the default
 Full Name []: Senthilkumar
 Room Number []: 123
 Work Phone []: 
 Home Phone []: 
 Other []: 
Is the information correct? [Y/n] y

Copia/incolla la chiave ssh pubblica che abbiamo creato nel passaggio precedente.

Paste in the public SSH key for the new user:
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDg2S1/s3ZB/O/KBVT6OP0JEQKPQ3QjTOaWhAjFN9CJrb2IVYGx0P8SA52d81tw0UJXByXkPpxvGwXYbWukV6bF/mdm8kj+e+BxEYlq2sXbFdwW+lW0GwTYMq2tIRQ1Iec6QFLGNSi0QjLcIhG/JTg5TrmK9KyECCHRFQfR7cDWRXo2tBtMkDxdJdH/D4BdmO//rvSFgY4QiqjwmkKqgpLrK5ZvvfgjKWtO0+1D+hfrm+cTNGByWHvOAj3j5HyXB6dzNaKswCQygzkvESzXI6eyMWYW3+QNz2PBHbof+HVHSd9av7aC8IO31aUMsyvrTcSB3wHk0NpmrDfqLRvOspNb [email protected]
Running setup script...

Inserisci ora il tuo fuso orario:

Enter the timezone for the server (Default is 'Asia/Singapore'):
Asia/Kolkata
Timezone is set to Asia/Kolkata
Installing Network Time Protocol... 
Setup Done! Log file is located at output.lo

Tieni presente che non puoi inviare ssh al server Ubuntu con nessun altro utente, tranne quello (cioè ostechnix nel nostro caso) che hai appena creato. Perché questo script disabiliterà l'autenticazione ssh basata su password per tutti gli utenti incluso root. Inoltre, puoi solo inviare ssh al server Ubuntu dal sistema client in cui hai creato la chiave ssh pubblica e l'hai condivisa con il sistema remoto. Se desideri eseguire ssh da altri sistemi, la chiave pubblica ssh dovrebbe essere caricata manualmente su un server remoto a cui desideri poter accedere con SSH.

D'ora in poi, ti verrà chiesto di inserire la passphrase che hai creato nel sistema client ogni volta che provi a inviare ssh al tuo server come di seguito.

$ ssh [email protected]

Immettere la passphrase per la chiave:

Enter passphrase for key '/home/sk/.ssh/id_rsa':

Questo è tutto. Lo script di configurazione del server Ubuntu ha appena completato le attività di base dopo l'installazione. Inizia a installare altre cose che desideri eseguire nel server.


Ubuntu
  1. Ssh:script di shell per l'accesso a un server Ssh?

  2. Ssh Mappa chiave pubblica-privata per il cliente?

  3. Installazione minima del server?

  4. Configura l'autenticazione a più fattori per SSH su Ubuntu 20.04

  5. Server Ubuntu per manichini

Installazione di Samba Server su Ubuntu 15.10

Installazione di Samba Server su Ubuntu 16.04 LTS

Registra l'attività del terminale per Ubuntu 16.04 LTS Server

Come abilitare il server SSH su Ubuntu 22.04

Configura l'accesso SSH senza password per più server remoti utilizzando lo script

Genera chiavi SSH per l'accesso senza password in Ubuntu