; This is the main configuration file for an instance of OpenSim running in standalone mode [DatabaseService] ; ; ### Choose the DB ; ; SQLite Include-Storage = "config-include/storage/SQLiteStandalone.ini"; ; MySql ; Uncomment these lines if you want to use mysql storage ; Change the connection string to your db details ;StorageProvider = "OpenSim.Data.MySQL.dll" ;ConnectionString = "Data Source=localhost;Database=opensim;User ID=opensim;Password=***;Old Guids=true;" ; Uncomment this line if you are using MySQL and want to use a different database for estates. ; The usual application for this is to allow estates to be spread out across multiple simulators by share the same database. ; Most people won't need to do this so only uncomment if you know what you're doing. ;EstateConnectionString = "Data Source=localhost;Database=opensim;User ID=opensim;Password=***;Old Guids=true;" ; MSSQL ; Uncomment these lines if you want to use MSSQL storage ; Change the connection string to your db details ; The value for server property is shown in your SQL Server Management Studio login dialog. ; (This sample is the default of express edition) ;StorageProvider = "OpenSim.Data.MSSQL.dll" ;ConnectionString = "Server=localhost\SQLEXPRESS;Database=opensim;User Id=opensim; password=***;" ; PGSQL ; Uncomment these lines if you want to use PGSQL storage ; Change the connection string to your db details ;StorageProvider = "OpenSim.Data.PGSQL.dll" ;ConnectionString = "Server=localhost;Database=opensim;User Id=opensim; password=***;" [Hypergrid] ; Uncomment the variables in this section only if you are in ; Hypergrid configuration. Otherwise, ignore. ;# {HomeURI} {Hypergrid} {The Home URL of this world} {} ;; If this is a standalone world, this is the address of this instance. ;; If this is a grided simulator, this is the address of the external robust server that ;; runs the UserAgentsService. ;; For example http://myworld.com:9000 or http://myworld.com:8002 ;; This is a default that can be overwritten in some sections. ; HomeURI = "${Const|BaseURL}:${Const|PublicPort}" ;# {GatekeeperURI} {Hypergrid} {The URL of the gatekeeper of this world} {} ;; If this is a standalone world, this is the address of this instance. ;; If this is a grided simulator, this is the address of the external robust server ;; that runs the Gatekeeper service. ;; For example http://myworld.com:9000 or http://myworld.com:8002 ;; This is a default that can be overwritten in some sections. ; GatekeeperURI = "${Const|BaseURL}:${Const|PublicPort}" [Modules] ;; Optionally choose one cache module and the corresponding config file, if it exists. ;; Copy the config .example file into your own .ini file and alter that ;; We recommend the use of the FlotsamAssetCache since this is most actively maintained. ;AssetCaching = "FlotsamAssetCache" ;Include-FlotsamCache = "config-include/FlotsamCache.ini" AssetCaching = "CenomeMemoryAssetCache" Include-CenomeCache = "config-include/CenomeCache.ini" ;AssetCaching = "GlynnTuckerAssetCache" ;; Authorization is not on by default, as it depends on external php ;AuthorizationServices = "LocalAuthorizationServicesConnector" [AssetService] DefaultAssetLoader = "OpenSim.Framework.AssetLoader.Filesystem.dll" AssetLoaderArgs = "assets/AssetSets.xml" [GridService] ;; For in-memory region storage (default) StorageProvider = "OpenSim.Data.Null.dll:NullRegionData" ;;--- For MySql region storage (alternative) ;StorageProvider = "OpenSim.Data.MySQL.dll:MySqlRegionData" ;; Directory for map tile images of remote regions ; MapTileDirectory = "./maptiles" ;; Next, we can specify properties of regions, including default and fallback regions ;; The syntax is: Region_ = "" ;; where can be DefaultRegion, FallbackRegion, NoDirectLogin, Persistent, LockedOut ;; ;; DefaultRegion If a local login cannot be placed in the required region (e.g. home region does not exist, avatar is not allowed entry, etc.) ;; then this region becomes the destination. Only the first online default region will be used. If no DefaultHGRegion ;; is specified then this will also be used as the region for hypergrid connections that require it (commonly because they have not specified ;; an explicit region. ;; ;; DefaultHGRegion If an avatar connecting via the hypergrid does not specify a region, then they are placed here. Only the first online ;; region will be used. ;; ;; FallbackRegion If the DefaultRegion is not available for a local login, then any FallbackRegions are tried instead. These are tried in the ;; order specified. This only applies to local logins at this time, not Hypergrid connections. ;; ;; NoDirectLogin A hypergrid user cannot directly connect to this region. This does not apply to local logins. ;; ;; Persistent When the simulator is shutdown, the region is signalled as offline but left registered on the grid. ;; ;; For example: Region_Welcome_Area = "DefaultRegion, FallbackRegion" ;; Allow supporting viewers to export content ;; Set to false to prevent export ExportSupported = true ; === HG ONLY === ;; If you have this set under [Hypergrid], no need to set it here, leave it commented ; GatekeeperURI="${Const|BaseURL}:${Const|PublicPort}" [LibraryModule] ; Set this if you want to change the name of the OpenSim Library ;LibraryName = "My World's Library" [LoginService] WelcomeMessage = "Welcome, Avatar!" ;; If you have Gatekeeper set under [Hypergrid], no need to set it here, leave it commented ; GatekeeperURI = "${Const|BaseURL}:${Const|PublicPort}" SRV_HomeURI = "${Const|BaseURL}:${Const|PublicPort}" SRV_InventoryServerURI = "${Const|BaseURL}:${Const|PublicPort}" SRV_AssetServerURI = "${Const|BaseURL}:${Const|PublicPort}" SRV_ProfileServerURI = "${Const|BaseURL}:${Const|PublicPort}" SRV_FriendsServerURI = "${Const|BaseURL}:${Const|PublicPort}" SRV_IMServerURI = "${Const|BaseURL}:${Const|PublicPort}" ;; For Viewer 2 MapTileURL = "${Const|BaseURL}:${Const|PublicPort}/" ; Url to search service ; SearchURL = "${Const|BaseURL}:${Const|PublicPort}"; ; The minimum user level required for a user to be able to login. 0 by default ; If you disable a particular user's account then you can set their login level below this number. ; You can also change this level from the console though these changes will not be persisted. ; MinLoginLevel = 0 ;; Ask co-operative viewers to use a different currency name ;Currency = "" ;; Set minimum fee to publish classified ; ClassifiedFee = 0 ;; Regular expressions for controlling which client versions are accepted/denied. ;; An empty string means nothing is checked. ;; ;; Example 1: allow only these 3 types of clients (any version of them) ;; AllowedClients = "Imprudence|Hippo|Second Life" ;; ;; Example 2: allow all clients except these ;; DeniedClients = "Twisted|Crawler|Cryolife|FuckLife|StreetLife|GreenLife|AntiLife|KORE-Phaze|Synlyfe|Purple Second Life|SecondLi |Emerald" ;; ;; Note that these are regular expressions, so every character counts. ;; Also note that this is very weak security and should not be trusted as a reliable means ;; for keeping bad clients out; modified clients can fake their identifiers. ;; ;; ;AllowedClients = "" ;DeniedClients = "" ; Basic Login Service Dos Protection Tweaks ; ; ; ; Some Grids/Users use a transparent proxy that makes use of the X-Forwarded-For HTTP Header, If you do, set this to true ; ; If you set this to true and you don't have a transparent proxy, it may allow attackers to put random things in the X-Forwarded-For header to ; ; get around this basic DOS protection. ; DOSAllowXForwardedForHeader = false ; ; ; ; The protector adds up requests during this rolling period of time, default 10 seconds ; DOSRequestTimeFrameMS = 10000 ; ; ; ; The amount of requests in the above timeframe from the same endpoint that triggers protection ; DOSMaxRequestsInTimeFrame = 5 ; ; ; ; The amount of time that a specific endpoint is blocked. Default 2 minutes. ; DOSForgiveClientAfterMS = 120000 ; ; ; ; To turn off basic dos protection, set the DOSMaxRequestsInTimeFrame to 0. [FreeswitchService] ;; If FreeSWITCH is not being used then you don't need to set any of these parameters ;; ;; The IP address of your FreeSWITCH server. The common case is for this to be the same as the server running the OpenSim standalone ;; This has to be set for the FreeSWITCH service to work ;; This address must be reachable by viewers. ;ServerAddress = 127.0.0.1 ;; The following configuration parameters are optional ;; By default, this is the same as the ServerAddress ; Realm = 127.0.0.1 ;; By default, this is the same as the ServerAddress on port 5060 ; SIPProxy = 127.0.0.1:5060 ;; Default is 5000ms ; DefaultTimeout = 5000 ;; The dial plan context. Default is "default" ; Context = default ;; Currently unused ; UserName = freeswitch ;; Currently unused ; Password = password ;; The following parameters are for STUN = Simple Traversal of UDP through NATs ;; See http://wiki.freeswitch.org/wiki/NAT_Traversal ;; stun.freeswitch.org is not guaranteed to be running so use it in ;; production at your own risk ; EchoServer = 127.0.0.1 ; EchoPort = 50505 ; AttemptSTUN = false [GridInfoService] ; These settings are used to return information on a get_grid_info call. ; Client launcher scripts and third-party clients make use of this to ; autoconfigure the client and to provide a nice user experience. If you ; want to facilitate that, you should configure the settings here according ; to your grid or standalone setup. ; ; See http://opensimulator.org/wiki/GridInfo ; login uri: for grid this is the login server URI login = ${Const|BaseURL}:${Const|PublicPort}/ ; long grid name: the long name of your grid gridname = "the lost continent of hippo" ; short grid name: the short name of your grid gridnick = "hippogrid" ; login page: optional: if it exists it will be used to tell the client to use ; this as splash page. May also be served from an external web server, e.g. for ; information on a standalone ;welcome = ${Const|BaseURL}/welcome ; helper uri: optional: if it exists if will be used to tell the client to use ; this for all economy related things ; currently unused ;economy = ${Const|BaseURL}:${Const|PublicPort}/ ; web page of grid: optional: page providing further information about your grid ; currently unused ;about = ${Const|BaseURL}/about/ ; account creation: optional: page providing further information about obtaining ; a user account on your grid ; currently unused ;register = ${Const|BaseURL}/register ; help: optional: page providing further assistance for users of your grid ; currently unused ;help = ${Const|BaseURL}/help ; password help: optional: page providing password assistance for users of your grid ; currently unused ;password = ${Const|BaseURL}/password ; HG address of the gatekeeper, if you have one ; this is the entry point for all the regions of the world ; gatekeeper = ${Const|BaseURL}:${Const|PublicPort}/ ; HG user domain, if you have one ; this is the entry point for all user-related HG services ; uas = ${Const|BaseURL}:${Const|PublicPort}/ [MapImageService] ; Set this if you want to change the default ; TilesStoragePath = "maptiles" [AuthorizationService] ; If you have regions with access restrictions ; specify them here using the convention ; Region_ = ; Valid flags are: ; DisallowForeigners -- HG visitors not allowed ; DisallowResidents -- only Admins and Managers allowed ; Example: ; Region_Test_1 = "DisallowForeigners" ;; ;; HG configurations ;; [GatekeeperService] ;; If you have GatekeeperURI set under [Hypergrid], no need to set it here, leave it commented ; ExternalName = "${Const|BaseURL}:${Const|PublicPort}" ; Does this grid allow incoming links to any region in it? ; If false, HG TPs happen only to the Default regions specified in [GridService] section AllowTeleportsToAnyRegion = true ;; Regular expressions for controlling which client versions are accepted/denied. ;; An empty string means nothing is checked. ;; ;; Example 1: allow only these 3 types of clients (any version of them) ;; AllowedClients = "Imprudence|Hippo|Second Life" ;; ;; Example 2: allow all clients except these ;; DeniedClients = "Twisted|Crawler|Cryolife|FuckLife|StreetLife|GreenLife|AntiLife|KORE-Phaze|Synlyfe|Purple Second Life|SecondLi |Emerald" ;; ;; Note that these are regular expressions, so every character counts. ;; Also note that this is very weak security and should not be trusted as a reliable means ;; for keeping bad clients out; modified clients can fake their identifiers. ;; ;; ;AllowedClients = "" ;DeniedClients = "" ;; Are foreign visitors allowed? ;ForeignAgentsAllowed = true ;; ;; If ForeignAgentsAllowed is true, make exceptions using AllowExcept. ;; Leave blank or commented for no exceptions. ; AllowExcept = "http://griefer.com:8002, http://enemy.com:8002" ;; ;; If ForeignAgentsAllowed is false, make exceptions using DisallowExcept ;; Leave blank or commented for no exceptions. ; DisallowExcept = "http://myfriendgrid.com:8002, http://myboss.com:8002" [UserAgentService] ;; User level required to be contacted from other grids ;LevelOutsideContacts = 0 ;; Restrictions on destinations of local users. ;; Are local users allowed to visit other grids? ;; What user level? Use variables of this forrm: ;; ForeignTripsAllowed_Level_ = true | false ;; (the default is true) ;; For example: ; ForeignTripsAllowed_Level_0 = false ; ForeignTripsAllowed_Level_200 = true ; true is default, no need to say it ;; ;; If ForeignTripsAllowed is false, make exceptions using DisallowExcept ;; Leave blank or commented for no exceptions. ; DisallowExcept_Level_0 = "http://myothergrid.com:8002, http://boss.com:8002" ;; ;; If ForeignTripsAllowed is true, make exceptions using AllowExcept. ;; Leave blank or commented for no exceptions. ; AllowExcept_Level_200 = "http://griefer.com:8002, http://enemy.com:8002" ;; This variable controls what is exposed to profiles of local users ;; as seen from outside of this grid. Leave it uncommented for exposing ;; UserTitle, UserFlags and the creation date. Uncomment and change to False ;; to block this info from being exposed. ; ShowUserDetailsInHGProfile = True [HGInventoryService] ;; If you have this set under [Hypergrid], no need to set it here, leave it commented ; HomeURI = "${Const|BaseURL}:${Const|PublicPort}" [HGAssetService] ;; If you have this set under [Hypergrid], no need to set it here, leave it commented ; HomeURI = "${Const|BaseURL}:${Const|PublicPort}" ;; The asset types that this grid can export to / import from other grids. ;; Comma separated. ;; Valid values are all the asset types in OpenMetaverse.AssetType, namely: ;; Unknown, Texture, Sound, CallingCard, Landmark, Clothing, Object, Notecard, LSLText, ;; LSLBytecode, TextureTGA, Bodypart, SoundWAV, ImageTGA, ImageJPEG, Animation, Gesture, Mesh ;; ;; Leave blank or commented if you don't want to apply any restrictions. ;; A more strict, but still reasonable, policy may be to disallow the exchange ;; of scripts, like so: ; DisallowExport ="LSLText" ; DisallowImport ="LSLBytecode" [HGInventoryAccessModule] ;; If you have these set under [Hypergrid], no need to set it here, leave it commented ; HomeURI = "${Const|BaseURL}:${Const|PublicPort}" ; GatekeeperURI = "${Const|BaseURL}:${Const|PublicPort}" ;; If you want to protect your assets from being copied by foreign visitors ;; uncomment the next line. You may want to do this on sims that have licensed content. ;; true = allow exports, false = disallow exports. True by default. ; OutboundPermission = True ;; Send visual reminder to local users that their inventories are unavailable while they are traveling ;; and available when they return. True by default. ;RestrictInventoryAccessAbroad = True [HGFriendsModule] ; User level required to be able to send friendship invitations to foreign users ;LevelHGFriends = 0; [Messaging] ; === HG ONLY === ;; If you have this set under [Hypergrid], no need to set it here, leave it commented ; GatekeeperURI = "${Const|BaseURL}:${Const|PublicPort}" [EntityTransfer] ;; User level from which local users are allowed to HG teleport. Default 0 (all users) ;LevelHGTeleport = 0 ;; Are local users restricted from taking their appearance abroad? ;; Default is no restrictions ;RestrictAppearanceAbroad = false ;; If appearance is restricted, which accounts' appearances are allowed to be exported? ;; Comma-separated list of account names AccountForAppearance = "Test User, Astronaut Smith" [UserProfilesService] ;; To use, set Enabled to true then configure for your site... Enabled = false LocalServiceModule = "OpenSim.Services.UserProfilesService.dll:UserProfilesService" ;; Configure this for separate databse ; ConnectionString = "Data Source=localhost;Database=opensim;User ID=opensim;Password=***;Old Guids=true;" ; Realm = UserProfiles UserAccountService = OpenSim.Services.UserAccountService.dll:UserAccountService AuthenticationServiceModule = "OpenSim.Services.AuthenticationService.dll:PasswordAuthenticationService"