You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Cody Swanson (JIRA)" <ji...@apache.org> on 2017/07/25 16:26:02 UTC
[jira] [Commented] (VFS-635) can't access SMBv2
[ https://issues.apache.org/jira/browse/VFS-635?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16100305#comment-16100305 ]
Cody Swanson commented on VFS-635:
----------------------------------
I am currently working on implementing SMB2 and 3 using smbj on Github (https://github.com/hierynomus/smbj). What would be the best way to do this? This will be my first time contributing to VFS, so any help is appreciated!
> can't access SMBv2
> ------------------
>
> Key: VFS-635
> URL: https://issues.apache.org/jira/browse/VFS-635
> Project: Commons VFS
> Issue Type: Wish
> Affects Versions: 2.0, 2.1
> Reporter: Michael
>
> After Disabling SMBV1 in windows I can't access into the filesystem.
> This code works when SMB1 is enabled, but sops to work once disabled.
> {code}
> @Test
> public void testConnection() throws FileSystemException {
> String login = "admin";
> String password = "password";
> String domain = "";
> String folder = "//10.0.0.0/smb";
> folder = folder.replaceAll("\\\\", "/");
> StringBuilder builder = new StringBuilder(128).append("smb").append(':').append(folder);
> String fileURI = builder.toString();
> FileSystemOptions fsOptions = null;
> StaticUserAuthenticator auth = new StaticUserAuthenticator(domain, login, password);
> fsOptions = new FileSystemOptions();
> DefaultFileSystemConfigBuilder.getInstance().setUserAuthenticator(fsOptions, auth);
> FileSystemManager manager = VFS.getManager();
> FileSystemManager fileSystemManager = manager;
> FileObject fileObject = fileSystemManager.resolveFile(fileURI, fsOptions);
> boolean result = fileObject.isReadable();
> System.out.println(fileURI +" " + result);
> }
> {code}
> this is how I disabled smb v1
> Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB1 -Type DWORD -Value 0 -Force
> How I enabled SMBV2
> Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" SMB2 -Type DWORD -Value 1 -Force
> https://support.microsoft.com/en-us/help/2696547/how-to-enable-and-disable-smbv1-smbv2-and-smbv3-in-windows-and-windows-server
> [TRACE]
> {code}
> org.apache.commons.vfs2.FileSystemException: Could not determine if file "smb://10.0.0.0/smb/" is readable.
> at org.apache.commons.vfs2.provider.AbstractFileObject.isReadable(AbstractFileObject.java:1761)
> at com.pa.util.files.FileUtilsTest.testConnection(FileUtilsTest.java:109)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
> at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
> at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
> at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
> at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
> at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
> at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
> at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
> at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
> at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
> at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
> at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
> at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
> at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
> at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
> at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:86)
> at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
> at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459)
> at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:678)
> at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
> at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)
> Caused by: org.apache.commons.vfs2.FileSystemException: Could not determine the type of file "smb://10.0.0.0/smb/".
> at org.apache.commons.vfs2.provider.AbstractFileObject.getType(AbstractFileObject.java:1526)
> at org.apache.commons.vfs2.provider.AbstractFileObject.exists(AbstractFileObject.java:1022)
> at org.apache.commons.vfs2.provider.AbstractFileObject.isReadable(AbstractFileObject.java:1757)
> ... 26 more
> Caused by: jcifs.smb.SmbException: Failed to connect: 0.0.0.0<00>/10.0.0.0
> jcifs.util.transport.TransportException
> java.net.SocketException: Connection reset
> at java.net.SocketInputStream.read(SocketInputStream.java:210)
> at java.net.SocketInputStream.read(SocketInputStream.java:141)
> at jcifs.util.transport.Transport.readn(Transport.java:29)
> at jcifs.smb.SmbTransport.peekKey(SmbTransport.java:388)
> at jcifs.smb.SmbTransport.negotiate(SmbTransport.java:288)
> at jcifs.smb.SmbTransport.doConnect(SmbTransport.java:319)
> at jcifs.util.transport.Transport.run(Transport.java:241)
> at java.lang.Thread.run(Thread.java:745)
> at jcifs.util.transport.Transport.run(Transport.java:258)
> at java.lang.Thread.run(Thread.java:745)
> at jcifs.smb.SmbTransport.connect(SmbTransport.java:309)
> at jcifs.smb.SmbTree.treeConnect(SmbTree.java:156)
> at jcifs.smb.SmbFile.doConnect(SmbFile.java:911)
> at jcifs.smb.SmbFile.connect(SmbFile.java:954)
> at jcifs.smb.SmbFile.connect0(SmbFile.java:880)
> at jcifs.smb.SmbFile.exists(SmbFile.java:1415)
> at org.apache.commons.vfs2.provider.smb.SmbFileObject.doGetType(SmbFileObject.java:133)
> at org.apache.commons.vfs2.provider.AbstractFileObject.getType(AbstractFileObject.java:1517)
> ... 28 more
> {code}
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)