一台linux server安裝Centos,需要以非root帳號使用SSH來登入Synology NAS,做rsync檔案同步的功能
1.產生公鑰,在client端 centos server,登入一般帳號
$ ssh-keygen -t rsa
會在該帳號個人目錄中的.ssh裡面,產生公鑰id_rsa.pub,與私鑰id_rsa
2.將公鑰上傳至synology NAS中
在NAS中,
cd /var/services/homes chmod 755 ./你的username資料夾名稱
建立.ssh資料夾
mkdir ./.ssh chmod 700 ~/.ssh touch ~/.ssh/authorized_keys
將剛剛上傳的公鑰->.ssh下的authorized_keys
cat id_rsa.pub >> ~/.ssh/authorized_keys chmod 600 ~/.ssh/authorized_keys
3.修改Synology sshd設定,更改 /etc/ssh/sshd_config
裡的設定, Synology NAS 預設並無開啟 authorized_keys 登入功能
sudo vim /etc/ssh/sshd_config
以 vim 開啟後,找到以下前兩行並取消註解,第三行新增
RSAAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys
4.重啟SSH服務
sudo synoservicectl --restart sshd
重啟後,如果遇到更改後 connection refuse,去控制台終端機,將 SSH 開關關閉儲存後再開啟儲存即可。
5.最後應該可以從centos server,以一般帳號免輸入密碼登入Synology NAS
ssh 一般帳號@synology NAS IP