Leanpub Header

Skip to main content

Linux Administration Volume 3

Linux Administration Sécurisée. Guide pratique de préparation aux examens de certification LPIC 1, LPIC 2, Linux Essentials, RHCSA et LFCS. LFCS/LFCE. Secure Shell (SSH), Synchronisation temporelle, Syslog, Cron, SELINUX, Apparmor, Routage IP, Pare-feu Netfilter, uff, firewall, iptables, audit et scan, renforcement sécuritaire.

Linux Administration Volume 3. Administration Sécurisée. Guide pratique de préparation aux examens de certification LPIC 1, LPIC 2, Linux Essentials, RHCSA et LFCS/LFCE. Secure Shell (SSH), Synchronisation temporelle, Syslog, Cron, SELINUX, Apparmor, Routage IP, Pare-feu Netfilter, uff, firewall, iptables, audit et scan, renforcement sécuritaire.

Minimum price

$19.99

$29.99

You pay

$29.99

Author earns

$23.99
$

...Or Buy With Credits!

You can get credits monthly with a Reader Membership
PDF
EPUB
WEB
210
Pages
44,418Words
About

About

About the Book

Ce troisième volume Linux Administration avancée s'aligne sur les objectifs Linux Essentials, LPIC 1, LPIC 2, RHCSA et LFCS/LFCE.

Il peut occuper une activité intellectuelle de 16 à 35 heures, voir plus.

L'objectif opérationnel est d'adopter des pratiques d'administration et de gestion sécurisée d'un système Linux avec les protocoles et les méthodes appropriées de renforcement sécuritaire et de transfert authentifié, confidentiel et surveillé.

Une première partie intitulée "Secure Shell" présente de nombreux aspects du protocole de gestion sécurisée SSH : installation, configuration et connexion OpenSSH, authentification par clé partagée, transfert de fichiers SCP et SFTP, usage sous Windows, transfert de session graphique, transfert de trafic dans des tunnels, Serveurs X2Go, Protection Fail2ban, Renforcement du service SSH, SSH avec SELINUX.

La seconde partie intitulée "Gestion sécurisée" s'intéresse à la synchronisation temporelle et à la localisation d'un système Linux, aux tâches planifiées (cron), à la journal Systemd et Syslog ainsi que des sécurités SELINUX et AppArmor.

La troisième partie intitulée "Routage et pare-feu" s'intéresse à l'activation du routage IP à partir du noyau Linux et au concept de pare-feu Netfilter géré par ufw, firewalld ou les commandes iptables.

Une quatrième partie est entièrement consacrée au sujet de la confidentialité : cryptographie symétrique et asymétrique, infrastructure à clé publique, PGP et TLS sont les sujets développés notamment à partir des outils de la librairie OpenSSL.

Une cinquième et dernière partie intitulée "Audit Linux" termine cet ouvrage : Renforment du système, analyse de trafic, scan de réseau et de vulnérabilités, détection d'intrusion et de rootkits et enfin gestion des logs sont au menu.

Share this book

License

Creative Commons Attribution-ShareAlike 4.0 International License

Author

About the Author

François-Emmanuel Goffinet

  • Consultant IT, Admin Linux et Réseau Senior, SysOps
  • Formateur certifié Cisco, Red Hat, AWS dans le domaine des infrastructures informatiques d'entreprise
  • Enseignant dans les écoles supérieures d'informatique, Promoteur/Mentor
  • Auteur

Contents

Table of Contents

Avertissement

  1. Droits

Dédicace

Remerciements

Avant-Propos

  1. Orientation pédagogique
  2. Public cible du document
  3. Du bon usage du support
  4. Distributions de référence
  5. Matériel nécessaire

Introduction

  1. ISecure Shell
  2. Objectifs de certification
  3. RHCSA EX200
  4. RHCE EX300
  5. LPIC 1
  6. LPIC 2
  7. Introduction

