SSH的设置
2017年5月22日 星期一, 发表于 昆明
SSH
SSH是目前较可靠专为远程登录会话和其他网络服务提供安全性的协议,为计算机上的Shell提供安全的传输和使用环境
安装
SSH分为客户端和服务端,一般的发行版都自带了SSH客户端,安装也主要针对服务器端,配置也主要在服务器端
$ sudo apt-get install -y openssh-server //Debian/ubuntu
$ sudo yum install -y openssh-server //CentOS
$ sudo pacman -S openssh //Archlinux/Manjaro
服务管理
$ sudo /etc/init.d/ssh start //启动服务
$ sudo /etc/init.d/ssh stop //停止服务
$ sudo /etc/init.d/ssh restart //重启服务
配置
1.免密码登录(免密码登录就是使用密钥来登录)
$ ssh-keygen -t rsa -b 4096 -C "xxxx@mail.com" //生成密钥对,这样生成密钥对可以把公钥放到GitHub上
$ scp .ssh/id_rsa.pub user@server:~/ //把公钥上传到server上
$ ssh user@server //登录到server上,准备设置实现用user登录server免密码
$ cat id_rsa.pub >> ~/.ssh/authorized_keys //把公钥添加到.ssh/authorzied_keys文件里
$ chmod 600 .ssh/authorized_keys //authorzied_keys修改文件的权限
$ rm id_rsa.pub //删除公钥
$ ssh-copy-id -p 22 -i .ssh/id_rsa.pub user@server //这条命令可实现上述的效果
2.禁止文本密码登录,使用密钥登录
PasswordAuthentication no
3.root设置
PermitRootLogin without-password //加上第二部的设置,可以实现root只能用密钥登录,不能用文本密码登录
PermitRootLogin no //禁止root登录,无论是密码还是密钥都不行
4.利用 ssh 的用户配置文件 config 管理 ssh 会话
$ cd .ssh
$ vim config
Host vps
HostName 192.168.1.110
Port 2222
User admin
IdentityFile ~/.ssh/private_ras
$ ssh vps //效果等同于 ssh -i ~/.ssh/private_ras admin@192.168.1.110 -p 2222
ssh工具使用
$ ssh-keygen -t rsa -f cloud.pem //生成名为cloud.pem的密钥对