→ Applies to: SynetoOS 4.x
Step 1. Connect to SynetoOS appliance via SSH as admin
ssh admin@<your_ip_address_or_hostname>
Step 2. Remove User Shell
rm /var/storage/admin/.bash_profile
Step 3. Install the tool
curl -v https://storage.googleapis.com/syneto_public_files/downloads/Various/list-protections.sh -o /tmp/list-protections.sh
EXAMPLE OUTPUT
root@syneto-os4:/# curl -v https://storage.googleapis.com/syneto_public_files/downloads/Various/list-protections.sh -o /tmp/list-protections.sh % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0* Trying 216.58.205.59:443... * Failed to set TCP_KEEPALIVE on fd 6 * Connected to storage.googleapis.com (216.58.205.59) port 443 (#0) * ALPN, offering h2 * ALPN, offering http/1.1 * successfully set certificate verify locations: * CAfile: /etc/ssl/cacert.pem * CApath: /etc/ssl/certs } [5 bytes data] * TLSv1.3 (OUT), TLS handshake, Client hello (1): } [512 bytes data] * TLSv1.3 (IN), TLS handshake, Server hello (2): { [122 bytes data] * TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8): { [15 bytes data] * TLSv1.3 (IN), TLS handshake, Certificate (11): { [3831 bytes data] * TLSv1.3 (IN), TLS handshake, CERT verify (15): { [79 bytes data] * TLSv1.3 (IN), TLS handshake, Finished (20): { [52 bytes data] * TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1): } [1 bytes data] * TLSv1.3 (OUT), TLS handshake, Finished (20): } [52 bytes data] * SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384 * ALPN, server accepted to use h2 * Server certificate: * subject: CN=storage.googleapis.com * start date: Jul 7 08:37:59 2025 GMT * expire date: Sep 29 08:37:58 2025 GMT * subjectAltName: host "storage.googleapis.com" matched cert's "storage.googleapis.com" * issuer: C=US; O=Google Trust Services; CN=WR2 * SSL certificate verify ok. * Using HTTP2, server supports multiplexing * Connection state changed (HTTP/2 confirmed) * Copying HTTP/2 data in stream buffer to connection buffer after upgrade: len=0 * Using Stream ID: 1 (easy handle 0x12d6090) } [5 bytes data] > GET /syneto_public_files/downloads/Various/list-protections.sh HTTP/2 > Host: storage.googleapis.com > user-agent: curl/7.78.0 > accept: */* > { [5 bytes data] * TLSv1.3 (IN), TLS handshake, Newsession Ticket (4): { [282 bytes data] * TLSv1.3 (IN), TLS handshake, Newsession Ticket (4): { [282 bytes data] * old SSL session ID is stale, removing { [5 bytes data] < HTTP/2 200 < x-guploader-uploadid: ABgVH89JUtP0D67_RV2pjfbIxdMM9f0vBZDt-CuHOEQWBxu0Ml8vyMTvSm35sH_ptM828bTBUfX_j5A < x-goog-generation: 1717502836034389 < x-goog-metageneration: 1 < x-goog-stored-content-encoding: identity < x-goog-stored-content-length: 8569 < x-goog-hash: crc32c=MUE80A== < x-goog-hash: md5=xxaRen0eYyyILMCb57OFYw== < x-goog-storage-class: STANDARD < accept-ranges: bytes < content-length: 8569 < server: UploadServer < date: Fri, 08 Aug 2025 10:14:37 GMT < expires: Fri, 08 Aug 2025 11:14:37 GMT < cache-control: public, max-age=3600 < age: 602 < last-modified: Tue, 04 Jun 2024 12:07:16 GMT < etag: "c716917a7d1e632c882cc09be7b38563" < content-type: text/x-sh < alt-svc: h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 < { [5 bytes data] 100 8569 100 8569 0 0 196k 0 --:--:-- --:--:-- --:--:-- 199k * Connection #0 to host storage.googleapis.com left intact
Step 4. Run the script
sh /tmp/list-protections.sh
The script creates an exportable .zip file as output.