1.Secure Shell

  1. 1. Présentation de SSH
  2. 1.1 Présentation rapide de SSH
  3. 2. Installation, configuration et connexion OpenSSH
  4. 2.1. Statut du service
  5. 2.2. Installation et activation du serveur openssh
  6. 2.3. Fichier de configuration du serveur openssh
  7. 2.4. Connexion locale au serveur SSH
  8. 2.5. Vérification de la version du client openssh
  9. 2.6. Configuration du pare-feu Firewalld
  10. 3. Authentification par clé avec OpenSSH
  11. 3.1. Création de la paire de clés
  12. 3.2. Clé privée / clé publique
  13. 3.3. Transmission de la clé publique au serveur
  14. Via une console SSH
  15. Via le protocole de transfert SCP
  16. Via le binaire ssh-copy-id
  17. 3.4. Générer des clés SSH de manière silencieuse
  18. Emplacement de destination
  19. Paramètres des clés
  20. Génération silencieuse
  21. 3.5. Convertir une clé privée PEM (openssh) en clé privée PPK (Putty) et inversément
  22. Installer Putty
  23. Convertir votre fichier .pem en fichier .ppk
  24. Convertir votre fichier .ppk en fichier .pem
  25. 4. Exécution de commande et shell distant
  26. 4.1. Le client openssh
  27. Omission de l’utilisateur de connexion
  28. Exécuter une commande à distance
  29. Connexion en IPv6
  30. 4.2. Options du client openssh
  31. Options courantes du client openssh
  32. 5. Transfert de fichiers SCP et SFTP
  33. 5.1. Transfert de fichiers SCP
  34. Copie vers un serveur distant
  35. Copie venant d’un serveur distant
  36. Copie récursive
  37. Précision du numéro de port
  38. 5.2. Transfert de fichiers SFTP
  39. 5.3. Transfert de fichiers Rsync
  40. Installtion du client Rsync
  41. Client rsync
  42. Serveur rsync
  43. 5.4. Montages SSH
  44. 6. Configuration du service OpenSSH
  45. 6.1. Fichier de configuration
  46. 6.2. Régénération des clés du serveur
  47. 7. Usage sous Windows
  48. 7.1. Utilitaire Putty
  49. 7.2. Utilitaire CyberDuck
  50. 7.3. Utilitaire WinSCP
  51. 7.4. Installation de OpenSSH pour Windows Server 2019 et Windows 10
  52. 8. Transfert de session graphique avec SSH
  53. 8.1. Serveur X
  54. 8.2. Serveur X Xming
  55. 9. Montage de tunnel
  56. 9.1. Transfert de port localement
  57. 9.2. Proxy Socks
  58. 9.3. Transfert distant distant et autossh pour la persistence
  59. 10. Serveur X2Go
  60. 10.1. Installation du serveur
  61. 10.2. Installation du client
  62. 11. Fail2ban
  63. 11.1. Installation de fail2ban
  64. Installer fail2ban
  65. Activation du service :
  66. 11.2. Activation des règles
  67. Créer un fichier /etc/fail2ban/jail.local
  68. Activer et démarrer fail2ban
  69. 11.3. Surveiller Fail2ban
  70. Statut de la prison sshd
  71. Journalisation de fail2ban
  72. 11.4. Aller plus loin avec fail2ban
  73. 12. Renforcement du service SSH
  74. 13. Jouer avec SELINUX et SSH
  75. 13.1. Changer le contexte du port SSH
  76. 13.2. Booléens SSH
  77. 14. Exercices
  78. 15. notes
  79. Références
  80. Intégrer google authenticator à PAM et SSH
  81. IIGestion sécurisée
  82. Objectifs de certification
  83. Linux Essentials
  84. RHCSA EX200
  85. LPIC 1
  86. LPIC 2
  87. Introduction

2.Localisation géographique et synchronisation temporelle

  1. 1. Localisation
  2. 2. Date courante : commande date
  3. 3. Options de la commande date
  4. 4. Contrôler le format d’affichage de la commande date
  5. 5. Network Time Protocol
  6. 6. Timedatectl
  7. 7. client ntpdate
  8. 8. Chrony
  9. 9. Client chronyc
  10. 10. Afficher les sources de synchronisation avec chronyc

3.Tâches planifiées

  1. 1. Commande at
  2. 1.1. créer une tâche planifiée
  3. 1.2. supprimer une tâche planifiée
  4. 2. Cron
  5. 2.1. Répertoire /etc/cron*
  6. 2.2. Service cron
  7. 2.3. Fichier /etc/crontab
  8. 2.4. Commande crontab
  9. 2.5. Champs dates et heures
  10. 2.6. Valeurs numériques
  11. 2.7. Exemples de planification
  12. 3. Compteurs systemd

