不管是自己的个人电脑,还是公司分配的工作机,只要拿到新机器,就一股脑地先装个虚拟机,虚拟机里面装台Ubuntu和CentOS,然后再装远程访问程序ssh和sftp自己虚拟机里面的Linux系统,这已经是我的习惯了,不知道其他系统程序员有没有相同的癖好。Ubuntu是我个人最早接触和最早玩的Linux系统,毕竟完善的图形化界面比较方便新用户入门,目前为止,Ubuntu已经代替了我个人对Windows的绝大多数需求,比如工作中常用的PyCharm、eclipse等IDE都有相应的deb包,vim又可以代替notepad++(即便有一款跟其功能相近的Notepadqq),而现在就连听音乐都直接用Ubuntu了(某厂云音乐有deb包客户端),这样的话,主机的Windows倒是基本上只装很少的程序了;至于CentOS,工作过的几家公司都是以其作为本地和线上服务器,当然也接触的比较多了。所以,两款Linux分支,两种主流软件包(deb和rpm),一个私用一个公用,也算是一件很惬意的事情。需要图像界面的时候,是得不得不进入虚拟机操作,但是如果只是使用终端敲命令,尤其像CentOS,当然用远程访问程序更方便了,比如Xshell。
开启远程访问主要是安装和启用openssh服务,区别在于Ubuntu(16.04)需要手动安装,而CentOS(7)如果不是简易安装应该已经默认自带了。以下分别整理一下具体过程,大同小异,很简单。
【Ubuntu】
①安装openssh-server
apt install openssh-server
②确认ssh服务启动(以下两条命令都可)
service ssh status
ps -e | grep ssh
③启用root账号远程登录
修改一下配置文件“ /etc/ssh/sshd_config ”,把默认的“ PermitRootLogin prohibit-password ”注掉新加一行“ PermitRootLogin yes ”保存。
vim /etc/ssh/sshd_config# PermitRootLogin prohibit-passwordPermitRootLogin yes
④额外工作
完成第③步,使用远程访问工具,普通账号已经可以连接访问,并可以在客户端切换到root账户,但是root账户却不能登录。不过敲命令修改一下root账户密码(可以继续输入和使用原密码)就可以远程直接登录root了。也可以重启一下ssh服务。
passwd rootservice ssh restart
【CentOS】
①确认ssh服务启动
systemctl status sshd.service
②启用root账号远程登录(同Ubuntu)
vim /etc/ssh/sshd_config
也就是简单来说,CentOS只要修改一下配置文件就可以了,因为配置文件默认已经包含一行“ PermitRootLogin yes ”,只是注释掉了,所以取消注释就OK了。并且root账户可以直接远程登录。