Difference between revisions of "OPS335 Samba Lab"
(→mount -t cifs) |
(→smbclient) |
||
Line 42: | Line 42: | ||
There are many ways that a Linux client can connect to an SMB server. | There are many ways that a Linux client can connect to an SMB server. | ||
− | == smbclient == | + | == Using smbclient == |
*From vm01 use the "smbclient" command in a terminal window. | *From vm01 use the "smbclient" command in a terminal window. | ||
smbclient '\\f16\home' -U <learnid> | smbclient '\\f16\home' -U <learnid> |
Revision as of 12:01, 25 March 2012
Contents
Samba - A Windows SMB/CIFS fileserver for UNIX
Configuring a Samba Server on Linux
- On your host F16 system install Samba
yum install samba samba-client
- Create a backup of the file /etc/samba/smb.conf, and create a new one that includes the following:
[global] workgroup = <yourlearnid>.org server string = "put your real name here without the quotes" encrypt passwords = yes smb passwd file = /etc/samba/smbpasswd hosts allow = 142.204.141. ; note: the above line will allow access from the Seneca domain in lab T2107 [home] comment = "put your real name here without the quotes" path = /home/<learnid> valid users = <learnid> ; remember <learnid> is your learnid account name public = no writable = yes printable = no create mask = 0765
- Create a Samba password for user <learnid> with the command
smbpasswd -a <learnid>
- Confirm the user you created has been added using the following command
pdbedit -L -v
- You can change a user's password by using the command
smbpasswd <learnid/username>
- Test your configuration with the command
testparm
- You can now start your Samba server
systemctl start smb.service
- Ensure your server starts at boot.
- You will need to determine which ports you need to open to allow connections to your server.
- Test if you have a connection with the command
smbtree -N
- If the previous command worked, try the connection from one of your VM's. You can view all available shares with the follow command:
smbtree -N
Connecting to a Linux SMB Server from a Linux Client
There are many ways that a Linux client can connect to an SMB server.
Using smbclient
- From vm01 use the "smbclient" command in a terminal window.
smbclient '\\f16\home' -U <learnid>
- After entering your password you should get a prompt similar to
smb: \>
- Enter the ls command to see a list of the files in your home directory - you may receive the following error.
smb: \> ls NT_STATUS_ACCESS_DENIED listing \*
- SE Linux should be in Enforcing and will need to be adjusted for this to work. Check the available booleans or your logs.
- Use the get and put commands (similar to ftp) to move files.
- When you are finished close the connection.
Using 'mount -t cifs'
- The next way is to use the mount command.
- Use the mount command on vm01 to mount your home directory
mkdir /tmp/f16-home mount -t cifs //f16/home /tmp/f16-home -o username=<learnid> ls /tmp/f16-home
- Use the "Places" menu from a Gnome desktop on vm01.
- From the "Places" menu at the top of your screen, select "Network" and wait until the network scan completes.
- Then click on the Windows Network > Select your Domain name > enter your credentials.
Using a browser
- You can also use a web browser with support for the SMB protocol such as Konqueror.
- If Konqueror is not installed then install it with the command:
yum install kdebase
- Start Konqueror, the web/file browser, and in the address bar enter the follwing
smb://f16/home
- Use the browser and attempt to drag and drop your files to and from your Desktop.
- Close Konqueror.
Connecting to a Linux SMB Server from a Windows Client (Windows 7)
- Power up a Windows 7 system in the lab and login using your LEARN username and password.
- Open up Explorer and Right click on Computer > Map network drive.. > Select a Drive Letter and '\\<ip-address-of-f16-host>\home' > you will then be asked for your username and password.
- You should now be able to browser, drag and drop your files to and from the Windows machine.
Completing the Lab
Answer the following questions
- Explain how you connected to your SMB server on Linux from a Windows PC. List exactly what you had to do on the Windows PC to test your Linux server.
- What is the purpose of the testparm command?
- What is the purpose of the smbclient command?
- What does SMB stand for? CIFS?
- What does the text inside square brackets in the smb.conf file mean? (e.g., "[homes]").
- Explain the meaning of the line "create mask = 0765" in the smb.conf file?
- What does the smbpasswd command do?
- What was the exact mount command that you used in the last step of the lab?