4.Journalisation Systemd et Syslog

  1. 1. Journalisation Systemd
  2. 1.1. Commande journalctl
  3. 1.2. Options
  4. 1.3. Exemples
  5. 2. Syslog
  6. 2.1. Format Syslog
  7. 2.2. Niveaux de gravité
  8. 2.3. Origine
  9. 2.4. Journalisation Rsyslog
  10. Configuration
  11. Rotation
  12. 2.5. Fichiers de logs

5.Sécurités MAC SElinux et AppArmor

  1. 1. SELINUX
  2. 1.1. Introduction à SELinux
  3. 1.2. Terminologie SELinux
  4. 1.3. Modes SELinux
  5. Afficher le mode Selinux
  6. Activer le mode Enforcing ou Permissive
  7. Activer le mode Permissive
  8. Activer le mode Enforcing
  9. Vérification des contextes
  10. Vérification des booléens
  11. 1.4. Vérifier la présence des outils de gestion
  12. 1.5. Utilisateur SELinux
  13. 1.6. Contextes
  14. 1.7. Exemples de modification de contexte
  15. 1.8. Manipuler les “booleans”
  16. 1.9. Logs SELinux
  17. 1.10. Restaurer les contextes par défaut définis de tous les fichiers du système
  18. 1.11. SELINUX pour Debian
  19. Installation de SELINUX en Debian 9 (Stretch)
  20. 2. AppArmor (Debian 8)

6.Logiciels de sauvegarde (Backup)

  1. IIIRoutage et Pare-feu
  2. Objectifs de certification
  3. RHCSA EX200
  4. RHCE EX300
  5. LPIC 202
  6. LPIC 303 Sécurité
  7. Introduction

7.Routage et Pare-feu

  1. 1. Routage IP
  2. 1.1. Activation du routage
  3. 1.2. Exercice de routage statique
  4. Activation du routage
  5. 1.3. Exercice de routage dynamique
  6. Démon de routage OSPF
  7. 2. Pare-feu / Firewall
  8. 2.1. Objectifs d’un pare-feu
  9. 2.2. Ce que le pare-feu ne fait pas
  10. 2.3. Fonctionnement
  11. 2.4. Zone de confiance sur un pare-feu
  12. 2.5. Niveau de confiance
  13. 2.6. Politiques de filtrage
  14. 2.7. Filtrage
  15. 2.8. Décision de filtrage
  16. 2.9. Règles
  17. 2.10 Politique de filtrage typique
  18. 3. Pare-feu personnel Debian/Ubuntu
  19. 3.1. Uncomplicated Firewall (ufw)
  20. 3.2. Gestion des règles par défaut
  21. 3.3. Activer/désactiver la journalisation
  22. 3.4. Ajouter/supprimer des règles
  23. 3.5. Règles simples
  24. 3.6. Utilisation des services
  25. 3.7. Règles complexes
  26. 3.8. Insérer une règle
  27. 4. Firewalld
  28. 4.1. Zones
  29. Zone Block
  30. Zone DMZ
  31. Zone Drop
  32. Zone External
  33. Zone Home
  34. Zone Internal
  35. Zone Public
  36. Zone Trusted
  37. Zone Work
  38. 4.2. Vérification de la configuration d’une zone
  39. 4.3. Ajouter une interface dans une zone
  40. 4.4. Création d’une zone
  41. 4.5. Sources
  42. 4.6. Services
  43. 4.7. Ports
  44. 4.8. Masquerading
  45. 4.9. Transfert de ports
  46. 4.10. Revenir à iptables
  47. 5. Netfilter
  48. 5.1. Iptables : la théorie
  49. Trois tables : filter, nat et mangle
  50. La table filter
  51. Cibles possibles
  52. La table NAT
  53. Chaînes de la table NAT
  54. Cibles de la table nat
  55. Syntaxe
  56. Commandes
  57. Les critères
  58. Les critères de filtrage
  59. Chaînes Utilisateurs
  60. 5.2. Vérification des règles
  61. 5.3. Réinitialisation des règles
  62. 5.4. Politique INPUT
  63. 5.5. Routage IP activation opportune
  64. 5.6. Routage IP activation permanente
  65. 5.7. Chaine nat POSTROUTING
  66. 5.8. Questions
  67. 5.9. Exemples Netfilter
  68. 6. Lab Netfilter
  69. 6.1. Avec le matériel suivant mis à disposition
  70. 6.2. A l’aide de la documentation jointe
  71. 6.3. Consignes de sécurité
  72. 6.4. Solution
  73. IVConfidentialité
  74. LPIC 303 Sécurité
  75. Introduction

