Linux下SSH端口更改&私钥公钥配置

ps:Ubuntu下更改SSH端口的方法

(一)修改SSH端口
1.1 修改/etc/ssh/sshd_config

Port 22        //ssh端口默认是22
Port 25680    //将端口号修改成25680
ps:在改某项服务端口的时候,最好先不要删除原来的端口号,以防影响别人的使用。先增加一个端口,测试通过之后,再将原来的端口号删除掉!
1.2 重启ssh服务,修改端口才生效
sudo /etc/init.d/ssh restart
1.3 用netstat -an 命令检验是否正确。
也可以通过SecureCRT等类似的工具登陆下,看能否通过新添加到端口登陆上。如果可以登陆上,再将原来的端口号22删掉。
(二)配置私钥和公钥
2.1 ssh-keygen -t dsa -P ” -f ~/.ssh/id_dsa
      cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
2.2 测试是否配置成功
    ssh localhost
ps:如果测试失败,可以尝试修改过相关目录的权限再尝试
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

2.3 将公钥文件拷贝到远程服务器
1. 方法一:
cat ~/.ssh/id_dsa.pub | ssh 远程用户名@远程服务器ip -p 端口号 ‘cat – >> ~/.ssh/authorized_keys’
2. 方法二:
本地执行:
scp -p 端口号 ~/.ssh/id_dsa.pub 远程用户名@ip:/home/远程用户名/
登陆远程服务器  远程用户名@ip后执行:
cat id_dsa.pub >> ~/.ssh/authorized_keys
ps:如果测试不成功,需要改远程服务器IP上的文件authorized_keys的权限(权限的设置非常重要,因为不安全的设置安全设置,会让我们不能使用RSA功能)

想法
1.能不能将端口号改掉之后,仍然可以不用输入端口号就可以直接ssh登陆上去?ps:好像不能!

CentOS 下SSH无密码登录的配置 http://www.linuxidc.com/Linux/2012-05/61346.htm

Linux下实现SSH无密码验证登陆 http://www.linuxidc.com/Linux/2014-01/95917.htm

Ubuntu和CentOS如何配置SSH使得无密码登陆 http://www.linuxidc.com/Linux/2014-01/94794.htm

更多Ubuntu相关信息见Ubuntu