SSH工作机制
SSH分为客户端和服务端。
服务端是一个守护进程,一般是sshd进程,在后台运行并响应来自客户端的请求。提供了对远程请求的处理,一般包括公共密钥认证、密钥交换、对称密钥加密和非安全连接。
客户端一般是ssh进程,另外还包含scp、slogin、sftp等其他进程。
工作机制:
客户端发送一个连接请求到远程服务端
服务端检查申请的包和IP地址,再发送密钥给SSH客户端;
客户端再将密钥发回服务端,自此建立连接。
一、客户端
1. 安装客户端(客户端不是必须的)
# apt-get install ssh
如果安装失败,则使用下面命令进行安装
# apt-get install openssh-client
二、服务端
1. 安装服务器
# apt-get install openssh-server
2. 启动服务器
# /etc/init.d/ssh stop #停止
# /etc/init.d/ssh start #启动
# /etc/init.d/ssh restart #重启
3. SSH配置
修改配置文件/etc/ssh/sshd_config,并重启服务
# /etc/init.d/ssh restart
ssh默认端口是22,需要的话,自行修改
Port 20
ssh默认配置是允许root登录的,可以修改配置表禁止其登录
PermitRootLogin no
作者:Ron Ngai
出处:http://rondsny.github.io/rondsny/
ssh命令用于远程登录上Linux主机
常用格式:
ssh [-l login_name] [-p port] [user@]hostname
更详细的可以用ssh -h
查看。
举例
不指定用户:
ssh 192.168.0.11
指定用户:
ssh -l root 192.168.0.11
ssh root@192.168.0.11
如果修改过ssh登录端口的可以:
ssh -p 12333 192.168.0.11
ssh -l root -p 12333 216.230.230.114
ssh -p 12333 root@216.230.230.114
禁止root登录
另外修改配置文件/etc/ssh/sshd_config
,可以改ssh登录端口和禁止root登录。改端口可以防止被端口扫描。
编辑配置文件:
vim /etc/ssh/sshd_config
找到#Port 22,去掉注释,修改成一个五位的端口:
Port 12333
找到#PermitRootLogin yes,去掉注释,修改为:
PermitRootLogin no
重启sshd服务:
service sshd restart