Skip to content
This repository was archived by the owner on Apr 2, 2024. It is now read-only.

DBM1 Iabo1 dum

IlanRuiz edited this page Mar 27, 2024 · 1 revision

Prérequis

Nom Prérequis
Système de fichier 2go
RAM XFS ou EXT4
Stockage disque 6go
Vitesse processeur 2Ghz
Nombre coeurs processeur 2
Type processeur x64

https://learn.microsoft.com/fr-fr/sql/linux/sql-server-linux-setup?view=sql-server-2017#system

Configuration de base

Les machines ont été installées sur la version 17 pro de Vmware workstation.

Un routeur mikrotik est en place pour le réseau virtuel.

Schéma d'infrastructure

DBM1-infra

Réseau

Attribution d'une adresse IP pour la carte nat

sudo nano /etc/netplan/00-installer-config.yaml
sudo netplan apply

Validation

input

ping 8.8.8.8
ping google.ch

output

ubu@dbm1-lin-sqlsrv:~$ ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=128 time=15.9 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=128 time=20.2 ms
^C
--- 8.8.8.8 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 999ms
rtt min/avg/max/mdev = 15.909/18.053/20.197/2.144 ms
ubu@dbm1-lin-sqlsrv:~$ ping google.ch
PING google.ch (142.250.203.99) 56(84) bytes of data.
64 bytes from zrh04s16-in-f3.1e100.net (142.250.203.99): icmp_seq=1 ttl=128 time=15.7 ms
64 bytes from zrh04s16-in-f3.1e100.net (142.250.203.99): icmp_seq=2 ttl=128 time=11.7 ms
^C
--- google.ch ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1001ms
rtt min/avg/max/mdev = 11.706/13.709/15.713/2.003 ms

Changement timezone

Appliquer le fuseau horraire adapté

sudo timedatectl set-timezone Europe/Zurich

Validation

input

date

output

ubu@dbm1-lin-sqlsrv:~$ date
Mon Jan 22 01:16:20 PM CET 2024

Installation SQL server

Se connecter avec un utilisateur ayant des droits admin (utilisation sudo ou SU)

Ajouter les clefs de dépot

curl https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc
curl -fsSL https://packages.microsoft.com/keys/microsoft.asc | sudo gpg --dearmor -o /usr/share/keyrings/microsoft-prod.gpg
curl -fsSL https://packages.microsoft.com/config/ubuntu/22.04/mssql-server-2022.list | sudo tee /etc/apt/sources.list.d/mssql-server-2022.list

Mettre à jour les dépots

apt-get update

Installer SQL server

apt-get install -y mssql-server

Configuration de base

Lancer la configuration de base du service

/opt/mssql/bin/mssql-conf setup

Choisir la version developer

Attribution d'un mdp du compte sa: Motd3Pa$$e

Par-feu

Ouvrir le port par défaut utilisé par le service (1433)

ufw allow 1433

Validation

input:

systemctl status mssql-server --no-pager

output:

ubu@dbm1-lin-sqlsrv:~$ sudo systemctl status mssql-server --no-pager
[sudo] password for ubu:
● mssql-server.service - Microsoft SQL Server Database Engine
     Loaded: loaded (/lib/systemd/system/mssql-server.service; enabled; vendor preset: enabled)
     Active: active (running) since Mon 2024-01-22 13:14:29 CET; 9min ago
       Docs: https://docs.microsoft.com/en-us/sql/linux
   Main PID: 872 (sqlservr)
      Tasks: 170
     Memory: 1.9G
        CPU: 20.203s
     CGroup: /system.slice/mssql-server.service
             ├─ 872 /opt/mssql/bin/sqlservr
             └─1103 /opt/mssql/bin/sqlservr

Jan 22 13:14:39 dbm1-lin-sqlsrv sqlservr[1103]: [66B blob data]
Jan 22 13:14:39 dbm1-lin-sqlsrv sqlservr[1103]: [75B blob data]
Jan 22 13:14:39 dbm1-lin-sqlsrv sqlservr[1103]: [96B blob data]
Jan 22 13:14:39 dbm1-lin-sqlsrv sqlservr[1103]: [100B blob data]
Jan 22 13:14:39 dbm1-lin-sqlsrv sqlservr[1103]: [71B blob data]
Jan 22 13:14:39 dbm1-lin-sqlsrv sqlservr[1103]: [124B blob data]
Jan 22 13:19:38 dbm1-lin-sqlsrv sqlservr[1103]: [75B blob data]
Jan 22 13:20:24 dbm1-lin-sqlsrv sqlservr[1103]: [156B blob data]
Jan 22 13:20:24 dbm1-lin-sqlsrv sqlservr[1103]: [195B blob data]
Jan 22 13:21:41 dbm1-lin-sqlsrv sqlservr[1103]: [71B blob data]

Microsoft SQL Server Management Studio

Installation