8.Cryptologie

  1. 1. Sémantique
  2. 2. Cryptologie
  3. 3. Cryptographie
  4. 4. Cryptanalyse

9.Algorithmes de chiffrement faible

  1. 1. Algorithmes de chiffrement faible (facilement déchiffrables)
  2. Exercices avec des algorithme faibles
  3. 2. Projet traducteur de langage Geek
  4. 2.1. Objectif
  5. 2.2. Dictionnaire Leet
  6. 2.4. En pratique
  7. 2.5. Solution
  8. 3. Projet ROT13
  9. 3.1. Objectif
  10. 3.2. Algorithme ROT13
  11. 3.3. Résultat attendu
  12. 3.4. En pratique
  13. 3.5. Solution
  14. 4. Projet Caesar
  15. 4.1. Objectif
  16. 4.2. Algorithme de César
  17. 4.3. Résultat attendu
  18. 4.4. En pratique
  19. 4.5. Solution
  20. 5. Projet Vigenere
  21. 5.1. Objectif
  22. 5.2. Algortithme de Vigenère
  23. 5.3. Résultat attendu
  24. 5.4. En pratique
  25. 5.5. Solution
  26. 6. Cisco type 7 password
  27. 6.5. Solution

10.Algorithmes de cryptographie symétrique

  1. 1. Algorithmes de cryptographie symétrique (à clé secrète)
  2. 2. Chiffrement par bloc et chiffrement par flot
  3. 3. Modes de chiffrement par bloc
  4. 3. Exercices de chiffrement symétrique
  5. 3.1. Chiffement symétrique avec vim
  6. 3.2. Chiffrement de fichier avec openssl
  7. Créer un fichier clair
  8. Codage base-64
  9. Chiffrement AES
  10. Déchiffrement

11.Cryptographie asymétrique

  1. 1. Algorithmes de cryptographie asymétrique
  2. 2. Fonctions de hachage
  3. 3. Cryptographie hybride
  4. 4. Exercices de cryptographie asymétrique
  5. 4.1. Générer l’emprunte d’un fichier
  6. 4.2. Exercices de chiffrement asymétrique
  7. 4.3. Exercice de signature numérique

12.Infrastructure à clé publique

  1. 1. Les certificats numériques
  2. 2. Définition d’un certificat numérique
  3. 3. Formats de certificats numériques
  4. 4. Utilité des certificats électroniques
  5. 5. Familles de certificats numériques
  6. 6. Exemples d’utilisation de certificats électroniques
  7. 7. Structure d’un certificat
  8. 8. Encodage des certificats
  9. 9. Infrastructure à clé publique
  10. 10. Rôles d’une infrastructure à clés publiques
  11. 11. Composants de l’infrastructure à clés publiques
  12. 12. Certificats numériques dans une PKI
  13. 13. Gestion des certificats
  14. 14. Modes de création
  15. 15. Scénario de fin de vie / CRL
  16. 16. Autorité de certification
  17. 17. Utilisation dans le domaine des communications web
  18. 18. Fonctionnement interne
  19. 19. Serveur de clés
  20. 20. Synthèse sur infrastructure à clé publique.
  21. Terminologie
  22. L’Autorité de certification (AC)
  23. Paires de clés et demandes
  24. Comment les demandes deviennent des certificats
  25. Vérification d’un certificat émis

