linux 开启SSH 22端口_小z啊的博客-CSDN博客_开启22端口

服务器

服务器安装

sudo apt install openssh-server

打开 sshd_config

sudo vim /etc/ssh/sshd_config 

去掉注释

Port 22
#AddressFamily any
ListenAddress 0.0.0.0
ListenAddress :: 

开启远程登录

PermitRootLogin yes 

暂时开启用户密码作为链接验证

PasswordAuthentication yes

开启 sshd 服务

sudo servince sshd start 

开机启动 sshd

(参考 https://docs.docker.com/config/daemon/systemd/)

sudo systemctl start sshd

查看22端口是否被监听

netstat -nltp | grep 22

查看SSH服务是否正在运行

/etc/init.d/ssh status

查看 IP 地址

ifconfig 

客户端

一般是自带的

sudo apt install openssh-client

第一次使用时可以生成公私钥

How To Generate Ed25519 SSH Keys, Install Them, and Configure Secure Passwordless Authentication - YouTube

ssh-keygen -a 100 -t ed25519 -C "baxuearia@baicai"

生成了 id_ed22519id_ed25519.pub

可以把 id_ed25519.pub 放到服务器,然后就可以实现免密码登录(输入刚才的密码)

ssh-copy-id -i id_ed25519.pub randoruf@192.168.1.118

现在可以常用用私钥登录了

ssh -i id_ed25519.pub randoruf@192.168.1.118

或者配置 ~/.ssh/config

Host "baixue"
    HostName 192.168.1.118
    User randoruf
    IdentityFile ~/.ssh/id_ed22519

然后可以直接免密码登录

ssh baixue

回到服务器的 sshd_config, 把密码登录改回去

PasswordAuthentication no

警告!

请确保有手段用 VPN 登录到 server 上进行重置 (例如 虚拟仪表盘 和 VPS) 否则弄丢 id_ed22519 之后只能跟管理员联系解锁重置。 但拒绝密码登录是好习惯,可以避免被爬虫软件扫描,对CPU造成巨大资源浪费。