如何安装和在Debian Linux上配置SSH服务器?
安装和测试SSH服务器
您需要root权限才能做到以下几点…
su
-
安装SSH服务器
apt install openssh-server
-
检查服务器进程存在. 这表明安装进展顺利.
ps -A | grep sshd产量 (或类似):
1753 ? 00:00:00 sshd -
安装SSH客户端查看SSH服务器的连接
apt install openssh-client连接到本地主机来测试连接
ssh localhost还与接口的IP地址登录
获取IP地址
ip addrSSH的IP地址
ssh {ipaddress here}
确保SSH服务器
它是通过禁止根登录并只能通过公钥即配置登录,以确保SSH服务器是个好主意. 使用密码登录不允许
确保您的用户执行以下命令而不是根
-
导航到用户主目录
cd
-
检查是否存在的.ssh
ls -a
-
如果的.ssh不存在, 创造它
mkdir .ssh
-
设置文件夹权限 700
chmod 700 .ssh
-
创建authorized_keys文件
touch ./.ssh/authorized_keys
-
在authorized_keys文件,以更改权限 600
chmod 600 ./.ssh/authorized_keys
-
打开authorized_keys文件
nano ./.ssh/authorized_keys
-
你的公钥粘贴到文件
你可以从SSH客户端的公钥. 如果客户端是Windows 10 那么这将是在
%USERPROFILE%/.ssh/id_rsa.pub文件. 如果客户端是 Debian 那么公钥是~/.ssh/id_rsa.pub.如果你的公钥不存在, 它产生在客户机上
ssh-keygen -t rsa -C "email@domain.com"
-
切换到root用户
su -
配置SSH服务器只接受公共密钥登录和防止登录的根
nano /etc/ssh/sshd_config取消注释和/或编辑以下行
PermitRootLogin no
StrictModes yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys .ssh/authorized_keys2
PasswordAuthentication no
-
重新启动sshd服务
service sshd restart
-
尝试使用密码SSH客户端以root身份登录
ssh root@{ssh server ip address}产量:
Permission denied (publickey). -
尝试使用密码SSH客户端登录用户名作为
ssh username@{ssh server ip address}产量:
Permission denied (publickey). -
尝试使用公共密钥从SSH客户端以root身份登录
ssh root@{ssh server ip address} -i .ssh/id_rsa产量:
Permission denied (publickey). -
使用公共密钥SSH客户端登录用户名作为
ssh username@{ssh server ip address} -i .ssh/id_rsa
如果您的SSH客户端有一个静态IP地址,那么你可能要考虑你的唯一的IP地址才能登录SSH服务器.
