Skip to main content

Abstract

We describe a SQLite-based mail server that runs on a bare PC with no operating system. The mail server application is integrated with a server-based adaptation of the popular SQLite client database engine. The SQLite database is used for storing mail messages, and mail clients can send/receive email and share files using any Web browser as in a conventional system. The unique features of the bare PC SQLite-based email server include (1) no OS vulnerabilities; (2) the inability for attackers to run any other software including scripts; (3) no support for dynamic linking and execution of external code; (4) a small code footprint making it easy to analyze the code for security flaws; and (5) performance benefits due to eliminating OS overhead. We describe system design and implementation, and give details of the bare machine mail server application. This work serves as a foundation to build future bare machine servers with integrated databases that can support Internet-based collaboration in high-security environments.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. A Minimal Rust Kernel. https://os.phil-opp.com/minimal-rust-kernel/. Accessed 31 Jan 2019

  2. Appiah-Kubi, P., Karne, R.K., Wijesinha, A.L.: A bare PC TLS webmail server. In: 2012 International Conference on Computing, Networking and Communications (ICNC), pp. 149–153. IEEE (2012)

    Google Scholar 

  3. Appropriate Uses for SQLite. https://www.sqlite.org/whentouse.html. Accessed 31 Jan 2019

  4. Dbare mail: fast and scalable SQL based email services. http://www.dbaremail.org/. Accessed 31 Jan 2019

  5. Engler, D.R., Kaashoek, M.F., et al.: Exokernel: an operating system architecture for application-level resource management, vol. 29. ACM (1995)

    Google Scholar 

  6. Ford Jr., G.H., Karne, R.K., Wijesinha, A.L., Appiah-Kubi, P.: The design and implementation of a bare PC email server. In: 2009 33rd Annual IEEE International Computer Software and Applications Conference, vol. 1, pp. 480–485. IEEE (2009)

    Google Scholar 

  7. Git-Hub – nodemailer/wildduck. https://github.com/nodemailer/wildduck. Accessed 31 Jan 2019

  8. GitHub – ReturnInfinity/bareMetal-OS. https://github.com/ReturnInfinity/bareMetal-OS. Accessed 31 Jan 2019

  9. He, L., Karne, R.K., Wijesinha, A.L.: The design and performance of a bare PC web server. Int. J. Comput. Appl. 15(2), 100–112 (2008)

    Google Scholar 

  10. iRedMail-Freem Open Source Mail Server Solution. https://www.iredmail.org/. Accessed 31 Jan 2019

  11. Karne, R.K., Jaganathan, K.V., Rosa Jr., N., Ahmed, T.: DOSC: dispersed operating system computing. In: Companion to the 20th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, pp. 55–62. ACM (2005)

    Google Scholar 

  12. Khaksari, G.H., Karne, R.K., Wijesinha, A.L.: A bare machine application development methodology. Int. J. Comput. Appl. 19(1), 10–25 (2012)

    Google Scholar 

  13. LAMP Stack. https://www.turnkeylinux.org/lampstack. Accessed 31 Jan 2019

  14. Linux Kernel Tinification. https://tiny.wiki.kernel.org/. Accessed 31 Jan 2019

  15. Okafor, U., Karne, R.K., Wijesinha, A.L., Rawal, B.S.: Transforming SQLite to run on a bare PC. In: 7th International Conference on Software Paradigm Trends (ICSOFT), pp. 311–314 (2012)

    Google Scholar 

  16. Operating Systems You May Not Have Heard Of (But Should). https://www.hongkiat.com/blog/lesser-known-operating-systems/. Accessed 31 Jan 2019

  17. Security Recommendations for Hypervisor Deployment on Servers, NIST Special Publication 800-125A, January 2018

    Google Scholar 

  18. SQLite. https://www.sqlite.org/index.html. Accessed 31 Jan 2019

  19. The SQLite amalgamation. https://www.sqlite.org/amalgamation.html. Accessed 31 Jan 2019

  20. Thompson, W., Karne, R., Wijesinha, A., Chang, H.: Interoperable SQLite for a bare PC. In: Kozielski, S., Mrozek, D., Kasprowski, P., Małysiak-Mrozek, B., Kostrzewa, D. (eds.) BDAS 2017. CCIS, vol. 716, pp. 177–188. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-58274-0_15

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Alex Wijesinha .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2019 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Alabsi, H., Karne, R., Wijesinha, A., Almajed, R., Rawal, B., Almansour, F. (2019). A Novel SQLite-Based Bare PC Email Server. In: Kozielski, S., Mrozek, D., Kasprowski, P., Małysiak-Mrozek, B., Kostrzewa, D. (eds) Beyond Databases, Architectures and Structures. Paving the Road to Smart Data Processing and Analysis. BDAS 2019. Communications in Computer and Information Science, vol 1018. Springer, Cham. https://doi.org/10.1007/978-3-030-19093-4_25

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-19093-4_25

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-19092-7

  • Online ISBN: 978-3-030-19093-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics