位置: 编程技术 - 正文

ubuntu配置ssh server的详细步骤(Ubuntu配置永久IP配置文件)

编辑:rootadmin

推荐整理分享ubuntu配置ssh server的详细步骤(Ubuntu配置永久IP配置文件),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:Ubuntu配置网卡ip,ubuntu配置ssh server,Ubuntu配置网卡ip,Ubuntu配置静态ip,Ubuntu配置网络,Ubuntu配置网卡ip,ubuntu配置ssh server,ubuntu配置ssh server,内容如对您有帮助,希望把文章链接给更多的朋友!

SSH-Server配置指南

一、SSH简介

SSH (Secure Shell)是一个应用程序中提供安全通信的协议,通过SSH协议可以安全地访问服务器,因为SSH 具有成熟的公钥加密体系,在数据进行传输时进行加密,保证数据在传输时不被恶意篡改、破坏和泄露,能有效防止网络嗅探和IP欺骗等攻击。

二、服务器端Ubuntu平台下OpenSSH server的安装

SSH是由芬兰的一家公司开发的,但是因为受版权和加密算法的限制,现在很多人都转而使用OpenSSH。OpenSSH是SSH的替代软件,而且是免费的。

下以命令均是以管理员身份登录使用

1. 在Ubuntu终端使用apt命令复制代码代码如下:# apt-get install openssh-server

如果下载失败,可能是由于系统需要更新的缘故,尝试更新一下,就可以了。使用一下命令:复制代码代码如下:# apt-get update

2. 配置openssh server,可以按照需求修改配置文件复制代码代码如下:# vi etc/ssh/ssh_config

3. 重启服务器复制代码代码如下:# /etc/init.d/ssh restart以上OpenSSH server就算安装完成。

配置“/etc/ssh/ssh_config”文件

“/etc/ssh/ssh_config” 文件是OpenSSH系统范围的配置文件,允许你通过设置不同的选项来改变客户端程序的运行方式。这个文件的每一行

包含“关键词-值”的匹配,其中“关键词”是忽略大小写的。下面列出来的是最重要的关键词,用man命令查看帮助页(ssh (1))可以得到

详细的列表。

编辑“ssh_config”文件(vi /etc/ssh/ssh_config),添加或改变下面的参数:复制代码代码如下:# Site-wide defaults for various optionsHost *ForwardAgent noForwardX noRhostsAuthentication noRhostsRSAAuthentication noRSAAuthentication yesPasswordAuthentication yesFallBackToRsh noUseRsh noBatchMode noCheckHostIP yesStrictHostKeyChecking noIdentityFile ~/.ssh/identityPort Cipher blowfishEscapeChar ~

下面逐行说明上面的选项设置:

Host *选项“Host”只对能够匹配后面字串的计算机有效。“*”表示所有的计算机。

ForwardAgent no“ForwardAgent”设置连接是否经过验证代理(如果存在)转发给远程计算机。

ForwardX no“ForwardX”设置X连接是否被自动重定向到安全的通道和显示集(DISPLAY set)。

RhostsAuthentication no“RhostsAuthentication”设置是否使用基于rhosts的安全验证。

RhostsRSAAuthentication no“RhostsRSAAuthentication”设置是否使用用RSA算法的基于rhosts的安全验证。

RSAAuthentication yes“RSAAuthentication”设置是否使用RSA算法进行安全验证。

PasswordAuthentication yes“PasswordAuthentication”设置是否使用口令验证。

FallBackToRsh no“FallBackToRsh”设置如果用ssh连接出现错误是否自动使用rsh。

UseRsh no“UseRsh”设置是否在这台计算机上使用“rlogin/rsh”。

BatchMode no“BatchMode”如果设为“yes”,passphrase/password(交互式输入口令)的提示将被禁止。当不能交互式输入口令的时候,这个选项对脚本

文件和批处理任务十分有用。

CheckHostIP yes“CheckHostIP”设置ssh是否查看连接到服务器的主机的IP地址以防止DNS欺骗。建议设置为“yes”。

StrictHostKeyChecking no“StrictHostKeyChecking”如果设置成“yes”,ssh就不会自动把计算机的密匙加入“$HOME/.ssh/known_hosts”文件,并且一旦计算机的密

匙发生了变化,就拒绝连接。

IdentityFile ~/.ssh/identity“IdentityFile”设置从哪个文件读取用户的RSA安全验证标识。

Port “Port”设置连接到远程主机的端口。

Cipher blowfish“Cipher”设置加密用的密码。

EscapeChar ~“EscapeChar”设置escape字符。

配置“/etc/ssh/sshd_config”文件

“/etc/ssh/sshd_config”是OpenSSH的配置文件,允许设置选项改变这个daemon的运行。这个文件的每一行包含“关键词-值”的匹配,其中

“关键词”是忽略大小写的。下面列出来的是最重要的关键词,用man命令查看帮助页(sshd (8))可以得到详细的列表。

编辑“sshd_config”文件(vi /etc/ssh/sshd_config),加入或改变下面的参数:复制代码代码如下:# This is ssh server systemwide configuration file.Port ListenAddress ..1.1HostKey /etc/ssh/ssh_host_keyServerKeyBits LoginGraceTime KeyRegenerationInterval PermitRootLogin noIgnoreRhosts yesIgnoreUserKnownHosts yesStrictModes yesXForwarding noPrintMotd yesSyslogFacility AUTHLogLevel INFORhostsAuthentication noRhostsRSAAuthentication noRSAAuthentication yesPasswordAuthentication yesPermitEmptyPasswords noAllowUsers admin

下面逐行说明上面的选项设置:

Port “Port”设置sshd监听的端口号。

ListenAddress ..1.1“ListenAddress”设置sshd服务器绑定的IP地址。

HostKey /etc/ssh/ssh_host_key

ubuntu配置ssh server的详细步骤(Ubuntu配置永久IP配置文件)

“HostKey”设置包含计算机私人密匙的文件。

ServerKeyBits “ServerKeyBits”定义服务器密匙的位数。

LoginGraceTime “LoginGraceTime”设置如果用户不能成功登录,在切断连接之前服务器需要等待的时间(以秒为单位)。

KeyRegenerationInterval “KeyRegenerationInterval”设置在多少秒之后自动重新生成服务器的密匙(如果使用密匙)。重新生成密匙是为了防止用盗用的密匙解密被

截获的信息。

PermitRootLogin no“PermitRootLogin”设置root能不能用ssh登录。这个选项一定不要设成“yes”。

IgnoreRhosts yes“IgnoreRhosts”设置验证的时候是否使用“rhosts”和“shosts”文件。

IgnoreUserKnownHosts yes“IgnoreUserKnownHosts”设置ssh daemon是否在进行RhostsRSAAuthentication安全验证的时候忽略用户的“$HOME/.ssh/known_hosts”

StrictModes yes“StrictModes”设置ssh在接收登录请求之前是否检查用户家目录和rhosts文件的权限和所有权。这通常是必要的,因为新手经常会把自己的

目录和文件设成任何人都有写权限。

XForwarding no“XForwarding”设置是否允许X转发。

PrintMotd yes“PrintMotd”设置sshd是否在用户登录的时候显示“/etc/motd”中的信息。

SyslogFacility AUTH“SyslogFacility”设置在记录来自sshd的消息的时候,是否给出“facility code”。

LogLevel INFO“LogLevel”设置记录sshd日志消息的层次。INFO是一个好的选择。查看sshd的man帮助页,已获取更多的信息。

RhostsAuthentication no“RhostsAuthentication”设置只用rhosts或“/etc/hosts.equiv”进行安全验证是否已经足够了。

RhostsRSAAuthentication no“RhostsRSA”设置是否允许用rhosts或“/etc/hosts.equiv”加上RSA进行安全验证。

RSAAuthentication yes“RSAAuthentication”设置是否允许只有RSA安全验证。

PasswordAuthentication yes“PasswordAuthentication”设置是否允许口令验证。

PermitEmptyPasswords no“PermitEmptyPasswords”设置是否允许用口令为空的帐号登录。

AllowUsers admin“AllowUsers”的后面可以跟着任意的数量的用户名的匹配串(patterns)或user@host这样的匹配串,这些字符串用空格隔开。主机名可以是

DNS名或IP地址。

使用SFTP代替FTP传输文件

FTP(文件传输协议)是一种使用非常广泛的在网络中传输文件的方式,但是,它也同样存在被网络窃听的危险,因为它也是以明文传送用户认证信息。其实在SSH软件包中,已经包含了一个叫作SFTP(Secure FTP)的安全文件传输子系统,SFTP本身没有单独的守护进程,它必须使用sshd守护进程(端口号默认是)来完成相应的连接操作,所以从某种意义上来说,SFTP并不像一个服务器程序,而更像是一个客户端程序。SFTP同样是使用加密传输认证信息和传输的数据,所以,使用SFTP是非常安全的。但是,由于这种传输方式使用了加密/解密技术,所以传输效率比普通的FTP要低得多,如果您对网络安全性要求更高时,可以使用SFTP代替FTP。若要开启 SFTP功能可以修改sshd2_config文件的下列内容:

复制代码代码如下:# subsystem-sftp sftp-server

去掉行首的“#”,然后重新启动SSH服务器,这样在进行SSH连接时就可以同时使用SFTP传输文件。

关于客户端设置

以上是对服务器的设置,其实在SSH服务器中已经包含了一些客户端工具(如SSH,SFTP工具)。但是,更多的客户端用户使用Windows系统,下

面就对Windows上的客户端系统设置加以说明。首先从上文给出的网址下载“SSHSecureShellClient-3.2.3.exe”文件并安装。安装完成后,在桌面上会产成两个快捷方式,一个是“SSH

Secure Shell Client”,用于远程管理,另一个是“SSH Secure File Transfer Client”,用于和服务器进行文件传输。在工具栏中点击

“quick connnect”,输入正确的主机名和用户名,然后在弹出的对话框中输入密码完成登录,即可开始执行命令或者传输文件。在使用SFTP

时,默认只能显示用户的宿主目录的内容和非隐藏文件。但是,有时候您可能还要查看其它目录或者隐藏文件,这时只需要在菜单“eidt-

>setting-> file transfer”的选项中选中“show root directory”和“show hidden file”两个选项即可。

使普通用户仅使用SFTP而没有使用Shell的权限默认情况下管理员给系统添加的账号将同时具有SFTP和SSH的权限。让普通用户使用shell执行命令也是有很大的安全隐患的,如果能够禁止用

户使用shell执行命令而仅使用SFTP传输文件,就能消除这种安全隐患,完全实现FTP的功能,正如上文所述,SFTP没有单独的守护进程,只能借助于sshd守护进程,所以我们仍然需要使用SSH服务器,要保证sshd守护进程处于运行状态。

具体实现方法如下:

首先,在编译安装时,编译中一定要有“–enable-static” 选项。安装成功后,在安装目录下的bin目录中执行下面的命令:复制代码代码如下:[root@localhost bin]# ls -l ssh-dummy-shell* sftp-server2*

将看到下列输出内容:复制代码代码如下:-rwxr-xr-x 1 root root Apr : sftp-server2-rwxr-xr-x 1 root root Apr : sftp-server2.static-rwxr-xr-x 1 root root Apr : ssh-dummy-shell-rwxr-xr-x 1 root root Apr : ssh-dummy-shell.static

其中带“static”后缀名,且比较大的两个文件就是加上“–enable-static”选项后生成的,后面我们将用到这里两个文件。

下面以添加普通账号test为例讲述具体操作步骤。

1.在“/home”目录(或者将要存放普通用户宿主目录的目录)下创建“bin”子目录,并将两个static文件复制到此目录下(复制后改名去掉static后缀),执行如下命令:复制代码代码如下:[root@localhost bin]# cd /usr/local/ssh3.2/bin[root@localhost bin]#cp ssh-dummy-shell.static /home/bin/ssh-dummy-shell[root@localhost bin]# cp sftp-server2.static /home/bin/sftp-server[root@localhost bin]#chown -R root.root /home/bin[root@localhost bin]#chmod -R /home/bin

2.添加一个组,使以后所有禁止使用shell的用户都属于这个组,这样便于管理更多的用户:[root@localhost bin]#groupadd template

3.在添加系统账号时使用如下命令:复制代码代码如下:[root@localhost root]#useradd -s /bin/ssh-dummy-shell -g template test[root@localhost root]#passwd test[root@localhost root]#mkdir /home/test/bin[root@localhost root]#cd /home/test/bin[root@localhost bin]#ln /home/bin/ssh-dummy-shell ssh-dummy-shell[root@localhost bin]#ln /home/bin/sftp-server sftp-server[root@localhost bin]#chown -R root.root /home/test/bin[root@localhost bin]#chmod -R /home/test/bin

3.用户添加成功后,还需要修改/etc/ssh2/sshd2_config文件,将下列内容:#ChRootGroups sftp,guest改为:ChRootGroups sftp,guest,template修改上面这行内容,主要是为了禁止普通用户查看系统的其它目录,把其权限限制在自己的主目录下。重新启动SSH服务器程序,在客户端使用SSH Secure File Transfer Client登录,即使选择显示根目录,普通用户也看不到其它的任何目录,而是把自己的主目录当作根目录。注意,这里使用的是按用户所属组限制,这样可以使包含在template组内的所有用户都可以实现此功能。若您只要限制个别用户的话,可以修改下面的内容:复制代码代码如下:#ChRootUsers anonymous,ftp,guest

事实证明SSH是一种非常好的网络安全解决方案,但是,目前仍有很多管理员使用Telnet或FTP这种非常不安全的工具,希望尽快转移到SSH上来,以减少网络安全隐患。

ubuntu.设置root权限详解 很多朋友安装升级Ubuntu.之后不知道ubuntu.root权限设置的具体方法,今天这篇文章就将为大家详细介绍设置root权限的步骤,新手朋友可以来看一看

ubuntu创建新用户命令(useradd和adduser)的使用方法和区别 在Ubuntu中创建新用户,通常会用到两个命令:useradd和adduser,虽然作用一样,但用法却不尽相同。本文接下来便为读者带来具体的解释。在Ubuntu中创建新

为使用securecrt在ubuntu系统下手动安装lrzsz的方法 secureCRT中可以使用rz和sz命令上传和下载文件,可是这要linux中安装了lrzsz才可以。我用的时候无法使用apt-get自动安装,下面介绍手动安装的方法。1下载lrz

标签: Ubuntu配置永久IP配置文件

本文链接地址:https://www.jiuchutong.com/biancheng/356352.html 转载请保留说明!

上一篇:ubuntu系统安装lamp环境和配置的详细步骤(ubuntu系统安装谷歌浏览器)

下一篇:ubuntu13.04设置root权限详解(ubuntu怎么root权限)

  • 没有固定金额的合同叫什么合同
  • 境外承包工程项下资金
  • 车船税发票可以作废吗
  • 其他应收款收不回来税务处理
  • 加工企业怎么记账
  • 展览服务费进项可以抵扣吗
  • 办公室租金发票可以扺军品企业增值税吗
  • 公司股权关系怎么填写
  • 费用已付发票未到的预算会计分录
  • 已缴企业所得税公司账户的钱怎么办
  • 债务清偿如何进行税务处理
  • 工商企业年金查询个人账户查询
  • 债务转为股份的协议
  • 建设工程的停工损失包括哪些内容
  • 按最低标准买社保30年退休后每个月领多少钱
  • 收到增值税专用发票怎么处理
  • 什么叫单项计提坏账损失
  • 甲供工程选择适用简易计税方法后,36个月
  • 小规模纳税人免税会计分录
  • 车船使用税凭证还要过户吗怎么办
  • 增值税普通发票几个点
  • 企业打给个人的费用如何节省个税
  • 小规模的增值税怎么算
  • 资产负债应付账款怎么算
  • 实物捐赠怎么避免多缴企业所得税?
  • 零星工程实施流程
  • 预售房款预缴企税怎么算
  • sxgdsenu.exe - sxgdsenu是什么进程 有什么用
  • bootice.exe
  • 房地产企业预售房产怎么缴税
  • PHP:curl_version()的用法_cURL函数
  • 员工食堂餐费可以税前扣除吗
  • 可变现净值高于成本计入当期损益吗
  • 事件监听处理的实现原理
  • 鲜艳的多彩的英文
  • 库存现金总分类账怎么登记
  • 计算所得税不得扣除的税金
  • 基于php的系统
  • yii2中dropDownList实现二级和三级联动写法
  • php中单引号和双引号
  • 怎么让gridview居中
  • echarts简介
  • 没有什么盈利的公司应该进吗
  • 王凤林阴盘奇门实例讲解
  • 基建期业务招待会议记录
  • 新公司申请一般纳税人流程
  • 转让财产损失是什么科目
  • 酒吧会计如何做工作
  • 增值税抵扣了,主要成本怎么算
  • 以前年度损益调整怎么做账
  • 平销返利是销售折扣吗
  • 增值税退税账务处理,经其他收益科目
  • 企业有进项税额,无销项税额
  • 公司账户的钱怎么合理的转出来
  • 个人挂靠公司承接工程如何做会计处理?
  • 实报实销有补贴嘛
  • 行政性罚款有哪些
  • 成本分配表是实际成本吗
  • 季报能弥补以前年度亏损吗
  • 税控设备设置在哪儿
  • 待摊费用在新会计准则里面有吗
  • 用union怎么把结果加起来
  • 使用u盘安装windows10电脑识别不出来
  • solaris命令
  • ie8 开发者工具
  • 如何在windows中对硬盘进行分区
  • freebsd操作命令
  • linux关闭sh
  • 苹果Mac OS X通知中心提示音怎么修改 OS X通知中心提示音更换方法图解
  • linux如何使用数据库
  • shutdown命令不能运行
  • angular的排序管道
  • jquery easyui validatebox remote的使用详解
  • 用python怎么写字
  • it unes
  • javascript面向对象 第三方类库
  • 安卓通知栏管理工具
  • 专票购买方是对方公司吗
  • 哈尔滨二手房交易流程
  • 怎么打印纳税申报清单
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设