Linux下通过SSH实现远程连接

目的

通过SSH服务,实现本机(Ubuntu)与远程服务器(腾讯云服务器提供的Ubuntu系统)之间的连接,能够在本地对服务器进行操作。


实现方法

  1. 实现SSH连接需要有SSH客户端和SSH服务端。Ubuntu貌似自带了SSH客户端。首先我们通过网页的方式登录上远程服务器(腾讯云的官网,控制台中可点击登录,输入账号和密码即可登录使用)。

  2. 在服务器上输入命令:sudo apt-get install openssh-server 安装SSH服务端。

  3. 在客户端上,先切换为我们想要实现远程连接的本地用户账号,执行以下命令:

    su - user //切换用户
    ssh-keygen -t rsa //生成密钥文件,之后不需要输入密码,按三次回车键即可。
  4. 将生成的公钥文件发送到服务端,这里要求输入服务端账号密码:

    scp .ssh/id_rsa.pub user@192.168.1.100:/home/user/
  5. 在服务端,自己重新建立如下文件夹。可能已经存在该文件夹,但是要注意该文件夹权限,如果该文件夹不属于你想要连接的服务端的用户,应该删除并在你想要连接的服务端用户上重新建立该文件夹,修改权限为700.

    mkdir -p /home/user/.ssh/
  6. 在服务端执行如下命令:

    mv /home/user/id_rsa.pub /home/user/.ssh/authorized_keys
  7. 这样子之后就可以在服务端启动服务了

    service sshd start
  8. 在本地机器上进行连接:

    ssh user@192.168.1.100
  9. 这样子你就可以对服务器进行操作了!

注意事项

  1. 如果一开始在生成密钥时你使用了密码,那么以后每次连接都会要求你输入密码以成功读取私钥。要求如下:

    Enter passphrase for key'/home/user/.ssh/id_rsa':
  2. 一定要注意文件的权限问题,否则会出错。大概标准如下:

    
    #chmod 700 .ssh
    
    
    #chmod 600 authorized_keys
    
  3. 以上操作是通过密钥的方式来实现远程连接。如果直接通过用户口令的方式也是可以,那就不需要如上生成密钥的过程了。但是安全性不够高,而且每次连接都要输入密码比较麻烦。

  4. 如果要求只能通过密钥连接,那么可以修改服务端的sshd_config配置文件。将被注释掉的#PasswordAuthentication yes 改为PasswordAuthentication no 。但是这样之后将不可以通过腾讯云服务器控制台登入远程服务端。


文件传输

1.从服务器上下载文件

scp username@servername:/path/filename /var/www/local_dir(本地目录)

例如:scp root@192.168.0.101:/var/www/test.txt 把192.168.0.101上的/var/www/test.txt 的文件下载到/var/www/local_dir(本地目录)

2.上传本地文件到服务器

scp /path/filename username@servername:/path

例如:scp /var/www/test.php root@192.168.0.101:/var/www/ 把本机/var/www/目录下的test.php文件上传到192.168.0.101这台服务器上的/var/www/目录中

3.从服务器下载整个目录

scp -r username@servername:/var/www/remote_dir/(远程目录) /var/www/local_dir(本地目录)

例如:scp -r root@192.168.0.101:/var/www/test /var/www/

4.上传目录到服务器

scp -r local_dir username@servername:remote_dir

例如:scp -r test root@192.168.0.101:/var/www/ 把当前目录下的test目录上传到服务器的/var/www/ 目录


参考链接

  1. https://www.cnblogs.com/cindy-cindy/archive/2017/05/02/6797095.html

  2. https://www.cnblogs.com/wangcp-2014/p/5134413.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值