Create 1-pager doc for sshfs to be sent to chromeos-security@
Design doc sent to chromeos-security@ https://docs.google.com/document/d/11w09zCNz8fmVHXqrzIIp48f4vJ9E92EhLoUrn5GMV_E/edit
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/overlays/eclass-overlay/+/89a57483569d9a8a9ad351744534778a9eface5d commit 89a57483569d9a8a9ad351744534778a9eface5d Author: Sergei Datsenko <dats@google.com> Date: Tue Apr 24 13:22:40 2018 Add user for sshfs FUSE module. BUG= chromium:832507 TEST=Grep for no collisions with other users/groups. Change-Id: I4b86b6113a0d58fcd7f46237e436ef2b1e7aa613 Reviewed-on: https://chromium-review.googlesource.com/1023073 Commit-Ready: Sergei Datsenko <dats@chromium.org> Tested-by: Sergei Datsenko <dats@chromium.org> Reviewed-by: Chirantan Ekbote <chirantan@chromium.org> Reviewed-by: Ben Chan <benchan@chromium.org> [add] https://crrev.com/89a57483569d9a8a9ad351744534778a9eface5d/profiles/base/accounts/group/fuse-sshfs [add] https://crrev.com/89a57483569d9a8a9ad351744534778a9eface5d/profiles/base/accounts/user/fuse-sshfs
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/d1924818aa55f19b07e271b17ecc52674393f91f commit d1924818aa55f19b07e271b17ecc52674393f91f Author: Sergei Datsenko <dats@chromium.org> Date: Fri May 11 01:52:56 2018 cros-disks: Plumb through mount options. Add parameter to allow setting custom mount options for Mount() D-Bus call (e.g. for network or FUSE mounts). BUG= chromium:832507 Change-Id: Ie645bdddd3331fa14185a7691f548b9edb36562f Reviewed-on: https://chromium-review.googlesource.com/1053029 Commit-Queue: Sergei Datsenko <dats@chromium.org> Reviewed-by: Sam McNally <sammc@chromium.org> Reviewed-by: Xiyuan Xia <xiyuan@chromium.org> Cr-Commit-Position: refs/heads/master@{#557764} [modify] https://crrev.com/d1924818aa55f19b07e271b17ecc52674393f91f/chrome/browser/chromeos/extensions/file_manager/private_api_mount.cc [modify] https://crrev.com/d1924818aa55f19b07e271b17ecc52674393f91f/chrome/browser/chromeos/file_manager/fake_disk_mount_manager.cc [modify] https://crrev.com/d1924818aa55f19b07e271b17ecc52674393f91f/chrome/browser/chromeos/file_manager/fake_disk_mount_manager.h [modify] https://crrev.com/d1924818aa55f19b07e271b17ecc52674393f91f/chrome/browser/chromeos/file_manager/volume_manager.cc [modify] https://crrev.com/d1924818aa55f19b07e271b17ecc52674393f91f/chrome/browser/chromeos/file_manager/volume_manager_unittest.cc [modify] https://crrev.com/d1924818aa55f19b07e271b17ecc52674393f91f/chrome/browser/chromeos/login/kiosk_browsertest.cc [modify] https://crrev.com/d1924818aa55f19b07e271b17ecc52674393f91f/chromeos/components/drivefs/drivefs_host.cc [modify] https://crrev.com/d1924818aa55f19b07e271b17ecc52674393f91f/chromeos/components/drivefs/drivefs_host_unittest.cc [modify] https://crrev.com/d1924818aa55f19b07e271b17ecc52674393f91f/chromeos/dbus/cros_disks_client.cc [modify] https://crrev.com/d1924818aa55f19b07e271b17ecc52674393f91f/chromeos/dbus/cros_disks_client.h [modify] https://crrev.com/d1924818aa55f19b07e271b17ecc52674393f91f/chromeos/dbus/cros_disks_client_unittest.cc [modify] https://crrev.com/d1924818aa55f19b07e271b17ecc52674393f91f/chromeos/dbus/fake_cros_disks_client.cc [modify] https://crrev.com/d1924818aa55f19b07e271b17ecc52674393f91f/chromeos/dbus/fake_cros_disks_client.h [modify] https://crrev.com/d1924818aa55f19b07e271b17ecc52674393f91f/chromeos/disks/disk_mount_manager.cc [modify] https://crrev.com/d1924818aa55f19b07e271b17ecc52674393f91f/chromeos/disks/disk_mount_manager.h [modify] https://crrev.com/d1924818aa55f19b07e271b17ecc52674393f91f/chromeos/disks/disk_mount_manager_unittest.cc [modify] https://crrev.com/d1924818aa55f19b07e271b17ecc52674393f91f/chromeos/disks/mock_disk_mount_manager.cc [modify] https://crrev.com/d1924818aa55f19b07e271b17ecc52674393f91f/chromeos/disks/mock_disk_mount_manager.h
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/69935e94968a2a10e8ef0cb21e96090896ddba7f commit 69935e94968a2a10e8ef0cb21e96090896ddba7f Author: Sergei Datsenko <dats@google.com> Date: Fri May 11 06:18:07 2018 cros-disks: Use sshfs for providing SFTP mounts. BUG= chromium:832507 TEST=Manually built image. Change-Id: I951702d8d2944b9e4b467ff746e4a165691cc989 Reviewed-on: https://chromium-review.googlesource.com/1023074 Commit-Ready: Sergei Datsenko <dats@chromium.org> Tested-by: Sergei Datsenko <dats@chromium.org> Reviewed-by: Ben Chan <benchan@chromium.org> [modify] https://crrev.com/69935e94968a2a10e8ef0cb21e96090896ddba7f/chromeos-base/cros-disks/cros-disks-9999.ebuild
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/platform2/+/bcd8e466e8d7462912315410123ccd8eeb8b1427 commit bcd8e466e8d7462912315410123ccd8eeb8b1427 Author: Sergei Datsenko <dats@google.com> Date: Fri May 11 06:18:03 2018 cros-disks: Register sshfs as a FUSE filesystem Implement sshfs-specific checks and mount preparations, register sshfs for handling D-Bus Mount() requests. TEST=Unittests and manual testing. BUG= chromium:832507 Change-Id: I1bf323c4c9d1c1e4d88a37cccb1deacf6b177ee9 Reviewed-on: https://chromium-review.googlesource.com/1023075 Commit-Ready: Sergei Datsenko <dats@chromium.org> Tested-by: Sergei Datsenko <dats@chromium.org> Reviewed-by: Ben Chan <benchan@chromium.org> [modify] https://crrev.com/bcd8e466e8d7462912315410123ccd8eeb8b1427/cros-disks/mount_manager_unittest.cc [modify] https://crrev.com/bcd8e466e8d7462912315410123ccd8eeb8b1427/cros-disks/fuse_mounter.h [modify] https://crrev.com/bcd8e466e8d7462912315410123ccd8eeb8b1427/cros-disks/platform_unittest.cc [modify] https://crrev.com/bcd8e466e8d7462912315410123ccd8eeb8b1427/cros-disks/mount_manager.cc [add] https://crrev.com/bcd8e466e8d7462912315410123ccd8eeb8b1427/cros-disks/sshfs_helper_unittest.cc [modify] https://crrev.com/bcd8e466e8d7462912315410123ccd8eeb8b1427/cros-disks/fuse_helper.h [add] https://crrev.com/bcd8e466e8d7462912315410123ccd8eeb8b1427/cros-disks/uri.cc [modify] https://crrev.com/bcd8e466e8d7462912315410123ccd8eeb8b1427/cros-disks/mount_options.h [add] https://crrev.com/bcd8e466e8d7462912315410123ccd8eeb8b1427/cros-disks/sshfs_helper.h [modify] https://crrev.com/bcd8e466e8d7462912315410123ccd8eeb8b1427/cros-disks/daemon.cc [modify] https://crrev.com/bcd8e466e8d7462912315410123ccd8eeb8b1427/cros-disks/fuse_mount_manager.h [modify] https://crrev.com/bcd8e466e8d7462912315410123ccd8eeb8b1427/cros-disks/fuse_helper_unittest.cc [modify] https://crrev.com/bcd8e466e8d7462912315410123ccd8eeb8b1427/cros-disks/fuse_mounter.cc [modify] https://crrev.com/bcd8e466e8d7462912315410123ccd8eeb8b1427/cros-disks/cros-disks.gyp [modify] https://crrev.com/bcd8e466e8d7462912315410123ccd8eeb8b1427/cros-disks/platform.h [modify] https://crrev.com/bcd8e466e8d7462912315410123ccd8eeb8b1427/cros-disks/cros-disks.conf [modify] https://crrev.com/bcd8e466e8d7462912315410123ccd8eeb8b1427/cros-disks/fuse_mount_manager.cc [modify] https://crrev.com/bcd8e466e8d7462912315410123ccd8eeb8b1427/cros-disks/fuse_mount_manager_unittest.cc [modify] https://crrev.com/bcd8e466e8d7462912315410123ccd8eeb8b1427/cros-disks/ntfs_mounter.cc [add] https://crrev.com/bcd8e466e8d7462912315410123ccd8eeb8b1427/cros-disks/uri.h [modify] https://crrev.com/bcd8e466e8d7462912315410123ccd8eeb8b1427/cros-disks/platform.cc [modify] https://crrev.com/bcd8e466e8d7462912315410123ccd8eeb8b1427/cros-disks/mount_options_unittest.cc [modify] https://crrev.com/bcd8e466e8d7462912315410123ccd8eeb8b1427/cros-disks/mount_options.cc [modify] https://crrev.com/bcd8e466e8d7462912315410123ccd8eeb8b1427/cros-disks/fuse_helper.cc [add] https://crrev.com/bcd8e466e8d7462912315410123ccd8eeb8b1427/cros-disks/sshfs_helper.cc [add] https://crrev.com/bcd8e466e8d7462912315410123ccd8eeb8b1427/cros-disks/uri_unittest.cc [modify] https://crrev.com/bcd8e466e8d7462912315410123ccd8eeb8b1427/cros-disks/mounter.cc [modify] https://crrev.com/bcd8e466e8d7462912315410123ccd8eeb8b1427/cros-disks/exfat_mounter.cc [modify] https://crrev.com/bcd8e466e8d7462912315410123ccd8eeb8b1427/cros-disks/mount_manager.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/785315a00be63b809878e03d8979e3bc70ceae74 commit 785315a00be63b809878e03d8979e3bc70ceae74 Author: Sam McNally <sammc@chromium.org> Date: Mon May 14 00:12:39 2018 Add a MOUNT_TYPE_NETWORK_SOURCE to match MOUNT_SOURCE_NETWORK_SOURCE. The cros-disks equivalent for MountType (MountSourceType) has a third option (MOUNT_SOURCE_NETWORK_STORAGE) without a matching enumerator in MountType; this value is now used for generic fuse mounts. VolumeManager falls-through switches due to the unexpected value. Add MOUNT_TYPE_NETWORK_SOURCE on the chrome side to avoid this problem. Since this is currently a catch-all value for all generic fuse mount types, VolumeManager isn't capable of handling their mounts reasonably. Instead, ignore mount events with type MOUNT_TYPE_NETWORK_SOURCE in VolumeManager; the mounters will handle their mount events individually. Bug: 829274, 832507 Change-Id: I18dc0b5b68120c94da2ebbe05ee863a6f471b81c Reviewed-on: https://chromium-review.googlesource.com/1053621 Reviewed-by: Xiyuan Xia <xiyuan@chromium.org> Reviewed-by: Joel Hockey <joelhockey@chromium.org> Commit-Queue: Sam McNally <sammc@chromium.org> Cr-Commit-Position: refs/heads/master@{#558169} [modify] https://crrev.com/785315a00be63b809878e03d8979e3bc70ceae74/chrome/browser/chromeos/file_manager/volume_manager.cc [modify] https://crrev.com/785315a00be63b809878e03d8979e3bc70ceae74/chromeos/components/drivefs/drivefs_host.cc [modify] https://crrev.com/785315a00be63b809878e03d8979e3bc70ceae74/chromeos/components/drivefs/drivefs_host_unittest.cc [modify] https://crrev.com/785315a00be63b809878e03d8979e3bc70ceae74/chromeos/dbus/cros_disks_client.h [modify] https://crrev.com/785315a00be63b809878e03d8979e3bc70ceae74/chromeos/dbus/fake_cros_disks_client.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/049bb61e12c8dc25bd1ac904ed91367f90afa21f commit 049bb61e12c8dc25bd1ac904ed91367f90afa21f Author: Sergei Datsenko <dats@google.com> Date: Wed May 16 05:23:45 2018 cros-disks: Register autotest for sshfs BUG= chromium:832507 TEST=platform_CrosDisksSshfs CQ-DEPEND=CL:1023671 Change-Id: Ic9977510998b812c7e94d7026be6caef8500c5c5 Reviewed-on: https://chromium-review.googlesource.com/1049427 Commit-Ready: Sergei Datsenko <dats@chromium.org> Tested-by: Sergei Datsenko <dats@chromium.org> Reviewed-by: Ben Chan <benchan@chromium.org> [modify] https://crrev.com/049bb61e12c8dc25bd1ac904ed91367f90afa21f/chromeos-base/autotest-tests-cros-disks/autotest-tests-cros-disks-9999.ebuild
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/platform2/+/1aa5536fa60ce0c224b1943adb758410683a1b23 commit 1aa5536fa60ce0c224b1943adb758410683a1b23 Author: Sergei Datsenko <dats@google.com> Date: Wed May 16 05:23:46 2018 cros-disks: Whitelist host and port for sshfs For sshfs port can only be specified through Port mount option. BUG= chromium:832507 TEST=Unittests Change-Id: I4cf909ac44e479648cf844f6b4795eaf3ac912d7 Reviewed-on: https://chromium-review.googlesource.com/1056969 Commit-Ready: Sergei Datsenko <dats@chromium.org> Tested-by: Sergei Datsenko <dats@chromium.org> Reviewed-by: Ben Chan <benchan@chromium.org> [modify] https://crrev.com/1aa5536fa60ce0c224b1943adb758410683a1b23/cros-disks/sshfs_helper.cc [modify] https://crrev.com/1aa5536fa60ce0c224b1943adb758410683a1b23/cros-disks/sshfs_helper_unittest.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/autotest/+/cd780f6e2e8f7ecf795d6d10798fea7537c533d4 commit cd780f6e2e8f7ecf795d6d10798fea7537c533d4 Author: Sergei Datsenko <dats@google.com> Date: Wed May 16 05:23:45 2018 cros-disks: Autotests for SSHFS BUG= chromium:832507 TEST=platform_CrosDisksSshfs Change-Id: Ib4f0f7664891f9fa89f2ce40a7e51d2977a6a61a Reviewed-on: https://chromium-review.googlesource.com/1023671 Commit-Ready: Sergei Datsenko <dats@chromium.org> Tested-by: Sergei Datsenko <dats@chromium.org> Reviewed-by: Ben Chan <benchan@chromium.org> [add] https://crrev.com/cd780f6e2e8f7ecf795d6d10798fea7537c533d4/client/site_tests/platform_CrosDisksSshfs/control [add] https://crrev.com/cd780f6e2e8f7ecf795d6d10798fea7537c533d4/client/site_tests/platform_CrosDisksSshfs/platform_CrosDisksSshfs.py [add] https://crrev.com/cd780f6e2e8f7ecf795d6d10798fea7537c533d4/client/site_tests/platform_CrosDisksSshfs/sshfs_tests
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/platform2/+/ad2cb6a9b36ffdd6c7a58d3b0e2f05db72d1e47b commit ad2cb6a9b36ffdd6c7a58d3b0e2f05db72d1e47b Author: Sergei Datsenko <dats@google.com> Date: Fri May 18 05:21:13 2018 cros-disks: Provide base64 options to sshfs. For the calling client it's easier to pass data "inline" in the request than organize temporary files. Provide base64-encoded versions of identity and known hosts files. BUG= chromium:832507 TEST=Unittests. Change-Id: Ic87b8f65bcff66976f3c8adf522228e9beec7983 Reviewed-on: https://chromium-review.googlesource.com/1060718 Commit-Ready: Sergei Datsenko <dats@chromium.org> Tested-by: Sergei Datsenko <dats@chromium.org> Reviewed-by: Ben Chan <benchan@chromium.org> [modify] https://crrev.com/ad2cb6a9b36ffdd6c7a58d3b0e2f05db72d1e47b/cros-disks/sshfs_helper.cc [modify] https://crrev.com/ad2cb6a9b36ffdd6c7a58d3b0e2f05db72d1e47b/cros-disks/platform.cc [modify] https://crrev.com/ad2cb6a9b36ffdd6c7a58d3b0e2f05db72d1e47b/cros-disks/platform.h [modify] https://crrev.com/ad2cb6a9b36ffdd6c7a58d3b0e2f05db72d1e47b/cros-disks/platform_unittest.cc [modify] https://crrev.com/ad2cb6a9b36ffdd6c7a58d3b0e2f05db72d1e47b/cros-disks/sshfs_helper_unittest.cc
I believe this is complete now.
The following revision refers to this bug: https://chrome-internal.googlesource.com/chromeos/overlays/overlay-lakitu-nc-private/+/0e2c508cd9820dc27e511a6d751903d4532b8672 commit 0e2c508cd9820dc27e511a6d751903d4532b8672 Author: Sergei Datsenko <dats@google.com> Date: Mon Jun 04 05:32:21 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/e9bf273c20e57a2b812fd4279924db2243ac2e01 commit e9bf273c20e57a2b812fd4279924db2243ac2e01 Author: Sergei Datsenko <dats@google.com> Date: Mon Jun 04 05:32:19 2018 sshfs: Update sshfs dependency Sshfs was renamed from sys-fs/sshfs-fuse to net-fs/sshfs in upstream. BUG= chromium:832507 TEST=build_packages; build_image CQ-DEPEND=CL:1070088, CL:*630247, CL:1077947 Change-Id: I1d369efe2a89d9b9cf75b722b97b3329c725541a Reviewed-on: https://chromium-review.googlesource.com/1071147 Commit-Ready: Sergei Datsenko <dats@chromium.org> Tested-by: Sergei Datsenko <dats@chromium.org> Reviewed-by: Mike Frysinger <vapier@chromium.org> [rename] https://crrev.com/e9bf273c20e57a2b812fd4279924db2243ac2e01/virtual/target-chromium-os-dev/target-chromium-os-dev-1-r32.ebuild [modify] https://crrev.com/e9bf273c20e57a2b812fd4279924db2243ac2e01/chromeos-base/cros-disks/cros-disks-9999.ebuild [modify] https://crrev.com/e9bf273c20e57a2b812fd4279924db2243ac2e01/virtual/target-chromium-os-sdk/target-chromium-os-sdk-1.ebuild [rename] https://crrev.com/e9bf273c20e57a2b812fd4279924db2243ac2e01/virtual/target-chromium-os-sdk/target-chromium-os-sdk-1-r113.ebuild [modify] https://crrev.com/e9bf273c20e57a2b812fd4279924db2243ac2e01/virtual/target-chromium-os-dev/target-chromium-os-dev-1.ebuild
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/overlays/portage-stable/+/a4b71b667a3433ff95696314ef41da2e114253d3 commit a4b71b667a3433ff95696314ef41da2e114253d3 Author: Sergei Datsenko <dats@google.com> Date: Mon Jun 04 05:32:20 2018 sshfs: upgraded package to upstream Upgraded net-fs/sshfs to version 2.8 on amd64, arm, x86 BUG= chromium:832507 TEST=emerge-* sshfs CQ-DEPEND=CL:1071147, CL:*630247, CL:1077947 Change-Id: I67b415515eb6715f779b43b6d8347699000cb98e Reviewed-on: https://chromium-review.googlesource.com/1070088 Commit-Ready: Sergei Datsenko <dats@chromium.org> Tested-by: Sergei Datsenko <dats@chromium.org> Reviewed-by: Mike Frysinger <vapier@chromium.org> [add] https://crrev.com/a4b71b667a3433ff95696314ef41da2e114253d3/profiles/updates/2Q-2018 [add] https://crrev.com/a4b71b667a3433ff95696314ef41da2e114253d3/net-fs/sshfs/Manifest [add] https://crrev.com/a4b71b667a3433ff95696314ef41da2e114253d3/net-fs/sshfs/metadata.xml [add] https://crrev.com/a4b71b667a3433ff95696314ef41da2e114253d3/net-fs/sshfs/sshfs-2.8.ebuild [add] https://crrev.com/a4b71b667a3433ff95696314ef41da2e114253d3/metadata/md5-cache/net-fs/sshfs-2.8
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/overlays/board-overlays/+/bfa82b28404bbbf5b865794c1ee01722df624a26 commit bfa82b28404bbbf5b865794c1ee01722df624a26 Author: Sergei Datsenko <dats@google.com> Date: Mon Jun 04 05:32:19 2018 sshfs: Update sshfs dependency Sshfs was renamed from sys-fs/sshfs-fuse to net-fs/sshfs in upstream. BUG= chromium:832507 TEST=./build_packages --board=lakitu-nc CQ-DEPEND=CL:1070088, CL:1071147, CL:*630247 RELEASE_NOTE=None Change-Id: I1f2736d901d21ac7093e7ea855d68d8bf5efb052 Reviewed-on: https://chromium-review.googlesource.com/1077947 Commit-Ready: Sergei Datsenko <dats@chromium.org> Tested-by: Sergei Datsenko <dats@chromium.org> Reviewed-by: Mike Frysinger <vapier@chromium.org> [rename] https://crrev.com/bfa82b28404bbbf5b865794c1ee01722df624a26/overlay-lakitu/virtual/target-lakitu-os-dev/target-lakitu-os-dev-2-r4.ebuild [rename] https://crrev.com/bfa82b28404bbbf5b865794c1ee01722df624a26/project-termina/virtual/target-termina-os-dev/target-termina-os-dev-1.5-r8.ebuild [modify] https://crrev.com/bfa82b28404bbbf5b865794c1ee01722df624a26/overlay-lakitu/virtual/target-lakitu-os-dev/target-lakitu-os-dev-2.ebuild [modify] https://crrev.com/bfa82b28404bbbf5b865794c1ee01722df624a26/project-termina/virtual/target-termina-os-dev/target-termina-os-dev-1.5.ebuild
Comment 1 by joelhockey@chromium.org
, Apr 13 2018