Récupérer l'exécutable sur le site de microsoft: https://aka.ms/ssmsfullsetup

Laisser le chemin d'installation par défaut

validation

input

image-20240125194119077

image-20240125194446770

output

image-20240125194516620

Ajout BD Adventurework

Serveur Linux sql

Téléchrager sur le serveur sql la base de donnée test Adventureworks sur le site de microsoft: https://github.com/Microsoft/sql-server-samples/releases/download/adventureworks/AdventureWorks2022.bak

Utiliser la commande wget

Déplacer le fichier .bak sous /var/opt/mssql/data/

Note: Passer en super user pour déplacer le fichier

Machine windows

Se connecter à la console sql sur windows

Préparer une nouvelle requet

image-20240125194232277

Exécuter la requet suivante pour importer la nouvelle base de donnée AdventureWorks

USE [master];
GO
RESTORE DATABASE [AdventureWorks2022]
FROM DISK = 'AdventureWorks2022.bak'
WITH
    MOVE 'AdventureWorks2022' TO '/var/opt/mssql/data/AdventureWorks2022.mdf',
    MOVE 'AdventureWorks2022_log' TO '/var/opt/mssql/data/AdventureWorks2022_log.ldf',
    FILE = 1,
    NOUNLOAD,
    STATS = 5;
GO

Domain Active Directory

Configuration du domain

Installation du service ADDS sur le serveur windows

Extrait du script d'installation en powershell

#
# Windows PowerShell script for AD DS Deployment
#

Import-Module ADDSDeployment
Install-ADDSForest `
-CreateDnsDelegation:$false `
-DatabasePath "C:\Windows\NTDS" `
-DomainMode "WinThreshold" `
-DomainName "dbm.irs" `
-DomainNetbiosName "DBM" `
-ForestMode "WinThreshold" `
-InstallDns:$true `
-LogPath "C:\Windows\NTDS" `
-NoRebootOnCompletion:$false `
-SysvolPath "C:\Windows\SYSVOL" `
-Force:$true

Promouvoir le serveur en contrôleur de domain

Ajouter un redirecteur DNS pour que les clients du LAN ai accès à internet

image-20240125195408690

Validation

input

connexion au compte administrateur du domain sur le serveur

output

C:\Users\Administrator>whoami
dbm\administrator

Joindre serveur linux au domain

Sur la machine Linux, appliquer la configuration réseaux requis pour pouvoir interroger le serveur DNS de l'AD.

network:
  ethernets:
    ens33:
      addresses:
      - 192.168.6.150/24
      gateway4: 192.168.6.2
      nameservers:
        addresses: [192.168.6.151]
        search: [dbm.local]
  version: 2

Sur l'AD, ajouter les enregistrement DNS requis requis pour la machine linux

image-20240325111147197

image-20240325111212475

Effectuer un ping des points suivant pour valider la configuration

ping dbm.local
ping srvad.dbm.local
nslookup 192.168.6.151

Installer les parquets requis pour joindre le domain

sudo apt-get install realmd krb5-user software-properties-common python3-software-properties packagekit
sudo apt-get install adcli libpam-sss libnss-sss sssd sssd-tools

Entrer le nom du realm en majuscule

Vérifier dans le fichier /etc/krb5.conf que les informations sont correcte

Faire un realm discover pour valider

ubu@srvdbm:~$ realm discover dbm.local
dbm.local
  type: kerberos
  realm-name: DBM.LOCAL
  domain-name: dbm.local
  configured: kerberos-member
  server-software: active-directory
  client-software: sssd
  required-package: sssd-tools
  required-package: sssd
  required-package: libnss-sss
  required-package: libpam-sss
  required-package: adcli
  required-package: samba-common-bin
  login-formats: %U@dbm.local
  login-policy: allow-realm-logins
ubu@srvdbm:~$

Changer le nom d'hote de la machine linux en ajouter le nom de domaine

sudo hostname srvdb.dbm.local

Joindre le domaine

sudo realm join dbm.local -U 'administrator@DBM.LOCAL' -v

Informations côté AD

image-20240325111928546

Sources

https://learn.microsoft.com/fr-fr/sql/linux/sql-server-linux-release-notes-2022?view=sql-server-2017

https://learn.microsoft.com/fr-fr/sql/linux/sql-server-linux-setup?view=sql-server-2017#system

https://learn.microsoft.com/fr-fr/sql/linux/quickstart-install-connect-ubuntu?view=sql-server-linux-ver16&preserve-view=true&tabs=ubuntu2204#install

https://learn.microsoft.com/fr-fr/sql/ssms/download-sql-server-management-studio-ssms?view=sql-server-2017

https://learn.microsoft.com/en-us/sql/samples/adventureworks-install-configure?view=sql-server-ver15&tabs=ssms

https://www.server-world.info/en/note?os=Ubuntu_22.04&p=realmd

Clone this wiki locally