一、登陆
1、Mac使用ssh连接服务器
liboxiangdeMac-mini:~ liboxiang$ ssh root@服务器公网ip
root@....'s password:
2、远程连接
3、免密码登录(使用公钥身份验证)
Mac上终端执行下面命令后,再次登录服务器就不用密码了
执行下面命令生成公钥和私钥
ssh-keygen
使用ssh-copy-id工具将公钥(id_dsa.pub文件)拷贝到服务器下,也可以手动拷贝
ssh-copy-id 服务器用户名@公网ip
ssh-copy-id工具可以使用Homebrew工具安装
brew install ssh-copy-id
普通用户的登录和root的登录相同,只是把root改成对应的用户名即可
二、创建用户
登陆root之后,按下面步骤走。
adduser liboxiang
passwd liboxiang
更改用户 liboxiang 的密码 。
新的 密码:
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
在centOS7系统中,wheel这个组具有使用root命令(在命令前加sudo)的权限,下面是将用户liboxiang加入wheel这个组的命令:
gpasswd -a liboxiang wheel
登陆root的时候,如果想切换到liboxiang这个用户,可以用下面的命令:
su liboxiang
三、禁止root用户远程登录
禁止root用户远程登录更安全一些。平时用我们创建的用户登录就可以了,如果要用到root权限的话,在命令前加sudo就行了。方法如下:
用户登录之后,修改系统文件sshd_config
- 打开配置文件
sudo vi /etc/ssh/sshd_config - 然后通过下面命令查找PermitRoot,执行完上面命令,直接输入‘/’就行了。
/PermitRoot - 按i,进入编辑模式,然后将PermitRootLogin yes后面的yes修改为no
- 然后按esc键退出编辑模式,接着输入:wq保存退出
- 重新加载sshd文件,使修改生效
sudo systemctl reload sshd
四、禁止ssh用密码登录
用户登录之后,修改系统文件sshd_config
- 打开配置文件
sudo vi /etc/ssh/sshd_config - 然后通过下面命令查找Password,执行完上面命令,直接输入‘/’就行了。
/Password - 按i,进入编辑模式,然后将PasswordAuthentication yes后面的yes修改为no
- 然后按esc键退出编辑模式,接着输入:wq保存退出
- 重新加载sshd文件,使修改生效
sudo systemctl reload sshd
如果reload的时候提示Job for sshd.service invalid.则需重新启动ssh服务。相关命令如下:
以下命令都需要超级管理员权限执行
- 查看sshd服务状态
systemctl status sshd.service - 启动sshd服务
systemctl starts sshd.service - 重启sshd服务
systemctl restart sshd.service - 设置sshd服务开启自启
systemctl enable sshd.service
五、修改ssh服务端口号
修改ssh服务端口号更加安全。ssh服务默认使用端口号22.修改方法和修改后的登录方法如下:
用户登录之后,修改系统文件sshd_config
- 打开配置文件
sudo vi /etc/ssh/sshd_config - 然后通过下面命令查找Port,执行完上面命令,直接输入‘/’就行了。
/Port - 按i,进入编辑模式,然后将Port 22后面的22修改为其他数字。如果Port 22前面有‘#’号,则要删除‘#’
- 然后按esc键退出编辑模式,接着输入:wq保存退出
- 重新加载sshd文件,使修改生效
sudo systemctl reload sshd
修改ssh服务端口号之后,用如下方式登录
ssh liboxiang@120.77.210.235 -p ssh服务的端口号
六、SSH使用PEM文件登录
1.命令如下
ssh -i key.pem
ssh -i key.pem root@IP
如果出现报错说明这个问题是文件的权限太大了,需要给小点
sudo chmod 600 key.pem
然后再执行ssh -i key.pem root@IP
2.可以使用ssh-add 添加key文件
ssh-add -k key.pem
3.正常登录堡垒机
ssh root@IP
七、ssh设置别名快速登陆
- vi ~/.ssh/config #若没有该文件,直接新建即可
- 通过添加以下代码添加ip别名
Host ali #自定义别名
HostName hostname #ssh服务器的ip或者domain
Port port #ssh服务器的端口号,默认为22
User user #ssh服务器的用户名
IdentityFiel ~/.ssh/Id_rsa #ssh服务器上的公钥对应的私钥
- 直接通过命令
ssh hostname
即可登陆ssh服务器