Ubuntu SSH服务端配置

Ubuntu SSH

服务端配置

  1. SSH分客户端openssh-client和openssh-server

    如果你只是想登陆别的机器的SSH只需要安装openssh-client(ubuntu有默认安装,如果没有则sudo apt-get install openssh-client),如果要使本机开放SSH服务就需要安装openssh-server。

  2. 查看当前的ubuntu是否安装了ssh-server服务。默认只安装ssh-client服务。

        dpkg -l | grep ssh
    
  3. 安装ssh-server服务

        sudo apt-get install openssh-server
    

    再次查看安装的服务:

        dpkg -l | grep ssh
    

    然后确认ssh-server是否启动了:

        ps -e | grep ssh
    

    如果看到sshd那说明ssh-server已经启动了。
    如果没有则可以这样启动:
    sudo /etc/init.d/ssh start
    sudo service ssh start

    配置相关:
    ssh-server 配置文件位于 /etc/ssh/sshd_config,
    在这里可以定义SSH的服务端口,默认端口是22,你可以自己定义成其他端口号,如222。(或把配置文件中的”PermitRootLogin without-password”加一个”#”号,把它注释掉,再增加一句”PermitRootLogin yes”)
    具体改动如下:

    Port 22 # 登录端口
    AddressFamily any
    
    #ListenAddress 0.0.0.0
    #ListenAddress用来设置sshd服务器绑定的IP地址
    ##监听的主机适配卡,举个例子来说,如果您有两个 IP, 分别是 192.168.0.11 及 192.168.2.20 ,那么只想要
    ###开放 192.168.0.11 时,就可以设置为:ListenAddress 192.168.0.11
    ####表示只监听来自 192.168.0.11 这个 IP 的SSH联机。如果不使用设定的话,则预设所有接口均接受 SSH
    
    PermitRootLogin yes # 允许root用户登录
    
    PasswordAuthentication yes # 启用密码登录
    PermitEmptyPasswords yes # 允许空密码
    

    然后重启SSH服务:
    sudo /etc/init.d/ssh stop
    sudo /etc/init.d/ssh start

  4. 登陆SSH(Linux)

    ssh username@192.168.1.103:22
    其中,username为192.168.1.103机器上的用户,需要输入密码。
    断开连接:exit

另外,如果安装了ssh服务,windows下可以使用xshell或者putty链接这台ubuntu了(但是每次都得输入用户名和密码,即使xshell可以存储用户名和密码但是登陆速度很慢。所以可以使用公共密钥的登陆方式来提高速度和安全性。

SSH公共密钥免密登录 vscode->ubuntu

  1. windows配置
    打开windows下的cmd
    输入:

    ssh-keygen -t rsa -b 4096  
    

    生成ssh秘钥和公钥,一路回车确定就可以了
    默认秘钥密钥id_rsa和公钥id_rsa.pub文件都默认保存在(C:\User\用户/.ssh)文件夹下)

  2. vscode配置
    打开C:\Users\<name>\.ssh\config文件

    Host 192.168.81.129
        HostName 192.168.81.129
        User <name>
        IdentityFile "C:\Users\<name>\.ssh\id_rsa"
    

    按照上方的格式填写依次填写信息
    第1~2行填写IP
    第3行填写用户名
    第4行填写windows下秘钥所在的位置

  3. 服务器配置
    将windows下的公钥id_rsa.pub的内容拷贝到服务器中的隐藏目录下的authorized_keys文件中:
    /home/username/.ssh/authorized_keys
    切记:不要直接id_rsa.pub的内容将复制粘贴到authorized_keys

    建议采用如下方法:

    将文件id_rsa.pub拖动或者上传到/home/.ssh目录下
    执行cat id_rsa.pub >> authorized_keys命令

  4. 结语
    现在关掉所有页面,重新打开vscode,终于可以免密登录服务器了

参考链接:
1. Ubuntu SSH服务端配置:
https://blog.csdn.net/jackghq/article/details/54974141
2. VScode远程ssh免密登录Linux服务器:
https://blog.csdn.net/qq_34927064/article/details/121109349
3,SSH远程登录配置文件sshd_config详解
https://www.cnblogs.com/yangchunlong/articles/9479544.html

posted @ 2022-09-18 16:34  Trigger-CN  阅读(501)  评论(0编辑  收藏  举报