13.Pretty Good Privacy (PGP)

  1. 1. Introduction à Pretty Good Privacy (PGP)
  2. 1.1. Fonctionnement de PGP
  3. 1.2. Authentification
  4. 1.3. Confidentialité
  5. 1.4. Compression
  6. 1.5. Compatibilité
  7. 1.6. Segmentation et ré-assemblage
  8. 2. Exercices GPG
  9. 2.1. Chiffrer un texte clair avec GPG
  10. 2.2. Déchiffrer un texte gpg
  11. 2.3. Chiffrer et signer des messages
  12. 2.4. Logiciels graphiques PGP
  13. Gestion des clés
  14. Message chiffré

14.Transport Layer Security (TLS)

  1. Introduction
  2. 1. Présentation
  3. 2. Protocole SSL
  4. 3. Protocole TLS
  5. 4. Spécifications techniques
  6. 5. Support par les navigateurs
  7. 6. Authentification par certificat numérique
  8. 7. Principe de fonctionnement dans les navigateurs web
  9. 8. Letsencrypt

15.Pratique de TLS et des certificats

  1. 1. OpenSSL
  2. 1.1. Récupérer, visualiser, transcoder, vérifier manuellement un certificat
  3. 1.2. Créer un certificat x509 auto-signé
  4. 1.3. Tester une liaison TLS
  5. 1.4. Créer un CA, signer des certificats (1)
  6. 1.5. Créer un CA, signer des certificats (2)
  7. 1.6. Révoquer un certificat
  8. 1.7. Créer un certificat pour une personne
  9. 2. Stunnel 4
  10. 3. Easy-RSA
  11. Terminologie utilisée
  12. L’Autorité de certification (AC)
  13. Paires de clés et demandes
  14. Comment les demandes deviennent des certificats
  15. Vérification d’un certificat délivré
  16. Etude de cas VPN “Road Warrior”
  17. 4. Mise en oeuvre d’HTTPS avec Apache 2
  18. 2.1. Installation de HTTPd Server sur Centos
  19. Examen des emplacements du logiciel
  20. 2.2. Configurer un hôte virtuel
  21. Fichier de configuration
  22. Mise en place d’un hôte virtuel HTTP
  23. Résolution de nom locale
  24. Création du dossier et des pages Web
  25. Restauration de la policy Selinux sur le dossier créé
  26. Création du dossier et des fichiers pour les logs
  27. Configuration du vhost HTTP
  28. Redémarrage du service
  29. Diganostic
  30. Script create_vhost_httpd.sh
  31. 2.3. Configuration d’un vhost en HTTPS
  32. Force des certificats
  33. “Red Hat Keypair Generation (c)” tout-en-un
  34. Génération du certificat public et de la clé auto-signée
  35. Génération d’un CSR en manuel
  36. Ansible : Module command
  37. Ansible : Modules openssl_privatekey, openssl_csr, openssl_certificate
  38. Fichier de configuration du vhost HTTPS par défaut
  39. Nouveau vhost HTTPS
  40. Vérifications
  41. Script create_vhost_httpds.sh
  42. Redirection HTTP vers HTTPS
  43. Script vhost-creator
  44. 1.8. Let’s Encrypt en Centos 7 pour Apache
  45. Installation du logiciel (Centos 7)
  46. Démarrage rapide
  47. Fonction Let’s Encrypt pour une installation silencieuse
  48. VAudit Linux
  49. Objectifs de certification
  50. LPIC 2
  51. LPIC 303 Sécurité
  52. Introduction

16.Audit Linux

  1. 1. Introduction
  2. 1.1. Avertissement légal
  3. 2. Renforcement (hardening) du système
  4. 3. Analyseurs de paquets
  5. 3.1. Exercice 1 : Observation de trafic dans le “cloud”
  6. 3.2. Exercice 2 : Créer un diagramme du réseau
  7. 3.3. Exercice 3 : Observation du trafic dans un outil local
  8. 3.4. Exercice 4 : Élaboration des requêtes HTTP
  9. Client wget
  10. Client netcat
  11. Client curl
  12. Client Web en Python (1)
  13. Serveur Web en Python (2)
  14. Serveur Web en Python (3)
  15. 3.4. Exercice 4 : Observation des sessions
  16. netstat
  17. 3.5. Exercice 5 : Capture du trafic
  18. 4. Scans ARP
  19. 4.1. Protocole ARP
  20. 4.2. Scanner ARP
  21. 4.3. Intérêts d’un scanner ARP
  22. 4.4. Table ARP
  23. 4.5. Vulnérabilité intrinsèque ARP
  24. 4.6. Contre-mesure des attaques ARP
  25. 4.7. Outils de scans ARP
  26. 5. Scans ICMP
  27. 5.1. Balayage ping (Ping Sweep) avec nmap -sn
  28. 5.2. Utilitaire fping
  29. 6.1. Objectifs
  30. 6.2. Netcat
  31. Couteau suisse TCP/UDP
  32. Syntaxe de Netcat
  33. Labs à réaliser
  34. Consoles nécessaires
  35. 6.2. Topologies client
  36. Scan de ports
  37. Scan Multi-ports
  38. Ports ouverts / ports fermés
  39. Banner Gathering
  40. Script d’envoi SMTP
  41. Message reçu
  42. Connaître son adresse IP publique
  43. Torify le trafic netcat
  44. 6.3. Topologies client/serveur
  45. Sockets et sessions TCP maîtrisées
  46. Chat TCP1337
  47. Client/Serveur UDP
  48. Transfert de fichiers
  49. Chiffrement du trafic avec openssl
  50. Backdoor
  51. Reverse Backdoor
  52. Configuration relay
  53. 6.4. Travail de laboratoire
  54. Document de laboratoire
  55. 7. Utiliser Nmap
  56. 7.1. Etablissement de sessions TCP 3 Way Handshake
  57. 7.2. Machine à état TCP
  58. 7.3. Numéros de séquence et acquittement
  59. 7.4. Drapeaux TCP
  60. 7.5. Scan de ports avec NMAP
  61. 7.6. Scan TCP Connect
  62. 7.7. Scan furtif TCP SYN
  63. 7.8. Scans furtifs Scans TCP Null, FIN et Xmas
  64. 7.9. Scan passif Idle Scan
  65. 7.10. Scan UDP
  66. 5.11. Scan TCP ACK
  67. 8. Scans de vulnérabilté
  68. 8.1. CVE
  69. 8.2. CVE-Search
  70. Installation de cve-search
  71. Exemples d’utilisation
  72. Interface Web
  73. 8.3. CVE-Scan
  74. Installation
  75. Utilisation
  76. 8.4. Produits
  77. 8.5. NSE
  78. 8.6. Openvas
  79. 9. Détection de rootkits
  80. 9.1. Rkhunter
  81. 10. Détection d’intrusion
  82. 10.1. PSAD
  83. 10.2. Snort
  84. Installation de snort
  85. Configuration de snort
  86. Configuration des règles
  87. Nomenclature des règles
  88. Détecter du trafic nmap
  89. Lancement du démon
  90. Vérification des alertes
  91. 10.3. Tripwire
  92. 11. Gestion des logs
  93. 11.1. Logwatch

Révisions

Get the free sample chapters

Click the buttons to get the free sample in PDF or EPUB, or read the sample online here

The Leanpub 60 Day 100% Happiness Guarantee

Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.

Now, this is technically risky for us, since you'll have the book or course files either way. But we're so confident in our products and services, and in our authors and readers, that we're happy to offer a full money back guarantee for everything we sell.

You can only find out how good something is by trying it, and because of our 100% money back guarantee there's literally no risk to do so!

So, there's no reason not to click the Add to Cart button, is there?

See full terms...

Earn $8 on a $10 Purchase, and $16 on a $20 Purchase

We pay 80% royalties on purchases of $7.99 or more, and 80% royalties minus a 50 cent flat fee on purchases between $0.99 and $7.98. You earn $8 on a $10 sale, and $16 on a $20 sale. So, if we sell 5000 non-refunded copies of your book for $20, you'll earn $80,000.

(Yes, some authors have already earned much more than that on Leanpub.)

In fact, authors have earned over $14 million writing, publishing and selling on Leanpub.

Learn more about writing on Leanpub

Free Updates. DRM Free.

If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).

Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.

Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.

Learn more about Leanpub's ebook formats and where to read them

Write and Publish on Leanpub

You can use Leanpub to easily write, publish and sell in-progress and completed ebooks and online courses!

Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks.

Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. (Or, if you are producing your ebook your own way, you can even upload your own PDF and/or EPUB files and then publish with one click!) It really is that easy.

Learn more about writing on Leanpub