dlink의 NAS DNS-320L이 있고 원래 펌웨어를 실행하고 있습니다.재미있는 플러그NAS가 SSH 연결을 수신할 수 있도록 합니다. 이 사용자를 사용할 수 있습니다리카르도SSH를 통해 서버에 로그인합니다.
[ricardo@crudo:~]$ ssh [email protected]
[email protected]'s password:
Last login: Sat Oct 17 16:23:30 2015 from 192.168.1.112
BusyBox v1.20.2 (2013-11-27 15:54:37 CST) built-in shell (ash)
Enter 'help' for a list of built-in commands.
~ $ uname -a
Linux HipoteNAS 2.6.31.8 #1 Wed Aug 22 16:55:05 CST 2012 armv5tel GNU/Linux
그러나 서버에서 로컬 컴퓨터로 파일을 복사하려고 하면 메시지가 나타납니다 Permission denied
. 그렇게:
[ricardo@crudo:~]$ scp -v ricardo@hipotenusab9:/mnt/HD/HD_a2/ricardo/test .
Executing: program /usr/bin/ssh host hipotenusab9, user ricardo, command scp -v -f /mnt/HD/HD_a2/ricardo/test
OpenSSH_7.1p1, OpenSSL 1.0.2d 9 Jul 2015
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Connecting to hipotenusab9 [192.168.1.140] port 22.
debug1: Connection established.
debug1: identity file /home/ricardo/.ssh/id_rsa type 1
debug1: key_load_public: No such file or directory
debug1: identity file /home/ricardo/.ssh/id_rsa-cert type -1
debug1: identity file /home/ricardo/.ssh/id_dsa type 2
debug1: key_load_public: No such file or directory
debug1: identity file /home/ricardo/.ssh/id_dsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/ricardo/.ssh/id_ecdsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/ricardo/.ssh/id_ecdsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/ricardo/.ssh/id_ed25519 type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/ricardo/.ssh/id_ed25519-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_7.1
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.9
debug1: match: OpenSSH_5.9 pat OpenSSH_5* compat 0x0c000000
debug1: Authenticating to hipotenusab9:22 as 'ricardo'
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr [email protected] none
debug1: kex: client->server aes128-ctr [email protected] none
debug1: sending SSH2_MSG_KEX_ECDH_INIT
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
debug1: Server host key: ecdsa-sha2-nistp256 SHA256:2di8KzkN9fsQT1KBqP5f3GrMp5CA+Gctuvl87yFJEag
debug1: Host 'hipotenusab9' is known and matches the ECDSA host key.
debug1: Found key in /home/ricardo/.ssh/known_hosts:32
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey,password,keyboard-interactive
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /home/ricardo/.ssh/id_rsa
debug1: Authentications that can continue: publickey,password,keyboard-interactive
debug1: Skipping ssh-dss key /home/ricardo/.ssh/id_dsa for not in PubkeyAcceptedKeyTypes
debug1: Trying private key: /home/ricardo/.ssh/id_ecdsa
debug1: Trying private key: /home/ricardo/.ssh/id_ed25519
debug1: Next authentication method: keyboard-interactive
debug1: Authentications that can continue: publickey,password,keyboard-interactive
debug1: Next authentication method: password
ricardo@hipotenusab9's password:
debug1: Authentication succeeded (password).
Authenticated to hipotenusab9 ([192.168.1.140]:22).
debug1: channel 0: new [client-session]
debug1: Requesting [email protected]
debug1: Entering interactive session.
debug1: Sending command: scp -v -f /mnt/HD/HD_a2/ricardo/test
debug1: client_input_channel_req: channel 0 rtype exit-status reply 0
debug1: client_input_channel_req: channel 0 rtype [email protected] reply 0
sh: scp: Permission denied
debug1: channel 0: free: client-session, nchannels 1
debug1: fd 0 clearing O_NONBLOCK
debug1: fd 1 clearing O_NONBLOCK
Transferred: sent 2808, received 1808 bytes, in 0.0 seconds
Bytes per second: sent 187813.6, received 120928.4
debug1: Exit status 127
아래와 같이 디렉토리에 액세스할 수 있습니다.
[ricardo@crudo:~]$ ssh [email protected]
[email protected]'s password:
Last login: Sat Oct 17 16:44:08 2015 from 192.168.1.112
BusyBox v1.20.2 (2013-11-27 15:54:37 CST) built-in shell (ash)
Enter 'help' for a list of built-in commands.
~ $ ls -la /mnt/HD/HD_a2/
drwxrwxrwx 15 root root 4096 Oct 11 21:02 .
drwxrwx--- 3 root root 4096 Jun 8 2014 .!@$mmc
drwxr-xr-x 3 root root 1024 Oct 11 21:04 ..
drwx------ 9 root root 4096 Oct 26 2014 .systemfile
drwxrwx--- 4 root root 4096 Jun 12 2014 Nas_Prog
drwxrwxrwx 5 root root 4096 Jun 22 2014 P2P
drwxr-xr-x 15 root root 4096 Jun 10 2014 ffp
-rw------- 1 root root 30049 Oct 11 21:05 ffp.log
-rwxrwx--- 1 root root 1942 Jun 9 2014 fun_plug
drwx------ 2 root root 16384 Jun 8 2014 lost+found
drwxrwxrwx 219 nobody allaccou 12288 Oct 25 2014 music
drwxrwxrwx 3 nobody allaccou 4096 Aug 23 2014 photo
drwxrwxrwx 19 ricardo media 4096 Oct 11 21:35 ricardo
drwxrwxrwx 52 nobody allaccou 4096 Aug 17 06:56 video
~ $ ls -la /mnt/HD/HD_a2/ricardo/
drwxrwxrwx 19 ricardo media 4096 Oct 11 21:35 .
drwxrwxrwx 15 root root 4096 Oct 11 21:02 ..
drwxrwxrwx 16 ricardo media 4096 Jun 20 2014 Engenharia
drwxrwxrwx 75 ricardo media 4096 Jul 5 2014 Fotos
drwxrwxrwx 7 ricardo media 4096 Oct 7 18:50 Outros
drwxrwxrwx 9 ricardo media 4096 Jun 19 2014 Projetos
drwxrwxrwx 14 ricardo media 4096 Jun 19 2014 SENAI
-rwxrwxrwx 1 ricardo media 0 Oct 11 21:35 test
다음을 사용하여 파일을 복사할 수 있습니다.뿌리사용자. 무엇을 기대해야 할지 아시나요?
편집되었습니다.
다음은 서버 측의 파일 권한입니다.
[ricardo@crudo:~]$ ssh ricardo@hipotenusab9
ricardo@hipotenusab9's password:
BusyBox v1.20.2 (2013-11-27 15:54:37 CST) built-in shell (ash)
Enter 'help' for a list of built-in commands.
~ $ scp
-sh: scp: Permission denied
~ $ echo $PATH
/usr/bin:/bin:/usr/sbin:/sbin:/ffp/bin
~ $ ls -la /mnt/HD/HD_a2/ffp/bin/scp
-rwxr-xr-x 1 root root 56200 Dec 29 2011 /mnt/HD/HD_a2/ffp/bin/scp
~ $ ls -la /ffp
lrwxrwxrwx 1 root root 17 Oct 18 22:23 /ffp -> /mnt/HD/HD_a2/ffp
루트 사용자로서:
[ricardo@crudo:~]$ ssh root@hipotenusab9
root@HipoteNAS:~# find / -name scp
/mnt/HD/HD_a2/ffp/bin/scp
root@HipoteNAS:~#
답변1
scp: Permission denied
scp
원격 측에서 실행 파일을 호출하여 scp
작동합니다 . 분명히 원격 설치에는 몇 가지 문제가 있습니다. scp
존재하지만 루트에서만 실행할 수 있습니다. 실행 파일의 권한 scp
(일반적 /usr/bin/scp
으로 또는 /usr/local/bin/scp
)을 확인하십시오(또한 실행 파일 및 해당 로더로 연결되는 모든 디렉토리의 권한도 확인하십시오. 그러나 다른 프로그램이 실행 중이라면 괜찮을 수도 있습니다).