Linux Two-Step Authentication with Rust you own this product

prerequisites
basic Rust • basic Docker • experienced programming skills
skills learned
implement a RESTful web service in Rust • write a secure Rust program
Kamran Amini
3 weeks · 6-8 hours per week · INTERMEDIATE

placing your order...

Don't refresh or navigate away from the page.
liveProject liveProjects give you the opportunity to learn new skills by completing real-world challenges in your local development environment. Solve practical problems, write working code, and analyze real data—with liveProject, you learn by doing. These self-paced projects also come with full liveBook access to select books for 90 days plus permanent access to other select Manning products. $27.99 $39.99 you save $12 (30%)
Linux Two-Step Authentication with Rust (liveProject) added to cart
continue shopping
adding to cart

choose your plan

team

monthly
annual
$49.99
$499.99
only $41.67 per month
  • five seats for your team
  • access to all Manning books, MEAPs, liveVideos, liveProjects, and audiobooks!
  • choose another free eBook every time you renew
  • choose twelve free eBooks per year
  • exclusive 50% discount on all purchases
  • Linux Two-Step Authentication with Rust eBook for free
Look inside

In this liveProject, you’ll use the Rust programming language to develop a two-step verification system for authentication service. You’ve decided to work in Rust because it runs without memory issues, it’s data race free, and provides safe concurrency.


Your client’s employees work on different operating systems, so your verification system needs to function on Mac, Linux, and Windows. To complete this system, you’ll need to develop a RESTful service as its core backend, and then write a Rust client that is going to be called by Linux as part of its authentication process. Finally, you’ll use Rust to develop Admin and verification clients, write a thin layer of C code as a PAM module, and configure Linux to use the PAM module in its authentication pipeline.

This project is designed for learning purposes and is not a complete, production-ready application or solution.

book resources

When you start your liveProject, you get full access to the following books for 90 days.

project author

Kamran Amini
Kamran Amini is a senior professional specializing in embedded and kernel development. He has worked for numerous Iranian well-known companies as a senior engineer, architect, consultant, and CTO. In 2017, he moved to Europe to work as a senior architect and engineer for highly reputable companies such as Jeppesen, Adecco, TomTom, and ActiveVideo Networks. While residing in Amsterdam, he worked on his first book, Extreme C. His main areas of interest are computation theory, distributed systems, machine learning, information theory, and quantum computation. Parallel to his professional career, he is studying Astronomy and Planetary sciences. His academic areas of interest are related to the development of the early universe, the geometry of black holes, quantum field theory, and string theory.

prerequisites

This liveProject is for confident web developers interested in learning Rust or upgrading their Rust skills with a challenging real-world project. To begin this liveProject, you will need to be familiar with the following:


TOOLS
  • Basic Rust
  • Basic C
  • Basic Docker and containerization
  • Experienced in using Git and GitHub
TECHNIQUES
  • Basic C/C++ development skills
  • C/C++ building pipelines

you will learn

In this liveProject, you’ll develop an industry-grade understanding of Rust and how it excels at common development tasks.


  • Key factors and best practices to design and implement a RESTful web service in Rust
  • Write a secure Rust program which connects to and consumes a RESTful web server
  • Designing a secure authentication module for Linux and basically how Linux PAM-based authentication works
  • Calling a Rust function from C or C++ code (FFI)

features

Self-paced
You choose the schedule and decide how much time to invest as you build your project.
Project roadmap
Each project is divided into several achievable steps.
Get Help
While within the liveProject platform, get help from other participants and our expert mentors.
Compare with others
For each step, compare your deliverable to the solutions by the author and other participants.
book resources
Get full access to select books for 90 days. Permanent access to excerpts from Manning products are also included, as well as references to other resources.
RECENTLY VIEWED