Access Samba share on Ubuntu 20.04 from Windows 10 without SMB V1?

Page 2 of 2 FirstFirst 12

  1. Posts : 68
    Ubuntu 20.04 / Windows 10 Pro (boot from grub)
    Thread Starter
       #11

    Thanks supermammalego; You've given me quite a comprehensive list of steps I need to take in order to do this right.
    Perhaps I have contradicted myself by saying that I don't need to restrict access to my shares, while at the same time stated that I wanted to learn Samba.
    I will take the time to do it right. I'm not in any rush, and I have no boss breathing down my back.
    While on the subject of encryption, I would also like to add a layer of encryption to my VNC sessions, which I have been using to work on my Ubuntu box from Windows.

    One note: I am running Ubuntu 20.04 desktop version. Should I be running Ubuntu server instead?
    I chose desktop because I wanted the GUI, and from what I understood at the time, the only difference between Ubuntu desktop and server is the GUI. But if there are other features in the server version which will help me with Samba, and allow stronger encryption for both Samba and VNC, I can easily change to server.

    Edit:
    I'm starting to think that I should be running Ubuntu server, and using SSH to administer it rather than VNC, since VNC is insecure - especially how I have it set up now.
    So I think I'm going to replace Ubuntu desktop with server and set up SSH between Windows and the Ubuntu server.
    I don't really need the GUI. I guess it was just what felt 'comfortable' at the time, coming from Windows.
    Last edited by ultrarunner2020; 01 Jun 2020 at 07:23.
      My Computer


  2. Posts : 161
    Windows 10
       #12

    I'm not sure how experienced you are with Linux based distributions? The one major take away I got from pretty much all of the time I put in (and still put in) to learn about how to administer a Linux based distro, is the learning curve is pretty damn steep. Most people come from the walled garden/village environment of Windows where you are drip fed the experience you want without really ever having to touch the command line. There's no clear philosophy with Windows that puts you at the helm of the belly of the beast. You get a few tickboxes, a few input boxes, maybe a chance to see the registry and group policies but these are all purposefully provided in a babysitter-like environment where you're not really the controller of the system. Basically you're given zero-trust to operate the system you have basically paid for and of which you are technically the owner of, at least physically.

    Those that do venture out a little probably simply copy and paste a basic Powershell one-liner they found on the internet to disable or reset something and that's their learning experience pretty much finished. They may repeat this ad infinitum while their desktop experience continues unabated. They don't really have much reason to learn anything else.

    GNU/Linux is completely different. Right off the bat you're the king of the castle. What you can and will do will come from a position of power and influence, especially if you have sudo privileges or even a root user. And like it says when you first enter the terminal; with power comes great responsibility. Or at least something to that affect anyway. And it's true. Because Linux based systems give you that opportunity to learn what is REALLY going on right from the first time you turn on your computer and your distributions loads up on your screen. And so, why not make the most of it? And that's where learning the fundamentals are important. No point in delving into system administration before you understand how to navigate the filesystem, how the file system hierarchy works, the core philosophies of Linux (like everything on the system is basically considered a file for example), how to identify files, directories, blocks, symlinks, how to understand and implement permissions, how to view and control processes, how to isolate graphical or text based environments, how to get the most out of using the terminal by understanding arguments, options, piping, redirection etc. What is STIDIN, STDOUT, STDERR? If you have no idea what these are good luck understanding how data streams work or basically put, how your distro works in the first place. These three aspects right there are where everything flows. Not knowing this is like knowing how the drive a car but not what fuel it takes. How about using vim? Most guides and most sysadmins will recommend using vim. How do you exit will be your first question! How does this thing work will be a close second. Learning the commands and navigation will accelerate your ability to edit files on the fly with relative ease. There is so much potential in vim that it's widely considered the number one text editor in Linux/Unix based systems. I wasn't too sure myself until I started learning it and then I could see what all the hype was about. How about changing display managers? Say you want to use lightm instead of gdm3, how do you do this? What are display managers? What are window managers? How do they work? Those examples are not exhaustive.

    All of these steps in the learning process build the foundations to have confidence running a Linux based distro. Otherwise you might know how to edit the smb.conf file for example but when it comes to understanding your network, where do you begin? How do you administer your network? How do you setup a firewall so that only, say, SSH and SMB are the only ports that accept incoming connections? How do you customize that even further to restrict access to certain IP addresses? What even are IP addresses? What's subnet masking? What is your default gateway? What are the most common ports used and what programs do they usually correspond to? How are IP addresses assigned? What is NAT? DHCP? You're using SMB, right? Makes sense to also at least know the foundations of networking.

    How can you search your system to find particular files you may want to look at without manually going through them all? e.g using locate and grep commands. And then, do you know how to utilize the power of grep with regular expressions? How do you search for a pattern that is at the start of a line? How do you factor in white space into your search? What if there is whitespace in the search result you're looking for but you can't get past it because you have no idea how to factor that in so grep knows whitespace is there? Will you use BRE, ERE or PCRE? What even are those abbreviations? How do you edit text on the fly? e.g with awk. How do you append and/or replace lines of text? How do you add users? Groups? How do you customize these users and groups to have restricted configurations? How do you change your run level? Where can you find running processes on your system without using top or htop or ps? Where can you find system information without going through the GUI? How do you find out how much memory is being used? How do you reveal hidden files in a directory? How do you potentially refine the ouput to only show the first 2 columns? How do you factor what the delimiter is? What is a delimiter? How can you navigate the file system easier while being able to pop to directories saved in a buffer? e.g popd and pushd. How do you customize gnome without going through the GUI? How do you disable user lists at the login screen? How do you customize your prompt? e.g export=PS1. Do you understand bash scripting? Learning bash scripting basically gives you advanced skills to then operate the terminal with levelled up capability. You'll be able to understand the basis of how bash works and I'm guessing you're using bash, right? Well at this point you're onto poweruser stuff. The way bash works outside of writing scripts for your own use is the same as how bash works on it's own. You can test this out by running commands in the terminal as if you were writing a script in your fave text editor. You'll get the same results.

    These are all real aspects of administering not just a desktop version of a Linux based distro but also the server as well. The server will be useless if you don't understand the basics of using, say, Ubuntu because the lack of knowledge you have with Ubuntu Desktop will 100% transfer over to Ubuntu Server. It's no different on Ubuntu Desktop, the only difference is you have a GUI. Only the server version will take no prisoners. You'll be looking at a tty forever generating errors and doing things wrong. You'll look on Google and maybe find a solution to one problem but then, what about the others?

    I would take some time to learn about the foundation stuff first. Watch some courses on Linux administration. A good place to start is Udemy, LinuxAcademy, YouTube of course, reading tutorials online, reading books like The Linux Command Line - A Complete Intro (2nd edition), The Linux Bible (9th edition), Mastering Regular Expressions, Unix and Linux System Administration Handbook (5th edition), Linux in Action etc.
    You'll start at the beginning and you'll learn the basics. These are arguably more important than anything else because of the way Linux works - everything builds on the core philosophy of the running of the system. The standards in which Linux has kept to over these years ensures that the crossover from one subject to another is immediately beneficial and rewarding. Linux is made so that everything connects together. If you learn how the system works there is an absolute guarantee this knowledge will cross over into every other area in some way or another. At least then when you're no longer a complete newbie to administering the system you'll be able to ask for help understanding how things work otherwise you'll find yourself on forums, people will copy and paste or write commands and stuff and you'll just be like WTF does that mean?! With foundational knowledge and dipping your toes gradually into different areas you'll be like "Ah yeah, now that makes sense".

    I would also recommend Ubuntu Server for what you're doing. Not only is it recommended for the task at hand but also the rewards from learning in such an environment pretty much ensures knowledge that can be transferred to pretty much ANY and ALL areas of Linux administration, from the simple to the more complex. Once you begin to learn how to operate a Linux based server the doors of oppurtunity to endless but the reward is high.

    You might never work in an sysadmin role. You might not even care for it but the way in which GNU/Linux was created was to give the building blocks and core principles and philosophies of the system to those who looked after it. That meant taking on these tenets and putting into practice their administration capabilities given to them. After a solid few months of learning you'll either be sick of it, or you'll be finding ways to learn and evolve as a user of this system. And that's where areas like the topic at hand come in and at this point it will just be a feather in your gap among other feathers obtained through your time learning about GNU/Linux.

    Of course you might not care for any of it. In which case you can simply enable/disable SMB through the GUI by right clicking a folder and clicking 'Local Network Share'. Everything is self explanatory from here on out and Ubuntu will do everything for you.

    The path you take is up to you. If you are to learn about these things in more depth it pays to learn the best way to go about doing them. In GNU/Linux there is usually many many ways to do something but there always tends to be a standard in which they are done to maximize the performance, reliability and security of the system. SMB is one of those things judging solely off it's controversial history in terms of security vulnerabilities and it's heritage as a Windows product where you want to do things right just you're not among the ones who leaves a billboard saying "Come on in!" when using it. SMB is one of the first targets in an attack. Just look at the damage caused by the WannaCry attack in 2017. You don't want to be a victim in something like that whether you're just a casual computer user or an experienced sysadmin.

    Anyway, good luck! Pretty longwinded response I know but I hope it helps!
      My Computer


  3. Posts : 68
    Ubuntu 20.04 / Windows 10 Pro (boot from grub)
    Thread Starter
       #13

    Wow! After reading your entire post, I feel as though I have already read a book!
    I appreciate your taking the time to give me so much advice, even though it may seem a bit overwhelming to me right now.

    Several years back, I started getting into Ubuntu. I think it was when ver 14.04 was the LTS. I bought a book, and still have it on Kindle.
    At some point, I became p*ss*d off with Microsoft and Windows 7, and decided to use Ubuntu as my main OS.
    But eventually I came back to Windows, because there were some games I wanted to play.
    For a while I had a dual-boot with Ubuntu 18.04 and Windows 7, but when I did a clean install of Windows 10, I decided to go with a 'normal' system.
    Finally, last month I did a bran-new build and installed only Windows 10. I relegated the old box to Ubuntu 20.04. That's what I have now.
    I also have a Raspberry Pi 3 running Raspbian stretch (ver 9.11). Right now it's running 24/7 doing pretty much nothing but playing a sound file through my stereo system all night to help me sleep.

    I kind of enjoy working in terminal. It gives me a sense of satisfaction when I figure out how to accomplish something.
    I don't particularly care for Windows 10, for the reasons you talked about. I don't need MS holding my hand. At least Windows 7 allowed for some customization and experimentation.
    As it is, I have changed my Windows 10 logon from MS account to local; not that this is going to give me any more authority on the system.

    I'll take a look at some of the books you recommended, and check out Udemy and Linux Academy.
    In the mean time, I don't really need Samba. I can just copy the files I want from the Ubuntu box onto my Windows box, or even remove the hard drive and install it into my new Windows box. I could have done that when I built the system, but I have two 1TB SSD's installed, and didn't want any HDD's in the box. It's just a thing about having the latest technology. Kind of like playing music from .flac and .ogg files, not CD's, and certainly not LP's. But that's a subject for a different thread.
      My Computer


 

  Related Discussions
Our Sites
Site Links
About Us
Windows 10 Forums is an independent web site and has not been authorized, sponsored, or otherwise approved by Microsoft Corporation. "Windows 10" and related materials are trademarks of Microsoft Corp.

© Designer Media Ltd
All times are GMT -5. The time now is 13:01.
Find Us




Windows 10 Forums